Datum
2022Autor
Rademacher, FlorianSchlagwort
004 Informatik SoftwarearchitekturServiceorientierte ArchitekturMikroserviceSoftware EngineeringCodegenerierungCloud ComputingQualitätMetadata
Zur Langanzeige
Dissertation
A Language Ecosystem for Modeling Microservice Architecture
Zusammenfassung
The ongoing digital transformation of our economy and society poses significant challenges towards modern software systems. Application areas like Smart Cities and Industry 4.0 set high requirements on software quality attributes like scalability and reliability. At the same time, IT companies face an ever-growing demand in flexibility and continuous improvements of delivery cycles. Microservice Architecture (MSA) is a novel approach to the realization of software architectures that aims to foster their scalability, maintainability, and robustness. To this end, it proposes architecture decomposition into microservices, which are software components that (i) provide distinct capabilities; (ii) are as independent as possible from other components; and (iii) are solely responsible for their interactions with other components.
Despite its anticipated benefits, MSA introduces significant complexity to the design, development, and operation of software architectures, and even impacts the underlying development organization. This dissertation explores the potential of Model-driven Engineering (MDE) to tame this complexity for stakeholders in MSA engineering. More precisely, we investigate the abstraction facilities of MDE for (i) the construction of models to describe microservice architectures from stakeholder-oriented viewpoints; (ii) the combination of models to support architecture comprehension; and (iii) the processing of models in the development and analysis of microservice architectures.
The major contributions of the dissertation are fivefold and together they form the proposed MDE-based Language Ecosystem for Modeling Microservice Architecture (LEMMA):
1. We specify architecture viewpoints and model kinds including well-formedness constraints to reify stakeholders' concerns in MSA engineering.
2. We formalize the model kinds towards metamodels for the five modeling languages of LEMMA, balancing conceptual rigor in the modeling of service-based software architectures with the needs of practitioners in MSA engineering. Furthermore, we provide each metamodel with a textual concrete syntax and context conditions.
3. We define intermediate representations for an optimized processing of LEMMA models and specify an algorithm for intermediate model transformation. In addition, we design and implement a model processing framework to facilitate the development of operations on LEMMA models by stakeholders in MSA engineering.
4. We show LEMMA's applicability in greenfield MSA engineering and the resulting increase in microservice development efficiency.
5. We show LEMMA's applicability in brownfield MSA engineering for the reconstruction of microservice architectures and the automated assessment of their quality by means of static model analysis.
Despite its anticipated benefits, MSA introduces significant complexity to the design, development, and operation of software architectures, and even impacts the underlying development organization. This dissertation explores the potential of Model-driven Engineering (MDE) to tame this complexity for stakeholders in MSA engineering. More precisely, we investigate the abstraction facilities of MDE for (i) the construction of models to describe microservice architectures from stakeholder-oriented viewpoints; (ii) the combination of models to support architecture comprehension; and (iii) the processing of models in the development and analysis of microservice architectures.
The major contributions of the dissertation are fivefold and together they form the proposed MDE-based Language Ecosystem for Modeling Microservice Architecture (LEMMA):
1. We specify architecture viewpoints and model kinds including well-formedness constraints to reify stakeholders' concerns in MSA engineering.
2. We formalize the model kinds towards metamodels for the five modeling languages of LEMMA, balancing conceptual rigor in the modeling of service-based software architectures with the needs of practitioners in MSA engineering. Furthermore, we provide each metamodel with a textual concrete syntax and context conditions.
3. We define intermediate representations for an optimized processing of LEMMA models and specify an algorithm for intermediate model transformation. In addition, we design and implement a model processing framework to facilitate the development of operations on LEMMA models by stakeholders in MSA engineering.
4. We show LEMMA's applicability in greenfield MSA engineering and the resulting increase in microservice development efficiency.
5. We show LEMMA's applicability in brownfield MSA engineering for the reconstruction of microservice architectures and the automated assessment of their quality by means of static model analysis.
Die voranschreitende Digitalisierung von Wirtschaft und Gesellschaft stellt Softwaresysteme vor große Herausforderungen. Anwendungsbereiche wie Smart Cities oder Industrie 4.0 formulieren hohe Anforderungen an Software-Qualitätsattribute wie Skalierbarkeit und Zuverlässigkeit. Gleichzeitig müssen IT-Unternehmen zunehmend flexibler agieren und Release-Zyklen kontinuierlich optimieren. Microservice Architecture (MSA) ist ein neuer Ansatz zur Realisierung von Softwarearchitekturen, der ihre Skalierbarkeit, Wartbarkeit und Robustheit erhöhen kann. MSA verfolgt die funktionale Zerlegung von Softwarearchitekturen in Microservices und damit in Komponenten, die klar definierte Funktionalitäten bereitstellen, so unabhängig wie möglich sind und ihre Interaktion mit anderen Komponenten eigenständig koordinieren. Neben den erwarteten Vorteilen steigert die Einführung von MSA jedoch auch die Komplexität des Entwurfs, der Implementierung und des Betriebs von Softwarearchitekturen. Zudem wirkt sie sich auch auf die Entwicklungsorganisation aus. Die Dissertation beleuchtet das Potenzial des Model-driven Engineering (MDE), um die Komplexität der MSA-Entwicklung besser beherrschbar zu machen. Insbesondere untersuchen wir die Abstraktionsfähigkeiten des MDE hinsichtlich der Stakeholderspezifischen Beschreibung von Microservice-Architekturen, der Kombination von Modellen zur Verbesserung des Architekturverständnisses und der Verarbeitung von Modellen für die Entwicklung und Analyse von Microservice-Architekturen.
Die Dissertation liefert fünf wesentliche Beiträge, die zusammen das vorgeschlagene, MDE-basierte Language Ecosystem for Modeling Microservice Architecture (LEMMA) bilden:
1. Wir spezifizieren Viewpoints und Modellarten mit Wohlgeformtheitskriterien, um Stakeholder-Belange in der MSA-Entwicklung beschreibbar zu machen.
2. Wir formalisieren die Modellarten hin zu Metamodellen für die fünf Modellierungssprachen von LEMMA. Dabei wägen wir den Einsatz existierender Konzepte zur Modellierung servicebasierter Architekturen mit den Praxisanforderungen in der MSA-Entwicklung ab. Zudem spezifizieren wir eine textuelle Syntax und Kontextbedingungen für jedes Metamodell.
3. Wir definieren Zwischendarstellungen zur optimierten Verarbeitung von LEMMA-Modellen und spezifizieren einen Algorithmus, der diese Darstellungen aus LEMMA-Modellen ableitet. Des Weiteren konzipieren und implementieren wir ein Framework, das die Realisierung von Operationen auf LEMMA Modellen für Stakeholder der MSA-Entwicklung vereinfacht.
4. Wir zeigen LEMMAs Anwendbarkeit in der Neuentwicklung von Microservice-Architekturen und die resultierende Steigerung der Entwicklungseffizienz.
5. Wir zeigen LEMMAs Anwendbarkeit für die Rekonstruktion von Microservice-Architekturen sowie für ihre automatisierte Qualitätsbewertung mittels statischer Modellanalyse.
Die Dissertation liefert fünf wesentliche Beiträge, die zusammen das vorgeschlagene, MDE-basierte Language Ecosystem for Modeling Microservice Architecture (LEMMA) bilden:
1. Wir spezifizieren Viewpoints und Modellarten mit Wohlgeformtheitskriterien, um Stakeholder-Belange in der MSA-Entwicklung beschreibbar zu machen.
2. Wir formalisieren die Modellarten hin zu Metamodellen für die fünf Modellierungssprachen von LEMMA. Dabei wägen wir den Einsatz existierender Konzepte zur Modellierung servicebasierter Architekturen mit den Praxisanforderungen in der MSA-Entwicklung ab. Zudem spezifizieren wir eine textuelle Syntax und Kontextbedingungen für jedes Metamodell.
3. Wir definieren Zwischendarstellungen zur optimierten Verarbeitung von LEMMA-Modellen und spezifizieren einen Algorithmus, der diese Darstellungen aus LEMMA-Modellen ableitet. Des Weiteren konzipieren und implementieren wir ein Framework, das die Realisierung von Operationen auf LEMMA Modellen für Stakeholder der MSA-Entwicklung vereinfacht.
4. Wir zeigen LEMMAs Anwendbarkeit in der Neuentwicklung von Microservice-Architekturen und die resultierende Steigerung der Entwicklungseffizienz.
5. Wir zeigen LEMMAs Anwendbarkeit für die Rekonstruktion von Microservice-Architekturen sowie für ihre automatisierte Qualitätsbewertung mittels statischer Modellanalyse.
Zitieren
@phdthesis{doi:10.17170/kobra-202209306919,
author={Rademacher, Florian},
title={A Language Ecosystem for Modeling Microservice Architecture},
school={Kassel, Universität Kassel, Fachbereich Elektrotechnik / Informatik},
year={2022}
}
0500 Oax 0501 Text $btxt$2rdacontent 0502 Computermedien $bc$2rdacarrier 1100 2022$n2022 1500 1/eng 2050 ##0##http://hdl.handle.net/123456789/14176 3000 Rademacher, Florian 4000 A Language Ecosystem for Modeling Microservice Architecture / Rademacher, Florian 4030 4060 Online-Ressource 4085 ##0##=u http://nbn-resolving.de/http://hdl.handle.net/123456789/14176=x R 4204 \$dDissertation 4170 5550 {{Softwarearchitektur}} 5550 {{Serviceorientierte Architektur}} 5550 {{Mikroservice}} 5550 {{Software Engineering}} 5550 {{Codegenerierung}} 5550 {{Cloud Computing}} 5550 {{Qualität}} 7136 ##0##http://hdl.handle.net/123456789/14176
2022-10-05T14:09:05Z 2022-10-05T14:09:05Z 2022 doi:10.17170/kobra-202209306919 http://hdl.handle.net/123456789/14176 eng Urheberrechtlich geschützt https://rightsstatements.org/page/InC/1.0/ Microservice Architecture Model-driven Engineering Software Engineering Code Generation Software Architecture Reconstruction Software Architecture Quality Assessment Cloud Computing Service-based Software Architecture 004 A Language Ecosystem for Modeling Microservice Architecture Dissertation The ongoing digital transformation of our economy and society poses significant challenges towards modern software systems. Application areas like Smart Cities and Industry 4.0 set high requirements on software quality attributes like scalability and reliability. At the same time, IT companies face an ever-growing demand in flexibility and continuous improvements of delivery cycles. Microservice Architecture (MSA) is a novel approach to the realization of software architectures that aims to foster their scalability, maintainability, and robustness. To this end, it proposes architecture decomposition into microservices, which are software components that (i) provide distinct capabilities; (ii) are as independent as possible from other components; and (iii) are solely responsible for their interactions with other components. Despite its anticipated benefits, MSA introduces significant complexity to the design, development, and operation of software architectures, and even impacts the underlying development organization. This dissertation explores the potential of Model-driven Engineering (MDE) to tame this complexity for stakeholders in MSA engineering. More precisely, we investigate the abstraction facilities of MDE for (i) the construction of models to describe microservice architectures from stakeholder-oriented viewpoints; (ii) the combination of models to support architecture comprehension; and (iii) the processing of models in the development and analysis of microservice architectures. The major contributions of the dissertation are fivefold and together they form the proposed MDE-based Language Ecosystem for Modeling Microservice Architecture (LEMMA): 1. We specify architecture viewpoints and model kinds including well-formedness constraints to reify stakeholders' concerns in MSA engineering. 2. We formalize the model kinds towards metamodels for the five modeling languages of LEMMA, balancing conceptual rigor in the modeling of service-based software architectures with the needs of practitioners in MSA engineering. Furthermore, we provide each metamodel with a textual concrete syntax and context conditions. 3. We define intermediate representations for an optimized processing of LEMMA models and specify an algorithm for intermediate model transformation. In addition, we design and implement a model processing framework to facilitate the development of operations on LEMMA models by stakeholders in MSA engineering. 4. We show LEMMA's applicability in greenfield MSA engineering and the resulting increase in microservice development efficiency. 5. We show LEMMA's applicability in brownfield MSA engineering for the reconstruction of microservice architectures and the automated assessment of their quality by means of static model analysis. Die voranschreitende Digitalisierung von Wirtschaft und Gesellschaft stellt Softwaresysteme vor große Herausforderungen. Anwendungsbereiche wie Smart Cities oder Industrie 4.0 formulieren hohe Anforderungen an Software-Qualitätsattribute wie Skalierbarkeit und Zuverlässigkeit. Gleichzeitig müssen IT-Unternehmen zunehmend flexibler agieren und Release-Zyklen kontinuierlich optimieren. Microservice Architecture (MSA) ist ein neuer Ansatz zur Realisierung von Softwarearchitekturen, der ihre Skalierbarkeit, Wartbarkeit und Robustheit erhöhen kann. MSA verfolgt die funktionale Zerlegung von Softwarearchitekturen in Microservices und damit in Komponenten, die klar definierte Funktionalitäten bereitstellen, so unabhängig wie möglich sind und ihre Interaktion mit anderen Komponenten eigenständig koordinieren. Neben den erwarteten Vorteilen steigert die Einführung von MSA jedoch auch die Komplexität des Entwurfs, der Implementierung und des Betriebs von Softwarearchitekturen. Zudem wirkt sie sich auch auf die Entwicklungsorganisation aus. Die Dissertation beleuchtet das Potenzial des Model-driven Engineering (MDE), um die Komplexität der MSA-Entwicklung besser beherrschbar zu machen. Insbesondere untersuchen wir die Abstraktionsfähigkeiten des MDE hinsichtlich der Stakeholderspezifischen Beschreibung von Microservice-Architekturen, der Kombination von Modellen zur Verbesserung des Architekturverständnisses und der Verarbeitung von Modellen für die Entwicklung und Analyse von Microservice-Architekturen. Die Dissertation liefert fünf wesentliche Beiträge, die zusammen das vorgeschlagene, MDE-basierte Language Ecosystem for Modeling Microservice Architecture (LEMMA) bilden: 1. Wir spezifizieren Viewpoints und Modellarten mit Wohlgeformtheitskriterien, um Stakeholder-Belange in der MSA-Entwicklung beschreibbar zu machen. 2. Wir formalisieren die Modellarten hin zu Metamodellen für die fünf Modellierungssprachen von LEMMA. Dabei wägen wir den Einsatz existierender Konzepte zur Modellierung servicebasierter Architekturen mit den Praxisanforderungen in der MSA-Entwicklung ab. Zudem spezifizieren wir eine textuelle Syntax und Kontextbedingungen für jedes Metamodell. 3. Wir definieren Zwischendarstellungen zur optimierten Verarbeitung von LEMMA-Modellen und spezifizieren einen Algorithmus, der diese Darstellungen aus LEMMA-Modellen ableitet. Des Weiteren konzipieren und implementieren wir ein Framework, das die Realisierung von Operationen auf LEMMA Modellen für Stakeholder der MSA-Entwicklung vereinfacht. 4. Wir zeigen LEMMAs Anwendbarkeit in der Neuentwicklung von Microservice-Architekturen und die resultierende Steigerung der Entwicklungseffizienz. 5. Wir zeigen LEMMAs Anwendbarkeit für die Rekonstruktion von Microservice-Architekturen sowie für ihre automatisierte Qualitätsbewertung mittels statischer Modellanalyse. open access Rademacher, Florian 2022-05-24 xlv, 820 Seiten Kassel, Universität Kassel, Fachbereich Elektrotechnik / Informatik Zündorf, Albert (Prof. Dr.) Sachweh, Sabine (Prof. Dr.) Rumpe, Bernhard (Prof. Dr.) https://archive.softwareheritage.org/browse/origin/directory/?origin_url=https://github.com/frademacher/dissertation-supplemental-material Softwarearchitektur Serviceorientierte Architektur Mikroservice Software Engineering Codegenerierung Cloud Computing Qualität publishedVersion false true
Die folgenden Lizenzbestimmungen sind mit dieser Ressource verbunden:
:Urheberrechtlich geschützt
Verwandte Dokumente
Anzeige der Dokumente mit ähnlichem Titel, Autor, Urheber und Thema.
-
Working paperThermal Comfort in Urban Planning and Architecture under Consideration of Global Climate Change Katzschner, Lutz; Mayer, Helmut; Nikolopoulou, Marialena; Eliasson, Ingegärd; Thorsson, Sofia; Bruse, Michael; Lenzholzer, Sandra; Cheng, Vicky; Gonçalves, Artur; Ribeiro, António; Feliciano, Manuel; Dostal, Paul; Holst, Jutta; Laue, Hendrik M.; Pauleit, Stephan; Pressman, Norman; Röckle, Rainer; Reuter, Ulrich (2008-04-21)