h1

h2

h3

h4

h5
h6
http://join2-wiki.gsi.de/foswiki/pub/Main/Artwork/join2_logo100x88.png

Methodik zur Modularisierung und Komposition von Datenmodellen in der agilen Softwareentwicklung = Methodology for the modularization and composition of data models in agile software development



VerantwortlichkeitsangabeAchim Lindt

ImpressumDüren : Shaker 2025

Umfang1 Online-Ressource : Illustrationen

ISBN978-3-8191-0427-5

ReiheAachener Informatik-Berichte, Software Engineering ; 62


Dissertation, RWTH Aachen University, 2025

Druckausgabe: 2025. - Auch veröffentlicht auf dem Publikationsserver der RWTH Aachen University 2026


Genehmigende Fakultät
Fak09

Hauptberichter/Gutachter
;

Tag der mündlichen Prüfung/Habilitation
2025-10-08

Online
DOI: 10.18154/RWTH-2025-10436
URL: https://publications.rwth-aachen.de/record/1023009/files/1023009.pdf

Einrichtungen

  1. Lehrstuhl für Software Engineering (Informatik 3) (121510)

Inhaltliche Beschreibung (Schlagwörter)
Modelkomposition (frei) ; UML (frei) ; model driven software engineering (frei) ; software engineering (frei)

Thematische Einordnung (Klassifikation)
DDC: 004

Kurzfassung
Modularisierung und Wiederverwendung sind grundlegende Paradigmen bei der effizienten Entwicklung komplexer Software. Schnittstellen ermöglichen formale Absprachen für die verteilte Entwicklung zwischen spezialisierten Teams und so unabhängige Entwicklungs- und Releaseprozesse sowie eine agile Softwareentwicklung. In modellgetriebenen Entwicklungsprozessen, bei denen Modelle statt Code im Mittelpunkt stehen, ist Modularisierung ebenso wünschenswert, aber nicht etabliert. Stattdessen entstehen meist große, monolithische Modelle, aus denen unter Einbeziehung handgeschriebener Erweiterungen der Code für das Gesamtsystem generiert wird. Die Literatur befasst sich überwiegend mit der Modellkomposition während der Analysephase des Softwaredesigns und unabhängig von konkreten Systemimplementierungen. Hier sind Änderungen zur Angleichung der Modelle erlaubt, welche die ursprüngliche Semantik verändern können. Dies ist für die verlässliche Integration von Softwarekomponenten unerwünscht. Auf Modellebene fehlt ein Formalismus wie er bei Integration von Systemkomponenten über Schnittstellen angewendet wird und eine Werkzeugunterstützung, um die Kompatibilität zweier Modelle zu überprüfen. Diese Arbeit schließt diese Lücke im Kontext der UML-Klassendiagramme als essenzielle Modellierungssprache in der modellgetriebenen Entwicklung, auf der alle anderen Modellierungssprachen der UML aufbauen. Die Semantik des Sprachprofils CD4Analysis wird denotationell formalisiert, und auf dieser algebraischen Grundlage wird ein Kompositionsoperator definiert, der Konflikte erkennt und inkompatible Modelle identifiziert. Der Operator wird in Java als Werkzeug CDMerge für die Language Workbench Monticore implementiert. Die Web-Plattform Modelpedia ermöglicht als Model-Repository die qualitätsgesicherte Bereitstellung von Modellen, Sprachdefinitionen und Werkzeugen. Modelle können versioniert und über eine standardisierte, mit üblichen Buildsystemen kompatible Schnittstelle bezogen werden. Die Plattform fördert die Modellqualität durch kollaborative Elemente wie Reviews und Kommentierung. Eine Plugin-Architektur ermöglicht die Erweiterung der Plattform für zusätzliche Sprachen und Werkzeuge. Eine Fallstudie zur Universitätsverwaltung demonstriert die Anwendung der entwickelten Methoden. Das Distributed Entity Management Framework ermöglicht die unabhängige Entwicklung und lose Integration der Komponenten sowie die Vermittlung von Laufzeitdaten. Die Ergebnisse zeigen, dass die Modularisierung und Komposition von Datenmodellen möglich ist und durch Werkzeuge und Infrastruktur unterstützt wird. Dies ermöglicht eine Effizienzsteigerung durch Wiederverwendung von Modellen und entsprechenden Implementierungen sowie eine verbesserte Agilität durch unabhängige und domänenspezifische Modellierung und Implementierung in modellgetriebenen Entwicklungsprozessen.

Modularisation and reuse are fundamental paradigms in the development of complex software. Interfaces enable formal agreements for distributed development among specialized teams, allowing for independent development and release processes, as well as agile and efficient software development. In model-driven development, where abstract models take precedence over code, modularization remains desirable but is not yet well established. Instead, large, monolithic models are often created and used to generate the entire system’s code, including handwritten extensions. Current literature predominantly addresses model composition during the analysis phase of software design, independent of concrete system implementations. In this phase, changes and transformations are permitted to align models, even if they potentially alter the original semantics. However, this is undesirable when integrating software components that are provided as ready-made development building blocks. At the model level, there is no formalism equivalent to a component interface, nor is there tool support to verify or ensure the compatibility of two models in the context of system implementation. This dissertation addresses this gap by focusing on UML class diagrams, an important modeling language in model-driven development that also serves as the meta-model for all other UML modeling languages. Firstly, the semantics of the CD4Analysis language profile are formally defined using denotational semantics. Building on algebraic embedding, a composition operator for class diagrams is introduced, which identifies conflicts and detects incompatible models. This operator is implemented in Java and provided as a tool CDMerge for the Monticore language workbench. The web platform Modelpedia, developed as part of this research, facilitates the quality assured provision of models, corresponding language definitions, and tools as a model repository. Models can be versioned and accessed through a standardized interface compatible with common build systems, supporting their use in development projects. The platform enhances project quality through collaborative elements such as reviews and bug reporting. A plugin architecture allows for the platform’s easy extension to accommodate additional languages and tools at runtime. A case study using the example of university administration software demonstrates the practical application of the developed methods and tools. The Distributed Entity Management Framework created for this purpose supports the independent development and loose integration of components, as well as the mediation of shared runtime data. The results show that the modularization and composition of data models are feasible and can be effectively supported by appropriate tools and infrastructure. This facilitates increased efficiency through the reuse of models and corresponding implementations, and enhanced agility through independent and domain-specific modeling and implementation in model-driven development processes.

OpenAccess:
Download fulltext PDF
(additional files)

Dokumenttyp
Dissertation / PhD Thesis/Book

Format
online, print

Sprache
German

Externe Identnummern
HBZ: HT031381645

Interne Identnummern
RWTH-2025-10436
Datensatz-ID: 1023009

Beteiligte Länder
Germany

 GO


OpenAccess

QR Code for this record

The record appears in these collections:
Document types > Theses > Ph.D. Theses
Document types > Books > Books
Publication server / Open Access
Faculty of Computer Science (Fac.9)
Public records
Publications database
121510

 Record created 2025-12-08, last modified 2026-08-12


OpenAccess:
Download fulltext PDF
(additional files)
Rate this document:

Rate this document:
1
2
3
 
(Not yet reviewed)