Forschung

Unsere Forschung zielt auf die Entwicklung von Konzepten, Methoden und Werkzeugen für das ganzheitliche Engineering von zuverlässigen und sicheren softwareintensiven Systemen. Diese Softwaresysteme müssen robust und widerstandsfähig gegenüber geplanten und ungeplanten Änderungen im Rahmen der Konfiguration, Rekonfiguration oder Evolution sein. Die Systeme müssen zuverlässig und sicher dynamisch an neue Anwendungsszenarien und Umgebungen anpassbar sein und eine systematische Wiederverwendung unterstützen. In diesem Zusammenhang sind präzise, mathematisch fundierte Garantien für kritische funktionale und nicht-funktionale Systemeigenschaften, insbesondere für Verlässlichkeit und Sicherheit, unerlässlich. Anwendungsgebiete für diese Forschung liegen vor allem im Bereich der automobilen Software- und Systemtechnik und in der Automatisierungstechnik im Maschinen- und Anlagenbau.

Forschungsthemen

  • Security-by-Design und By-Construction Engineering:
    Software-intensive Systeme in sicherheits- und missionskritischen Bereichen stellen hohe Anforderungen an ihre Sicherheit (Safety und Security) und Zuverlässigkeit. Diese wesentlichen Systemeigenschaften müssen bereits im Entwicklungsprozess berücksichtigt werden, um sie im Betrieb gewährleisten zu können. Der Ansatz des by-construction engineering zielt darauf ab, Softwaresysteme ausgehend von einer (formalen) Spezifikation ihrer funktionalen und nicht-funktionalen Eigenschaften so zu entwickeln, dass sie diese Eigenschaften by construction erfüllen.
  • Software Diversity (Variability & Adaptability): Moderne Softwaresysteme sind in hohem Maße konfigurierbar, um sich an unterschiedliche Anforderungen und Umgebungsbedingungen anzupassen. Diese Konfigurierbarkeit zur Entwicklungszeit kann auch als Anpassungsfähigkeit zur Laufzeit genutzt werden, so dass sich Systeme selbstständig an neue Bedingungen anpassen können. Dies kann die Robustheit und Widerstandsfähigkeit von Softwaresystemen durch Diversität verbessern, was insbesondere für die Härtung von Systemen zur Abwehr von Angriffen genutzt werden kann.
  • Provable Security und Post-hoc Quality Assurance:
    Ergänzend zum By-Construction-Engineering zielen die Techniken der Post-hoc-Qualitätssicherung darauf ab, kritische funktionale und nicht-funktionale Eigenschaften von Systemen, einschließlich der Zuverlässigkeit und Sicherheit, zu testen und damit die Qualität dieser Systeme zu gewährleisten. Ein besonderer Schwerpunkt der Forschungsarbeit liegt auf effizienten und effektiven Testverfahren, die auf einer systematischen Testfallgenerierung, Testfallauswahl und Testfallpriorisierung basieren, insbesondere für variantenreiche und evolvierende Softwaresysteme. Dazu gehören auch Sicherungsverfahren für intelligente Systeme, bei denen Teile der Funktionalität durch trainierte KI-Komponenten realisiert werden. Ein aktuelles Forschungsprojekt befasst sich mit dem End-to-End-Test von intelligenten Fahrfunktionen im Kontext des automatisierten Fahrens, der auch gezielte Angriffe auf die KI-Komponenten erkennen soll. Ein weiterer Forschungsschwerpunkt ist der Einsatz formaler Methoden, insbesondere der deduktiven Verifikation, für die Qualitätssicherung von Softwaresystemen. In diesem Zusammenhang zielt unsere Forschung auf die Skalierung dieser Techniken durch Ausnutzung der Modularität und Verbesserung der Benutzerfreundlichkeit durch moderne KI-basierte Methoden.
  • Legacy Software Analysis:
    Moderne Softwaresysteme werden in der Regel nicht mehr von Grund auf neu entwickelt. Stattdessen werden Softwaresysteme kontinuierlich weiterentwickelt. Diese kontinuierliche Weiterentwicklung führt jedoch häufig zum Verlust der Dokumentation über die Softwaresysteme sowie zur Übertragung von Fehlern von einem Teil des Systems auf einen anderen durch Kopieren. Die Forschung im Bereich der Altsystemanalyse zielt darauf ab, bestehende Strukturen dieser Systeme zu analysieren (Re-Engineering) und damit Möglichkeiten zu schaffen, die Altsysteme zu restrukturieren oder gar zu migrieren. So können beispielsweise bestehende Funktionalitäten eines Altsystems in eine neuartige Sicherheitsarchitektur überführt werden. Die Extraktion von wiederverwendbaren Bausteinen aus Altsystemen ermöglicht eine systematische Wiederverwendung und Weiterentwicklung dieser Systeme mit dem Ziel des Sustainable Software Engineering.
