Themen & Lösungen

Software Science konzentriert sich auf die Weiterentwicklung des Softwareengineering und speziell der Werkzeuge und Methoden zur Analyse und Extraktion funktionaler und nicht-funktionaler Softwareeigenschaften als analytische Basis für Programmverständnis, Softwaretest und Softwaremigration.

Die Analyse und Extraktion von funktionalen und nichtfunktionalen Anforderungen gilt als vielversprechender Ansatz zur Lösung von Problemen bei der Entwicklung von Software in der Industrie und bei Software, die (a) einen Lebenszyklus von Jahrzehnten aufweisen und sich aufgrund der sich wandelnden Softwaretechnologie, neuer Kundenanforderungen, sich ändernder regulativer Anforderungen und neuer Marktsituationen einer ständigen Weiterentwicklung gegenübersehen, und (b) nicht mehr im Vorfeld mit aktuellem Design- und Architekturwissen entworfen werden, sondern im Laufe der Zeit mit abnehmendem Entwicklungswissen entwickelt.

Angewandte Forschung für unsere (Industrie) Partner betreiben wir in folgenden Bereichen:

  • Intelligentes Testen von Software (zum Beispiel automatisierte Testfallgenerierung, automatisierte Testausführung und Varianten, zufallsbasiertes Testen, Testqualität und Mutationsanalyse)
  • Software Evolution und Dokumentation (zum Beispiel automatische Extraktion von Fachwissen aus Quellcode, Darstellung des Fachwissens je nach Domänen, Erstellung druckfertiger Fachdokumentation aus dem Quellcode)
  • Benutzer zentriertes Software Engineering (zum Beispiel Entwicklung innovativer Interaktionsmöglichkeiten, DSLs, Verwendbarkeit und Integration im Arbeitsablauf)