Software Engineering
https://kobra.uni-kassel.de:443/handle/123456789/2006051211672
2024-03-19T13:56:19ZEinfache Methoden und Techniken zur Entwicklung von Serious Games
https://kobra.uni-kassel.de:443/handle/123456789/14227
Im Rahmen dieser Arbeit wurde ein einfacher Workflow entwickelt, mit dem eine reale Umgebung aufgenommen werden kann mit dem Ziel diese mit virtuellen Objekten und Tangibles anzureichern. Dazu werden zunächst Aufnahmeverfahren gesucht, mit denen sich ein begrenzter realer Ort auf eine Weise analysieren lässt, dass dieser später realistisch, also deutlich wiedererkennbar, darstellen lässt. Dieses Modell der Realität wird nun mit virtuellen, also nicht tatsächlich existenten Objekten angereichert. Diese Objekte sind nicht nur statisch (wie etwa eine Bildprojektion) sondern können dynamisch vom Betrachter beeinflusst werden.
Die Bedienung der Simulation erfolgt durch für das jeweilige Szenario entworfene Eingabegeräte, deren Erstellung ebenfalls Teil dieser Arbeit darstellt. Diese basieren auf der Grundlage eines Tangibles, eines greifbaren Objekts, dass durch Sensoren eine Manipulation der Simulation möglich macht.
2021-12-01T00:00:00ZKreckler, FrederikIm Rahmen dieser Arbeit wurde ein einfacher Workflow entwickelt, mit dem eine reale Umgebung aufgenommen werden kann mit dem Ziel diese mit virtuellen Objekten und Tangibles anzureichern. Dazu werden zunächst Aufnahmeverfahren gesucht, mit denen sich ein begrenzter realer Ort auf eine Weise analysieren lässt, dass dieser später realistisch, also deutlich wiedererkennbar, darstellen lässt. Dieses Modell der Realität wird nun mit virtuellen, also nicht tatsächlich existenten Objekten angereichert. Diese Objekte sind nicht nur statisch (wie etwa eine Bildprojektion) sondern können dynamisch vom Betrachter beeinflusst werden.
Die Bedienung der Simulation erfolgt durch für das jeweilige Szenario entworfene Eingabegeräte, deren Erstellung ebenfalls Teil dieser Arbeit darstellt. Diese basieren auf der Grundlage eines Tangibles, eines greifbaren Objekts, dass durch Sensoren eine Manipulation der Simulation möglich macht.A Language Ecosystem for Modeling Microservice Architecture
https://kobra.uni-kassel.de:443/handle/123456789/14176
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.
2022-01-01T00:00:00ZRademacher, FlorianThe 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.Model-driven Development of Microservice Architecture: An Experiment on the Quality in Use of a UML- and a DSL-based Approach
https://kobra.uni-kassel.de:443/handle/123456789/11912
Microservice Architecture denotes a software architectural style for service-based software systems whereby business capabilities are encapsulated in autonomously developable and deployable services. To foster a more efficient development it is considered feasible to apply the means of Model-driven Development in order to handle the complexity of such a distributed system and avoid the manual creation of boilerplate code using code generation. In this paper, we present and evaluate two modeling approaches for microservice systems. The first approach is based on a set of domain-specific modeling languages and the second approach on the Unified Modeling Language. We evaluate both approaches in the context of an experiment conducted during a master’s course in informatics with 32 participants. We compare the modeling approaches based upon their achieved effectiveness and perceived efficiency, satisfaction, and accessibility of the students. We do this by evaluating the correctness of created models during an assignment and through a questionnaire. Our results indicate that both approaches are generally suited for modeling microservices. However, the students did commit fewer modeling errors while using the set of domain-specific modeling languages.
2020-04-15T00:00:00ZSorgalla, JonasRademacher, FlorianSachweh, SabineZündorf, AlbertMicroservice Architecture denotes a software architectural style for service-based software systems whereby business capabilities are encapsulated in autonomously developable and deployable services. To foster a more efficient development it is considered feasible to apply the means of Model-driven Development in order to handle the complexity of such a distributed system and avoid the manual creation of boilerplate code using code generation. In this paper, we present and evaluate two modeling approaches for microservice systems. The first approach is based on a set of domain-specific modeling languages and the second approach on the Unified Modeling Language. We evaluate both approaches in the context of an experiment conducted during a master’s course in informatics with 32 participants. We compare the modeling approaches based upon their achieved effectiveness and perceived efficiency, satisfaction, and accessibility of the students. We do this by evaluating the correctness of created models during an assignment and through a questionnaire. Our results indicate that both approaches are generally suited for modeling microservices. However, the students did commit fewer modeling errors while using the set of domain-specific modeling languages.An Overview of Modeling Concepts for Service-Based Software Architectures
https://kobra.uni-kassel.de:443/handle/123456789/11709
This document provides an overview of modeling concepts for service-based software architectures (SBSAs). The concepts were extracted during a survey of conceptual frameworks for architecture modeling of SBSAs.
2020-01-01T00:00:00ZRademacher, FlorianThis document provides an overview of modeling concepts for service-based software architectures (SBSAs). The concepts were extracted during a survey of conceptual frameworks for architecture modeling of SBSAs.