Zur Kurzanzeige

dc.date.accessioned2022-10-05T14:09:05Z
dc.date.available2022-10-05T14:09:05Z
dc.date.issued2022
dc.identifierdoi:10.17170/kobra-202209306919
dc.identifier.urihttp://hdl.handle.net/123456789/14176
dc.language.isoengeng
dc.rightsUrheberrechtlich geschützt
dc.rights.urihttps://rightsstatements.org/page/InC/1.0/
dc.subjectMicroservice Architectureeng
dc.subjectModel-driven Engineeringeng
dc.subjectSoftware Engineeringeng
dc.subjectCode Generationeng
dc.subjectSoftware Architecture Reconstructioneng
dc.subjectSoftware Architecture Quality Assessmenteng
dc.subjectCloud Computingeng
dc.subjectService-based Software Architectureeng
dc.subject.ddc004
dc.titleA Language Ecosystem for Modeling Microservice Architectureeng
dc.typeDissertation
dcterms.abstractThe 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.eng
dcterms.abstractDie 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.ger
dcterms.accessRightsopen access
dcterms.creatorRademacher, Florian
dcterms.dateAccepted2022-05-24
dcterms.extentxlv, 820 Seiten
dc.contributor.corporatenameKassel, Universität Kassel, Fachbereich Elektrotechnik / Informatikger
dc.contributor.refereeZündorf, Albert (Prof. Dr.)
dc.contributor.refereeSachweh, Sabine (Prof. Dr.)
dc.contributor.refereeRumpe, Bernhard (Prof. Dr.)
dc.relation.issupplementedbyhttps://archive.softwareheritage.org/browse/origin/directory/?origin_url=https://github.com/frademacher/dissertation-supplemental-material
dc.subject.swdSoftwarearchitekturger
dc.subject.swdServiceorientierte Architekturger
dc.subject.swdMikroserviceger
dc.subject.swdSoftware Engineeringger
dc.subject.swdCodegenerierungger
dc.subject.swdCloud Computingger
dc.subject.swdQualitätger
dc.type.versionpublishedVersion
kup.iskupfalse
ubks.epflichttrue


Dateien zu dieser Ressource

Thumbnail

Das Dokument erscheint in:

Zur Kurzanzeige