Software and System Architecture Evaluation and Analysis in the Automotive Domain
The complexity of software-intensive embedded systems in the automotive domain has been steadily growing in the recent years. As a consequence, controller-oriented development processes will be replaced by function-oriented ones. The main intention of function-oriented development is an initial decoupling of hardware and software. This increases the flexibility during development. Even more, the reuse of hardware and software components is supported. To handle these capabilities, a superior view on the structure of a system and its development rationale becomes necessary which is called the architecture of the system. Architecture evaluation has to be performed to assess the suitability of an architecture with respect to extra-functional requirements on the system, i.e.\ quality attributes. Thus, the development rationale can be expressed according to the quality attributes. In this work, an evaluation structure is proposed which is called the Quality Attribute Directed Acyclic Graph. It provides an explicit representation of extra-functional requirements and will be the basis not only for evaluation but also for architecture analysis. An evaluation methodology in terms of evaluation tactics for time-saving and cost-efficient evaluation processing is defined. Thus, an often great number of possible architecture variants can be handled without causing too much evaluation and thus development effort. Architecture analysis will be performed to understand evaluation results and to reason on development rationales. Analysis results are a valuable feedback for current as well as for future development projects. Architectural decisions on the system composition can be supported as their impact on the evaluation result can be predicted. Furthermore, promising architectural changes of architecture variants can be identified which again saves development effort. With growing and moreover expressible architectural knowledge, decisions can be supported more efficiently and even guided architecture development becomes conceivable. Besides documentation and communication, the whole development process profits from decision support as even quickly made decisions become more reliable.
Die Komplexität Software-intensiver eingebetteter Systeme im Automobil ist in den letzten Jahrzehnten ständig gestiegen. Daher werden Steuergeräte-orientierte Prozesse durch Funktionen-orientierte ersetzt. Die Motivation Funktionen-orientierter Entwicklung liegt in der Entkopplung von Hardware und Software, um die Flexibilität in der Entwicklung zu erhöhen und die Wiederverwendung von Hardware und Software zu unterstützen. Um diese Möglichkeiten handhaben zu können, bedarf es einer übergeordneten Sicht auf das System und die angewendeten Prinzipien in der Entwicklung. Diese Sicht wird als Architektur des Systems bezeichnet. Durch Architekturevaluation wird die Eignung einer Architektur bezüglich extra-funktionaler Anforderungen an das System, so genannter Qualitätsattribute, festgestellt. Die angewendeten Entwicklungsprinzipien können vor dem Hintergrund der Qualitätsattribute aufgezeigt werden. In dieser Arbeit wird eine Evaluationsstruktur, der Quality Attribute Directed Acyclic Graph, vorgeschlagen. Sie bietet eine explizite Darstellung der extra-funktionalen Anforderungen und ist nicht nur die Grundlage für die Evaluation, sondern auch für Architekturanalyse. Eine Evaluationsmethodik wird in Form von Taktiken definiert, die eine zeitsparende und kosteneffiziente Durchführung der Evaluation versprechen. Daher kann eine oftmals sehr große Anzahl möglicher Architekturvarianten berücksichtigt werden, ohne dass zu großer Evaluations- und somit Entwicklungsaufwand entsteht. Architekturanalyse wird eingesetzt, um Evaluationsergebnisse besser zu verstehen und angewendete Entwicklungsprinzipien zu diskutieren. Die Ergebnisse der Architekturanalyse stellen eine wertvolle Rückmeldung in Bezug auf die erreichte Qualität sowohl in aktuellen als auch zukünftigen Projekten dar. Architekturentscheidungen bezüglich der Systemkomposition werden unterstützt, da der entsprechende Einfluss auf die Evaluationsergebnisse im Vorfeld abgeschätzt werden kann. Des Weiteren können vielversprechende Veränderungen von Architekturvarianten identifiziert werden, was abermals Entwicklungsaufwand spart. Mit steigendem und vor allem auch formulierbarem Architekturwissen können Architekturentscheidungen immer effizienter unterstützt werden. Sogar Architekturentwicklung mit entsprechender Werkzeug-basierter Unterstützung rückt in greifbare Nähe. Neben Dokumentation und Kommunikation profitiert der gesamte Entwicklungsprozess von einer Entscheidungsunterstützung, die schnelle und zuverlässige Entscheidungen ermöglicht.
Preview
Cite
Access Statistic

Rights
Use and reproduction:
All rights reserved