DFG fördert Forschungsprojekt zum Softwareverstehen
Software setzt sich heute aus den Beiträgen vieler einzelner Entwickler zusammen. Damit die Bestandteile optimal ineinander greifen, müssen alle Beteiligten ein bestmögliches Verständnis des komplexen Programms entwickeln. Ein gemeinsames Projekt der Universitäten Bremen und Hamburg untersucht jetzt, wie Entwickler sich dieses Verständnis erarbeiten und wie dieser Prozess unterstützt werden kann.
Immer mehr Bereiche unseres Lebens werden von Software gesteuert – und diese Software wird zunehmend komplexer. Desktopanwendungen benötigen oft rund 10 Millionen Programmzeilen, ein modernes Auto beinhaltet sogar mehr als 100 Millionen Zeilen – ausgedruckt ergäbe das einen Stapel Papier von rund 200 Metern Höhe. Wer mit derartiger Software arbeiten will, muss darin die relevanten Abschnitte finden und verstehen. Um diesen Prozess effizienter zu gestalten, startet das Technologie-Zentrum Informatik und Informationstechnik (TZI) der Universität Bremen gemeinsam mit der Universität Hamburg am 1. Februar 2019 das Projekt „Empirische Grundlagenforschung zum Programmverstehen in der Softwaretechnik“, das von der Deutschen Forschungsgemeinschaft (DFG) drei Jahre lang mit 600.000 Euro gefördert wird.
Programmverstehen, also der Wissenserwerb über ein Computerprogramm, bildet die Grundlage für effektive und effiziente Änderungen, Fehlersuche, Wiederverwendung und Dokumentation. Im aktuellen Projekt betreiben die Wissenschaftler unter der Leitung von Prof. Dr. Rainer Koschke (Arbeitsgruppe Softwaretechnik, Universität Bremen) und Prof. Dr. Walid Maalej (Arbeitsgruppe Applied Software Technology, Universität Hamburg) gemeinsam Grundlagenforschung, um die Arbeit in der Softwaretechnik anhand von empirisch fundierten Erkenntnissen besser steuern zu können. Ein Vorläuferprojekt wurde bereits zusammen mit der TU München erarbeitet.
Ziel der Wissenschaftler ist es, ein umfassendes Verständnis der Prozesse zu gewinnen, die am Programmverstehen maßgeblich beteiligt sind. Dazu zählen unter anderem Verhaltensweisen, Arbeitsmuster und Entscheidungen von Entwicklern. Das Projekt soll Fragen beantworten wie: Welches Wissen wird für das Programmverstehen benötigt? Wie wird fehlendes Wissen beschafft? Und wie wird es effizient angewandt? Um diese und zahlreiche weitere Fragen zu beantworten, verfolgen die Wissenschaftler auch Ansätze, die ihren Ursprung außerhalb der klassischen Informatik haben, beispielsweise im Bereich der Kognitionswissenschaften.
Wissenschaftlicher Ansprechpartner:
Prof. Dr. Rainer Koschke
Tel. 0421 218-64481
koschke@uni-bremen.de