Mo­dell­ge­trie­be­ne Soft­ware-Mo­der­ni­sie­rung (MDSM)

Techniken der modellgetriebenen Softwareentwicklung basieren auf der Nutzung von formalen Modellen auf unterschiedlichen Abstraktionsebenen zur Automatisierung der Entwicklung von Software-Systemen. In der Fachgruppe Datenbank- und Informationssysteme wird die Anwendung von Techniken der modellgetriebenen Softwareentwicklung im Kontext der Software-Modernisierung untersucht.

Teilnehmer: Marvin Grieger

Kontaktperson: Marvin Grieger

Kooperation: TEAM GmbH

Finanzierung: Bundesministerium für Wirtschaft und Technologie (BMWi)

Webseite: www.model-driven-software-modernization.com

Beschreibung:

Softwaresysteme altern über die Zeit. Dieser Alterungsprozess ist dadurch gekennzeichnet, dass sich die Kluft zwischen den Anforderungen an die Systeme und deren tatsächliche Leistungsfähigkeit immer weiter vergrößert. Oftmals erfolgt eine Erhaltung und Weiterentwicklung der Systeme, um dem Alterungsprozess entgegenzuwirken. Über die Zeit geht dies mit einer verringerten Qualität der Software und einer steigenden Wartungskomplexität einher. Der Umfang der Änderungsmöglichkeiten durch eine Weiterentwicklung ist zudem begrenzt, gleichzeitig können Einschränkungen der zu Grunde liegenden Technologie dazu führen, dass es nicht möglich ist, alle Anforderungen umzusetzen. Ein Ausweg ist die Migration des Systems in eine neue Umgebung.

Die Motivation, eine Migration anstelle einer Neuentwicklung durchzuführen, ist die Erhaltung des in die Software eingeflossenen Wissens, also der Schutz der Investitionen. Eine manuelle Überführung dieses Wissens birgt jedoch erhebliche Risiken bedingt durch die Größe und Komplexität der Softwaresysteme. Durch die Entwicklung von Techniken und Werkzeugen, die diesen Schritt unterstützen, können Kosten gespart und Fehler minimiert werden.

Eine Migration bezeichnet die Überführung eines Softwaresystems in eine neue Umgebung, wobei die eigentliche Funktionalität erhalten bleibt. Bedingt durch neue Konzepte in der Softwareentwicklung, die über die Zeit entwickelt wurden, können diese Umgebungsänderungen oftmals sehr umfangreich sein. Beispiele hierfür sind der Wechsel von einer prozeduralen in eine objektorientierte Programmiersprache oder der Übergang in eine Serviceorientierte Architektur (SOA). Eine Modernisierung, als Abgrenzung zur reinen Migration, umfasst nicht eine Erhaltung der Funktionalität des Softwaresystems sondern eine Anpassung an die neuen Konzepte der Zielumgebung. Dadurch soll eine nachhaltige Zukunftsfähigkeit sichergestellt werden,

In der Fachgruppe Datenbank- und Informationssysteme wird die Anwendung von Techniken der modellgetriebenen Softwareentwicklung im Kontext der Software-Modernisierung untersucht. Ein zentraler Aspekt ist die Nutzung von Modellen auf unterschiedlichen Abstraktionsstufen, die durch Modelltransformationen ineinander überführt werden. Dadurch kann zum einen ein hoher Grad an Automatismus erreicht werden, andererseits ermöglicht die Fähigkeit zur Abstraktion eine Qualitätssteigerung in der Überführung.

Ver­öf­fent­li­chun­gen