Detailseite
MoSAiC - Modell-integrierende selbst-adaptive Komponenten
Antragsteller
Professor Dr. Jürgen Ebert; Professor Dr. Gregor Engels
Fachliche Zuordnung
Softwaretechnik und Programmiersprachen
Förderung
Förderung von 2014 bis 2016
Projektkennung
Deutsche Forschungsgemeinschaft (DFG) - Projektnummer 243343239
Modelle und Komponenten sind zwei akzeptierte Konzepte in der modernen Softwareentwicklung, um einerseits die Entwicklung, Evolution und Adaption von Softwaresystemen zu unterstützen und andererseits die Komplexität eines Softwaresystems zu beherrschen. Hierbei werden allerdings sowohl in der Modell-basierten als auch in der Modell-getriebenen Softwareentwicklung Modelle und Code gleichzeitig verwaltet, was trotz aller Bemühungen häufig zu Inkonsistenzen zwischen diesen beiden Ebenen führt. Weiterhin werden Komponentenkonzepte in erster Linie auf Code-Ebene eingesetzt, so dass dieses Strukturierungselement auf Modellebene fehlt.In diesem Forschungsprojekt soll eine neuartige Modell-integrierende Entwicklung (Model-Integrating Development (MID)) von Softwaresystemen untersucht werden, die auf einer weitest-gehend redundanzfreien Zusammenführung von Modellen und Code in Form von Modellintegrie-renden Komponenten (MoCos) beruht. Dadurch bleibt wichtiges Wissen über die Software auch im Betrieb explizit erhalten und wird fortgeschrieben. Hierbei unterstützen die Modellanteile eines MoCos eine hohe Flexibilität und Verständlichkeit der Komponente, während die Codeanteile für die effiziente Realisierung, die Verwendung von Standardsoftware und die Verbindung zur Middleware zuständig sind. Darüber hinaus können die Modelle auch zur Laufzeit manipuliert werden, um Selbstadaption zu unterstützen.In MoCos sind Modelle und Code beide Bestandteile erster Ordnung. Die Grenze zwischen Modellen und Code in einem MoCo sollte dabei verschiebbar bleiben, um auf geänderte Anforderungen flexibel reagieren oder eine gewünschte Selbstadaption hinzufügen zu können. Hierzu soll aus Teilen der Modelle Code erzeugt werden können (freezing) und Teile des Codes sollen durch Reverse Engineering in Modelle überführbar sein (melting). Außerdem sollen Komponenten existierender Komponentenmodelle (z.B. OSGi-Komponenten) in MoCos überführbar sein, wodurch insbesondere auch eine nachträgliche Einführung von Selbstadaption auf Komponentenebene ermöglicht wird.Für die Erforschung dieses neuartigen Komponenten-Realisierungskonzepts sind eine Reihe von Grundlagenforschungsfragen zu untersuchen, um ein umfassendes Konzept für MoCos zu erarbeiten. In Fallstudien aus dem Bereich der serviceorientierten Architekturen (SOA) und der (dynamischen) Software-Produktlinien (SPL) soll die Machbarkeit demonstriert werden.
DFG-Verfahren
Sachbeihilfen