Model-driven development (MDD) facilitates automatic programming language file generation from explicitly defined models, managing numerous artifacts with various relationships. A significant class of these relationships arises from artifacts using others, differing from generation dependencies where artifacts are transformed from one to another. MDD projects typically involve multiple dependent process steps, leading to a chain of artifact generations, compilations, and packaging. During these processes, numerous artifacts are created, read, or executed, resulting in complex interdependencies that can cause issues like poor maintainability and extended development times. Understanding the involved artifacts and their relationships is crucial for addressing these challenges. This report presents an abstract artifact model and applies it to examine the types of artifacts and related concepts pertinent to Java projects, a common project type. We explore the core of generative projects by analyzing the generator as a set of artifacts executed at design time. To define all relevant concepts precisely, we introduce the Artifact Model (AM), enabling a model-based specification of the types of artifacts, their corresponding concepts, and their relationships.
Timo Greifenberg Libri


Durch den Einsatz von Modellen lässt sich bei der modellgetriebenen Softwareentwicklung (engl. Model-Driven Development (MDD)) zum einen die Komplexität des zu entwickelnden Softwareprodukts beherrschen und zum anderen die konzeptionelle Lücke zwischen Problem- und Lösungsdomäne schließen. Die Verwendung und agile Weiterentwicklung von MDD-Werkzeugen kann jedoch selbst zu einem Anstieg der Komplexität im Projekt führen. Durch die große Anzahl an verschiedenen Artefakten und Beziehungen, den verschiedenen Artefakt- und Beziehungsarten und dem hohen Grad der Automatisierung werden das Verständnis, die Wartung und die Weiterentwicklung von MDD-Projekten erschwert. Um dieser Komplexität zu begegnen ist eine systematische Herangehensweise für das Verständnis und die Verwaltung von MDD-Projekten mit Fokus auf den Artefakten und deren Beziehungen notwendig. In dieser Arbeit wird mit der artefaktbasierten Analyse ein solcher Ansatz zur Analyse von Artefaktstrukturen in MDD-Projekten vorgestellt. Der Ansatz sieht den Einsatz einer adäquaten Modellierungstechnik und die Verwendung von Analysewerkzeugen zur Durchführung von Analysen unter Verwendung zugehöriger Methodiken vor.