Back to Search Start Over

Automatisierte Aggregation von Musterimplementierungen

Authors :
Graf, Marcel
Publication Year :
2021
Publisher :
Universität Stuttgart, 2021.

Abstract

Christopher Alexander publizierte 1977 erste Muster (Patterns) für die Stadt- und Gebäudearchitektur. Mittlerweile sind Muster in der Softwarearchitektur und -entwicklung etabliert und weitverbreitet. Muster beschreiben abstrakte und bewährte Lösungen für wiederkehrende Problemstellungen. Im Fall von Architekturentwürfen von Softwaresystemen, stehen Muster in verschiedenen Beziehungen zueinander. Um dies abbilden zu können, wird ein Entwurfsmodell entwickelt, welches aus Musterinstanzen und ihren Beziehungen besteht. Werden auf diese Weise Softwaresysteme modelliert, so ist oft eine manuelle Umsetzung in eine konkrete Programmiersprache oder Technologie erforderlich. Zur besseren Wiederverwendbarkeit wird ein Konzept vorgestellt um die Verbindung zwischen Muster und Musterimplementierung sowie die Verbindung zwischen den Musterimplementierungen abzubilden. Basierend auf einer benutzerdefinierten Selektion, die eine Abbildung von Musterinstanzen auf Musterimplementierungen darstellt, sollen die Musterimplementierungen automatisiert aggregiert werden. Hierfür werden die Eigenschaften von Musterimplementierungen und Aggregationsoperatoren betrachtet. Insbesondere wird die Eigenschaft berücksichtigt, dass Entwurfsmodelle einem Graphen entsprechen. Daraus wird ein Konzept für die Aggregation entwickelt. Um die Anforderungen zu erarbeiten und abschließend den Prototyp zu validieren, werden drei Referenzszenarien aus den Cloud Computing Patterns und den Enterprise Integration Patterns definiert. Das Konzept wird in einem Prototypen umgesetzt, basierend auf Pattern Atlas. Dazu wird ein Editor für Entwurfsmodelle und Aggregationsoperatoren zur automatisierten Aggregation von Musterimplementierungen implementiert. Dies umfasst eine Implementierung für die Aggregation von Musterimplementierungen zu Amazon Web Services Cloud Formation Templates und Implementierungen für die Aggregation von Apache ActiveMQ Konfigurationen. Anhand des Prototyps wird demonstriert, dass eine automatisierte Aggregation von Musterimplementierungen von Mustern mehrerer Mustersprachen möglich ist.<br />Christopher Alexander published the first patterns for urban and building architecture in 1977. In the meantime, patterns have become established and widespread in software architecture and development. Patterns describe abstract and proven solutions for recurring problems. In the case of architectural designs of software systems, patterns are related to each other in different ways. In order to be able to represent this, a design model is developed, which consists of pattern instances and their relations. When software systems are modeled in this way, a manual conversion into a concrete programming language or technology is often necessary. For better reusability, a concept is presented to map the connection between pattern and concrete solution as well as the connection between concrete solutions. Based on a user-defined selection, which is a mapping from pattern instances to concrete solutions, the concrete solutions are to be aggregated in an automated way. For this purpose, the properties of concrete solutions and aggregation operators are considered. In particular, the fact that design models correspond to a graph is considered. From this, a concept for aggregation is developed. To elaborate the requirements and finally validate the prototype, three reference scenarios from the Cloud Computing Patterns and the Enterprise Integration Patterns are defined. The concept is implemented in a prototype based on Pattern Atlas. For this purpose, a design model editor and aggregation operators for automated aggregation of concrete solutions are implemented. This includes an implementation for aggregating concrete solutions to Amazon Web Services Cloud Formation Templates and implementations for aggregating Apache ActiveMQ configurations. The prototype is used to demonstrate that automated aggregation of concrete solutions of patterns from multiple pattern languages is possible.

Details

Language :
German
Database :
OpenAIRE
Accession number :
edsair.doi.dedup.....92f21f73db0b963fe9a5ec2119afd2d0
Full Text :
https://doi.org/10.18419/opus-11235