PROSECCO: Provisions for Service Co-Evolution

Projektverantwortlicher im ITeG: Prof. Dr. Kurt Geihs
Laufzeit: Erste Phase: 12/2015 - 12/2017 Zweite Phase: 10/2018 - 11/2010
Fördernde Einrichtung: Deutsche Forschungsgemeinschaft (DFG)
Projektwebseite: Projektseite auf der Homepage des Fachgebiets

Kurzbeschreibung

Das Forschungsprojekt „Provisions for Service Co-Evolution (PROSECCO)“ geht von der Annahme aus, dass sich intensiv genutzte Software kontinuierlich weiterentwickeln muss, um Nützlichkeit und Qualität zu bewahren. Gründe dafür sind z.B. das Hinzufügen und Entfernen von Funktionen, die Behebung von Fehlern, das Schließen von Sicherheitslücken und die Verbesserung der Performance. Das gilt auch für Dienst-Implementierungen. Die Unterstützung der Dienstevolution ist eine sine-qua-non Anforderung für zukünftige Dienstlandschaften.

Dienste arbeiten nicht isoliert. Dienste haben Dienstbindungen zu Dienstkunden. Dienste sind Teil von Geschäftsprozessen, bei denen sie von anderen Diensten abhängen. Diese Abhängigkeiten machen die Dienstevolution im laufenden Betrieb zu einem herausfordernden Problem, weil die Evolution eines Dienstes Änderungen in abhängigen Diensten und Kundenprogrammen nach sich ziehen kann. In Analogie zur Biologie nennen wir dies „Dienst-Co-Evolution“. 

Daraus ergibt sich die fundamentale Forschungsfrage des Projekts: Wie kann eine koordinierte Dienst-Co-Evolution erreicht werden in komplexen Dienstlandschaften, in denen eine Vielfalt von untereinander abhängigen Diensten existiert? Ein zentralisiertes Management der Dienstevolution ist hier nicht möglich. Es wäre nicht nur ein zentraler Flaschenhals und Ausfallpunkt. Es wäre auch nicht machbar, weil Management und Administration der verschiedenen Dienste in separaten Organisationen ohne zentrale Einrichtungen liegen können.

Wir werden eine Systemarchitektur und Protokolle für die on-the-fly Dienst-Co-Evolution entwerfen und prototypisch realisieren.  Offensichtlich hat die Dienstevolution Ähnlichkeiten zur kompositionellen Adaption von Anwendungen. Somit kann unser Lösungsansatz auf unseren ausgiebigen Erfahrungen mit Entwicklungsmethodik und Middleware für selbst-adaptive Software aufbauen.