2018 & 2019
Dissertation, RWTH Aachen University, 2018
Druckausgabe: 2018. - Auch veröffentlicht auf dem Publikationsserver der RWTH Aachen University 2019
Genehmigende Fakultät
Fak01
Hauptberichter/Gutachter
;
Tag der mündlichen Prüfung/Habilitation
2018-09-13
Online
DOI: 10.18154/RWTH-2018-231667
URL: http://publications.rwth-aachen.de/record/751838/files/751838.pdf
Einrichtungen
Inhaltliche Beschreibung (Schlagwörter)
architecture (frei) ; behavior (frei) ; conformance (frei)
Thematische Einordnung (Klassifikation)
DDC: 004
Kurzfassung
In dieser Arbeit stellen wir ARAMIS vor: einen neuen, innovativen Ansatz und eine dazu gehörende Werkezugumgebung, um auf Basis von Laufzeitinformationen verhaltensbasiert die Konformität von Softwarearchitekturen zu überprüfen.In den letzten Jahren wurden einige Ansätze für eine statisch-basierte Architekturkonformitätsüberprüfung von Softwaresystemen vorgeschlagen. Diese haben jedoch erhebliche Nachteile, insbesondere dann, wenn damit moderne, technologisch heterogene und verteilte Softwaresystemen analysiert werden sollen. Etablierte Technologien wie die Objektorientierung aber auch der Übergang von monolithischen zu komponentenbasierten Systemen haben die Komplexität von Softwaresystemen von deren Struktur zum Systemverhalten verschoben. Eine Prüfung der Architekturkonformität solcher Systeme kann häufig nicht mit statisch-basierten Verfahren durchgeführt werden, da diese nicht immer feststellen können, ob sich ein System so verhält, wie dies von der Architektur vorgesehen wurde. In dieser Arbeit stellen wir ARAMIS vor, einen neuen Ansatz zur Prüfung der Architekturkonformität, der dieses Problem löst.In einem ersten Schritt wird dabei die vorgesehene Architekturbeschreibung des zu analysierenden Softwaresystems mittels eines ARAMIS-spezifischen Metamodells erfasst. Diese Beschreibung besteht im Wesentlichen aus den Architektureinheiten des Systems und ihren Kommunikationsregeln. Um die Akzeptanz des Ansatzes zu erhöhen, werden darüber hinaus Techniken des Modell-Engineerings genutzt. Dabei wird das Ziel verfolgt, schon existierende Architekturbeschreibungen verarbeiten zu können, die nicht dem ARAMIS-Metamodell entsprechen. Im Anschluss daran werden die Interaktionen innerhalb einer ausgeführten Software aufgezeichnet, wobei vorhandene Monitoring-Systeme verwendet werden. Im Gegensatz zu den statisch-basierten Ansätzen, ist eine vollständige Analyse eines nicht trivialen Softwaresystems jedoch unmöglich. Um dem entgegenzuwirken, werden eine Reihe von Indikatoren eingeführt, die Hinweise bezüglich der Angemessenheit des analysierten Verhaltens, im Verhältnis zu einer systemweiten Konformitätsüberprüfung, liefern. Die Interaktionen innerhalb des Systems werden im nächsten Schritt analysiert. Dabei wird die Kommunikation den definierten Architektureinheiten zugewiesen und anschließend gegen die definierten Kommunikationsregeln geprüft. Dieses Ergebnis liefert die implementierte Architektur des Softwaresystems, die insbesondere auch die Abweichungen von der vorgesehenen Architekturbeschreibung definiert. Die implementierte Architektur kann vielfältig analysiert werden, so können zum Beispiel benutzerdefinierte Architektursichten und Perspektiven definiert oder dedizierte Visualisierungen genutzt werden. Abschließend werden Prozesse vorgeschlagen, die einen Leitfaden für eine verhaltensbasierte Architekturkonformitätsüberprüfung darstellen. Der ARAMIS-Ansatz wurde durch drei Fallstudien evaluiert, zwei davon im industriellen Kontext. Die Ergebnisse sind sehr positiv. Die Evaluierungen haben gezeigt, dass ARAMIS effektiv genutzt werden kann, um eine implementierte Architektur im Bezug zu ihrer vorgesehenen Architekturbeschreibung zu verstehen und zu evaluieren. Dies ist ein wichtiger Ausgangspunkt für eine gezielte Softwareevolution.In this dissertation we present ARAMIS: a concept and corresponding tool support for behavior-based architecture conformance checking of software systems. In the past years several approaches for static-based architecture conformance checking were proposed. These pose important limitations when considering modern systems, typically composed of several interacting processes. Ever since the advent of object orientation and due to the shift from monolith architectures to componentized ones, the complexity of software systems has moved from structure to behavior. This is typically out of the scope of static-based conformance approaches, which face an impossibility in assessing if the system under analysis is behaving as foreseen by its architects. ARAMIS is our solution to alleviating the above-mentioned problem. First, the intended architecture description of the system under analysis is expressed using an ARAMIS-specific meta-model. This encompasses the architecture units constituting the system and the communication rules governing these. To increase acceptance, model-engineering techniques are also proposed to enable the reuse of intended architecture descriptions elaborated using different meta-models than that of ARAMIS. Next, interactions are extracted during the system's execution using third party monitoring tools. Given that a holistic analysis of the behavior of a system is impossible in general, we proposed several indicators to assess whether the captured interactions represent an adequate basis for checking the conformance of the system as a whole. The interactions are consequently elevated to depict communication between the units defined in the system's intended architecture description and validated to check their conformance to the formulated communication rules. The results constitute a description of the implemented architecture of the system, characterized by its drift from the intended one. This can subsequently be explored using several mechanisms such as user-defined architecture views and perspectives or dedicated visualizations. Last but not least, processes for guiding the activities involved in behavior-based conformance checking were developed and described. The ARAMIS concept and the developed toolbox were evaluated in three case studies, the last two being conducted in industrial settings. The results were very positive. The evaluation proved that the ARAMIS approach can be utilized by organizations when attempting to understand and evaluate the current state of implemented architectures and as a starting point for future evolution.
OpenAccess:
PDF
(additional files)
Dokumenttyp
Dissertation / PhD Thesis/Book
Format
online, print
Sprache
English
Externe Identnummern
HBZ: HT019996853
Interne Identnummern
RWTH-2018-231667
Datensatz-ID: 751838
Beteiligte Länder
Germany
Journal Article/Contribution to a book
Verhaltensbasierte Architekturkonformitätsüberprüfung
Ausgezeichnete Informatikdissertationen 2018, 261-270 (2019) special issue: "GI-Edition / Dissertation. - 19" (978-3-88579-978-8)
Fulltext
BibTeX |
EndNote:
XML,
Text |
RIS