Constraint-Basierte operationelle Konsistenz evolvierender Software Systeme
Theoretische Informatik
Zusammenfassung der Projektergebnisse
Das Projekt dreht sich um die Zusammenführung von statischen und Laufzeiteigenschaften von Programmen zu Verifikationszwecken. Damit soll langfristig die Verifikation evolvierender Software unterstützt werden. Aufgrund der Kürzung der Projektmittel und der durch die Pandemie erschwerten Feinabstimmung, wurde auf die ursprünglich vorgesehene methodische Integration verzichtet und die Projektpartner konzentrierten sich auf die unabhängig erreichbaren Projektziele: In Dortmund wurden statische glass box Programmanalysen, grey box Verfahren wie Laufzeitverifikation und Monitore, sowie black box Modelle des Automatenlernens kombiniert. Der Ansatz wurde mit einem bei der Springer AG eingesetzten Begutachtungssystem, sowie bei einer durch ChatGPT unterstützten Migrierung evaluiert. In Darmstadt konzentrierte man sich auf die inkrementelle Annotierung von Code durch Softwareingenieure, die keine Expertise in formalen Spezifikationssprachen haben. Es wurde der Prototyp eines Assistenzsystems entwickelt, das einen bei der graduellen Spezifikation unterstützt und, basierend auf existierenden Programmläufen, in der Lage ist Fehler zu finden. Die Arbeiten führten zu erfolgreichen Nachfolgeprojekten bei der DFG bzw. beim Nationalen Forschungszentrum für Cybersicherheit ATHENE.
Projektbezogene Publikationen (Auswahl)
-
Constraint-Based Behavioral Consistency of Evolving Software Systems. Lecture Notes in Computer Science, 205-218. Springer International Publishing.
Hähnle, Reiner & Steffen, Bernhard
-
A Context-Free Symbiosis of Runtime Verification and Automata Learning. Lecture Notes in Computer Science, 159-181. Springer International Publishing.
Frohme, Markus & Steffen, Bernhard
-
Compositional learning of mutually recursive procedural systems. International Journal on Software Tools for Technology Transfer, 23(4), 521-543.
Frohme, Markus & Steffen, Bernhard
-
Never-Stop Context-Free Learning. Lecture Notes in Computer Science, 164-185. Springer International Publishing.
Frohme, Markus & Steffen, Bernhard
-
Finding Semantic Bugs Fast. Lecture Notes in Computer Science, 145-154. Springer International Publishing.
Grätz, Lukas; Hähnle, Reiner & Bubel, Richard
-
From Languages to Behaviors and Back. Lecture Notes in Computer Science, 180-200. Springer Nature Switzerland.
Frohme, Markus & Steffen, Bernhard
-
Lifelong Learning of Reactive Systems in Practice. Lecture Notes in Computer Science, 38-53. Springer International Publishing.
Bainczyk, Alexander; Steffen, Bernhard & Howar, Falk
-
Towards Continuous Quality Control in the Context of Language-Driven Engineering. Lecture Notes in Computer Science, 389-406. Springer Nature Switzerland.
Bainczyk, Alexander; Boßelmann, Steve; Krause, Marvin; Krumrey, Marco; Wirkner, Dominic & Steffen, Bernhard
-
ChatGPT in the Loop: A Natural Language Extension for Domain-Specific Modeling Languages. Lecture Notes in Computer Science, 375-390. Springer Nature Switzerland.
Busch, Daniel; Nolte, Gerrit; Bainczyk, Alexander & Steffen, Bernhard
-
Towards LLM-Based System Migration in Language-Driven Engineering. Lecture Notes in Computer Science, 191-200. Springer Nature Switzerland.
Busch, Daniel; Bainczyk, Alexander & Steffen, Bernhard
-
“Model-based quality assurance of intrumented context-free systems”. PhD thesis. 2023
Markus Frohme
-
“Simplicity-Oriented Lifelong Learning of Web Applications”. PhD thesis. 2024
Julius Alexander Bainczyk