Projekte
Titel Ansprechperson

Tim Bittner, Joshua Ammermann, Ina Schaefer

Domenik Eichhorn, Alexander Kittelmann, Ina Schaefer

Lukas Birkemeyer, Ina Schaefer

Tobias Pett, Ina Schaefer

Tabea Bordis, Tobias Runge, Ina Schaefer

Publikationen


Correctness-by-Construction – Wie machen wir bessere Software? (Prof. Dr.-Ing. Ina Schaefer)
Zentrum für Angewandte Kulturwissenschaft und Studium Generale (ZAK) (Hrsg.)
2023. doi:10.5445/IR/1000159235
Bewertung von Fahrerassistenzsystemen im Umfeld des szenariobasierten Testens. Dissertation
King, C.
2023, April 13. Karlsruher Institut für Technologie (KIT). doi:10.5445/IR/1000157665
Coverage-Driven Test Automation for Highly-Configurable Railway Systems
Eichhorn, D.; Pett, T.; Przigoda, N.; Kindsvater, J.; Seidl, C.; Schaefer, I.
2023. VaMoS ’23: Proceedings of the 17th International Working Conference on Variability Modelling of Software-Intensive, 23–30, Association for Computing Machinery (ACM). doi:10.1145/3571788.3571794
VarCorC: Developing Object-Oriented Software Product Lines Using Correctness-by-Construction
Bordis, T.; Kodetzki, M.; Runge, T.; Schaefer, I.
2023. Software Engineering and Formal Methods. SEFM 2022 Collocated Workshops – AI4EA, F-IDE, CoSim-CPS, CIFMA, Berlin, Germany, September 26–30, 2022, Revised Selected Papers. Ed.: P. Masci, 156–163, Springer International Publishing. doi:10.1007/978-3-031-26236-4_13
Model-Based Fault Classification for Automotive Software
Becker, M.; Meyer, R.; Runge, T.; Schaefer, I.; van der Wall, S.; Wolff, S.
2022. arxiv. doi:10.48550/arXiv.2208.14290
Consistent View-Based Management of Variability in Space and Time. Dissertation
Ananieva, S.
2022, Juli 26. Karlsruher Institut für Technologie (KIT). doi:10.5445/IR/1000148819
Family-Based and Product-Based Development of Correct-by-Construction Software Product Lines
Bordis, T.; Runge, T.; Schultz, D.; Schaefer, I.
2022. Journal of Computer Languages, 70, Art.-Nr.: 101119. doi:10.1016/j.cola.2022.101119
Quality-Aware Learning to Prioritize Test Cases. Dissertation
Omri, S.
2022, Februar 18. Karlsruher Institut für Technologie (KIT). doi:10.5445/IR/1000143079/v2
Model-Based Fault Classification for Automotive Software
Becker, M.; Meyer, R.; Runge, T.; Schaefer, I.; van der Wall, S.; Wolff, S.
2022. Programming Languages and Systems: 20th Asian Symposium, APLAS 2022, Auckland, New Zealand, December 5, 2022, Proceedings. Ed.: I. Sergey, 110–131, Springer Nature Switzerland AG. doi:10.1007/978-3-031-21037-2_6
Runtime Verification of Correct-by-Construction Driving Maneuvers
Kittelmann, A.; Runge, T.; Bordis, T.; Schaefer, I.
2022. Leveraging Applications of Formal Methods, Verification and Validation. Verification Principles – 11th International Symposium, ISoLA 2022, Rhodes, Greece, October 22–30, 2022, Proceedings, Part I. Ed.: T. Margaria, 242–263, Springer International Publishing. doi:10.1007/978-3-031-19849-6_15
X-by-Construction Meets Runtime Verification
ter Beek, M. H.; Cleophas, L.; Leucker, M.; Schaefer, I.
2022. Leveraging Applications of Formal Methods, Verification and Validation. Verification Principles – 11th International Symposium, ISoLA 2022, Rhodes, Greece, October 22–30, 2022, Proceedings, Part I. Ed.: T. Margaria, 141–148, Springer International Publishing. doi:10.1007/978-3-031-19849-6_9
Immutability and Encapsulation for Sound OO Information Flow Control
Runge, T.; Servetto, M.; Potanin, A.; Schaefer, I.
2022. ACM Transactions on Programming Languages and Systems, 45 (1), Art.Nr. 3. doi:10.1145/3573270
Quantifying the variability mismatch between problem and solution space
Hentze, M.; Sundermann, C.; Thüm, T.; Schaefer, I.
2022. Proceedings of the 25th International Conference on Model Driven Engineering Languages and Systems, 322–333, Association for Computing Machinery (ACM). doi:10.1145/3550355.3552411
Re-CorC-ing KeY: Correct-by-Construction Software Development Based on KeY
Bordis, T.; Cleophas, L.; Kittelmann, A.; Runge, T.; Schaefer, I.; Watson, B. W.
2022. The Logic of Software. A Tasting Menu of Formal Methods – Essays Dedicated to Reiner Hähnle on the Occasion of His 60th Birthday. Ed.: W. Ahrendt, 80–104, Springer International Publishing. doi:10.1007/978-3-031-08166-8_5
A Specification Logic for Programs in the Probabilistic Guarded Command Language
Pardo, R.; Johnsen, E. B.; Schaefer, I.; Wąsowski, A.
2022. Theoretical Aspects of Computing – ICTAC 2022 – 19th International Colloquium, Tbilisi, Georgia, September 27–29, 2022, Proceedings. Ed.: H. Seidl, 369–387, Springer International Publishing. doi:10.1007/978-3-031-17715-6_24
Information Flow Control-by-Construction for an Object-Oriented Language
Runge, T.; Kittelmann, A.; Servetto, M.; Potanin, A.; Schaefer, I.
2022. Software Engineering and Formal Methods – 20th International Conference, SEFM 2022, Berlin, Germany, September 26–30, 2022, Proceedings. Ed.: B.-H. Schlingloff, 209–226, Springer International Publishing. doi:10.1007/978-3-031-17108-6_13
AutoArx: Digital Twins of Living Architectures
Jordan, S.; Linsbauer, L.; Schaefer, I.
2022. Software Architecture – 16th European Conference, ECSA 2022, Prague, Czech Republic, September 19–23, 2022, Proceedings. Ed.: I. Gerostathopoulos, 205–212, Springer International Publishing. doi:10.1007/978-3-031-16697-6_15
Derivation of subset product lines in FeatureIDE
Linsbauer, L.; Westphal, P.; Bittner, P. M.; Krieter, S.; Thüm, T.; Schaefer, I.
2022. Proceedings of the 26th ACM International Systems and Software Product Line Conference - Volume B, 38–41, Association for Computing Machinery (ACM). doi:10.1145/3503229.3547033
Synchronizing software variants: A two-dimensional approach
König, C.; Rosiak, K.; Linsbauer, L.; Schaefer, I.
2022. Proceedings of the 26th ACM International Systems and Software Product Line Conference (SPLC ’22), Graz, A, 12.-16. September 2022. Ed.: A. Felfernig. Vol. B, 82–89, Association for Computing Machinery (ACM). doi:10.1145/3503229.3547053
Traits: Correctness-by-Construction for Free
Runge, T.; Potanin, A.; Thüm, T.; Schaefer, I.
2022. Formal Techniques for Distributed Objects, Components, and Systems – 42nd IFIP WG 6.1 International Conference, FORTE 2022, Held as Part of the 17th International Federated Conference on Distributed Computing Techniques, DisCoTec 2022, Lucca, Italy, June 13–17, 2022, Proceedings. Ed.: M. Mousavi, 131–150, Springer International Publishing. doi:10.1007/978-3-031-08679-3_9
Platform Architecture for the Diagram Assessment Domain
Ullrich, M.; Forell, M.; Houy, C.; Pfeiffer, P.; Schüler, S.; Stottrop, T.; Willems, B.; Fettke, P.; Oberweis, A.
2021. L. Linsbauer, I. Schaefer & A. Wortmann (Hrsg.), Software Engineering 2021 Satellite Events - Workshops and Tools & Demos : Proceedings of the Software Engineering 2021, SE-SE 2021, Satellite Events, Braunschweig/Virtual, Germany, February 22 - 26, 2021. Ed.: S. Götz, RWTH Aachen. doi:10.22028/D291-34119
Software Engineering 2021 : Fachtagung vom 22.-26. Februar 2021 Braunschweig/virtuell
Koziolek, A.; Schaefer, I.; Seidl, C. (Hrsg.)
2021. Gesellschaft für Informatik (GI)
Component-Based Refinement and Verification of Information-Flow Security Policies for Cyber-Physical Microservice Architectures
Gerking, C.; Schubert, D.
2021. A. Koziolek, I. Schaefer & C. Seidl (Hrsg.), Software Engineering 2021 : Fachtagung 22.-26. Februar 2020 Braunschweig/Virtuell / Anne Koziolek, Ina Schaefer, Christoph Seidl, 43–44, Gesellschaft für Informatik (GI). doi:10.18420/SE2021_10
Proceedings of the Workshops of the Software Engineering Conference 2019, Stuttgart, Germany, February 19, 2019
Krusche, S.; Schneider, K.; Kuhrmann, M.; Heinrich, R.; Jung, R.; Konersmann, M.; Schmieders, E.; Helke, S.; Schaefer, I.; Vogelsang, A.; Annighöfer, B.; Schweiger, A.; Reich, M.; Van Hoorn, A. (Hrsg.)
2019. RWTH Aachen
Supporting the Development of Interdisciplinary Product Lines in the Manufacturing Domain
Kowal, M.; Ananieva, S.; Thüm, T.; Schaefer, I.
2017. IFAC-PapersOnLine, 50 (1), 4336–4341. doi:10.1016/j.ifacol.2017.08.870
Implicit Constraints in Partial Feature Models
Ananieva, S.; Kowal, M.; Thüm, T.; Schaefer, I.
2016. Proceedings of the 7th International Workshop on Feature-Oriented Software Development, 18–27, Association for Computing Machinery (ACM). doi:10.1145/3001867.3001870
Selected Challenges of Software Evolution for Automated Production Systems
Vogel-Heuser, B.; Feldmann, S.; Folmer, J.; Kowal, M.; Schaefer, I.; Ladiges, J.; Fay, A.; Haubeck, C.; Lamersdorf, W.; Lity, S.; Kehrer, T.; Tichy, M.; Getir, S.; Ulbrich, M.; Klebanov, V.; Beckert, B.
2015. 2015 IEEE 13th International Conference on Industrial Informatics (INDIN 2015) : Cambridge, United Kingdom, 22 - 24 July 2015, 314–321, Institute of Electrical and Electronics Engineers (IEEE). doi:10.1109/INDIN.2015.7281753
Verification of Software Product Lines with Delta-Oriented Slicing
Bruns, D.; Klebanov, V.; Schaefer, I.
2011. Formal Verification of Object-Oriented Software. International Conference, FoVeOOS 2010, Paris, France, June 28-30, 2010. Ed.: B. Beckert, 61–75, Berlin
Verification of Software Product Lines: Reducing the Effort with Delta-oriented Slicing and Proof Reuse
Bruns, D.; Klebanov, V.; Schaefer, I.
2010. Formal Verification of Object-Oriented Software. Papers presented at the International Conference, June 28-30, 2010, Paris, France. Ed.: B. Beckert, 345–358, Karlsruher Institut für Technologie (KIT)