2021 & 2022
Dissertation, RWTH Aachen University, 2021
Zweitveröffentlicht auf dem Publikationsserver der RWTH Aachen University 2022
Genehmigende Fakultät
Fak01
Hauptberichter/Gutachter
;
Tag der mündlichen Prüfung/Habilitation
2021-07-19
Online
DOI: 10.18154/RWTH-2021-10814
URL: https://publications.rwth-aachen.de/record/835778/files/835778.pdf
Einrichtungen
Inhaltliche Beschreibung (Schlagwörter)
AI (frei) ; CPS (frei) ; MDSE (frei) ; Machine Learning (frei) ; Software Architectures (frei)
Thematische Einordnung (Klassifikation)
DDC: 004
Kurzfassung
Die Entwicklung cyber-physischer Systeme stellt eine Vielzahl von Herausforderungen und erfordert Experten aus unterschiedlichen Bereichen. Solche Systeme können nicht ohne die Unterstützung durch geeignete Prozesse, Sprachen und Tools erfolgreich entwickelt werden. Modellgetriebenes Software Engineering stellt einen wichtigen Ansatz dar, der Entwicklungsteams hilft, die zunehmende Komplexität heutiger cyber-physischer Systeme zu bewältigen. Das Ziel dieser Arbeit besteht darin, eine modellgetriebene Engineering-Methodik mit besonderem Fokus auf vernetzte intelligente cyber-physische Systeme wie kooperative Fahrzeuge zu entwickeln. Die Grundlage der vorgestellten Methodik bildet eine Komponenten- und Konnektoren-basierte Architekturbeschreibungssprache zur Dekomposition und Integration von Software für cyber-physische Systeme. Diese verfügt über ein starkes statisches, mathematisch orientiertes Typsystem, welches physikalische Einheiten unterstützt und von der technischen Realisierung abstrahiert. Um die Entwicklung hochvernetzter selbstadaptiver Systeme zu erleichtern, ermöglicht die Sprache die Modellierung von Komponenten- und Konnektorarrays und unterstützt Laufzeit-Rekonfigurationen der Architektur. Architekturelemente können dabei ereignisbasiert dynamisch geändert, hinzugefügt und entfernt werden. Um den Entwicklungsprozess vollständig abzudecken, bietet die vorgestellte Methodik neben der strukturellen Modellierung Mittel zur Verhaltensspezifikation und deren nahtlose Integration in die Komponenten der Architektur. Eine matrixorientierte Skriptsprache ermöglichtes dem Entwickler, Algorithmen in einer Syntax zu spezifizieren, die der mathematischen Domäne sehr nahe kommt. Darüber hinaus wird eine dedizierte Deep-Learning-Modellierungssprache für die Entwicklung und das Training von neuronalen Netzen in Form von azyklischen, aus Neuronenschichten bestehenden Graphen bereitgestellt. Das Framework unterstützt verschiedene Lernmethoden wie überwachtes, verstärkendes sowie GAN-basiertes Lernen und deckt damit ein breites Anwendungsspektrum von der Bild- und natürlichen Sprachverarbeitung bis hin zur Entscheidungsfindung und Testdatengenerierung ab. Auf Basis der Architekturmodelle und Verhaltensspezifikationen erlaubt die vorgestellte Toolchain eine automatisierte Generierung von voll funktionsfähigem C++-Code zusammen mit den entsprechenden Build- und Trainingsskripten. Um die Integration und Bereitstellung der modellierten Software für verteilte Umgebungen zu erleichtern, verwenden wir schließlich einen Tagging-Ansatz zur Modellierung und Generierung von Middleware.The development of cyber-physical systems poses a multitude of challenges requiring experts from different fields. Such systems cannot be developed successfully without the support of appropriate processes, languages, and tools. Model-driven software engineering is an important approach which helps development teams to cope with the increasing complexity of today's cyber-physical systems. The aim of this thesis is to develop a model-driven engineering methodology with a particular focus on interconnected intelligent cyber-physical systems such as cooperative vehicles. The basis of the proposed methodology is a component-and-connector architecture description language focusing on the decomposition and integration of cyber-physical system software. It features a strong, math-oriented type system abstracting away from the technical realization and incorporating physical units. To facilitate the development of highly-interconnected self-adaptive systems, the language enables its users to model component and connector arrays and supports architectural runtime-reconfiguration. Architectural elements can be altered, added, and removed dynamically upon the occurrence of trigger events. In order to fully cover the development process, the proposed methodology, in addition to structural modeling, provides means for behavior specification and its seamless integration into the components of the architecture. A matrix-oriented scripting language enables the developer to specify algorithms using a syntax close to the mathematical domain. What is more, a dedicated deep learning modeling language is provided for the development and training of neural networks as directed acyclic graphs of neuron layers. The framework supports different learning methods including supervised, reinforcement, and generative adversarial learning, covering a broad range of applications from image and natural language processing to decision making and test data generation. The presented toolchain enables an automated generation of fully functional C++ code together with the corresponding build and training scripts based on the architectural models and behavior specifications. Finally, to facilitate the integration and deployment of the modeled software in distributed environments, we use a tagging approach to model the middleware and to control a middleware generation toolchain.
OpenAccess: PDF
Dokumenttyp
Dissertation / PhD Thesis/Book
Format
print, online
Sprache
English
Externe Identnummern
HBZ: HT021170930
Interne Identnummern
RWTH-2021-10814
Datensatz-ID: 835778
Beteiligte Länder
Germany