Abstract
Due to the trend towards advanced driver assistance functions and fully automated driving, many future automotive systems have to provide fail-operational behaviour, maintaining certain functions for a certain time even in case of certain faults. Such behaviour is well-known in other domains where the availability of certain functions is important due to safety or financial reasons. The ability to tolerate faults and failures in systems, hardware and software therefore becomes increasingly important. Since there are topologies already available to cope with these new requirements, it is the task of the automotive industry to select the ones that fit to its specific constraints. These constraints include a high cost pressure, the scarcity of packaging space, limited resources for software, and requirements of the ISO 26262:2011 (i.e. the functional safety standard in the automotive industry). In order to support the decision on selecting the right software architecture, the strengths and weaknesses of topologies used by other industrial sectors have to be known thoroughly. This paper investigates three typical fault tolerant software architectures by use of a structured analysis technique, and by applying a set of criteria specific for the automotive domain. The intention of this paper is twofold: The primary goal is to gain an understanding related to the properties of the compared architectures. The second goal is to prove that the chosen software architecture comparison method is suitable to compare schematic, high level topologies.
Zusammenfassung
Aufgrund der Tendenz in Richtung fortschrittlicher Fahrerassistenzsysteme und autonomes Fahren müssen zukünftige Kraftfahrzeugsysteme ein so genanntes Fail-operational-Verhalten aufweisen. Dies bedeutet, dass gewisse Funktionen nach dem Auftreten von einem kritischen Fehler für eine gewisse Zeit aufrechterhalten bleiben. Diese Verhaltensmuster sind wohl bekannt in anderen Industriesektoren, wo die Verfügbarkeit gewisser Funktionen sicherheits- oder kostenrelevant ist. Die Fähigkeit von Systemen, Hardware und Software, Fehler zu tolerieren, gewinnt dadurch immer mehr an Bedeutung. Da andere Domänen fehlertolerante Architekturen bereits in Anwendung haben, ist es die Aufgabe der Automobilindustrie, die geeignetsten für die spezifischen Bedingungen dieser Branche auszuwählen. Diese Einsatzbedingungen sind durch hohen Kostendruck, Knappheit des Bauraums, begrenzte Ressourcen für Software und durch die technischen Anforderungen aus der ISO 26262:2011 (Norm zur funktionalen Sicherheit in Kraftfahrzeugen) geprägt. Um die Entscheidungsfindung bezogen auf das Auswählen der richtigen Softwarearchitektur zu unterstützen, müssen die Stärken und Schwächen typischer fehlertoleranter Topologien bekannt sein. Dieser Beitrag untersucht drei solche Architekturvarianten mittels einer strukturierten Softwarearchitekturanalysemethode. Für diese Analysemethode werden Kriterien eingesetzt, die aus typischen Bedingungen und Schwerpunkten der Kraftfahrzeugbranche abgeleitet wurden. Der vorliegende Beitrag hat zwei Hauptintentionen: einerseits ein Verständnis bezüglich der Eigenschaften der verglichenen Architekturen zu gewinnen, anderseits nachzuweisen, dass die angewandte Methodik auch für den Vergleich schematischer, grober Architekturen geeignet ist.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.References
ISO (2011): ISO 26262—Road vehicles—functional safety. International Organization for Standardization.
Dubrova, E. (2013): Fault-tolerant design. Berlin: Springer.
Suman, U., Patidar, A. (2015): A survey on software architecture evaluation methods. In 2nd international conference on computing for sustainable global development, INDIACom (pp. 967–972).
Kazman, R., Abowd, G., Bass, L., Clemens, P. (1996): Scenario-based analysis of software architecture. Available online: http://www.sei.cmu.edu/library/assets/scenariobasedanalysis.pdf.
Stoermer, C., Bachmann, F., Verhoef, C. (2003): SACAM: the software architecture comparison method. ???: Carnegie Mellon Software Engineering Institute.
Choi, H., Yeom, K. (2002): An approach to software architecture evaluation with the \(4+1\) view model of architecture. In Proceedings of the ninth Asia-Pacific software engineering conference, APSEC’02 (pp. 1–8).
Kruchten, P. (1995): Architectural blueprints—the “\(4+1\)” view model of software architecture. IEEE Softw., 12, 1–15.
Kazman, R., Klein, M., Barbacci, M., Longstaff, T., Lipson, H., Carriere, J. (1998): The architecture tradeoff analysis method. ???: Carnegie Mellon Software Engineering Institute.
Edel, J. (2015): Automated cars meet ISO 26262? How can HFT and diversified redundancies make human control areas safe? In VDA Sys conference.
Zayaraz, G., Thambidurai, P. (2005): Software architecture selection framework based on quality attributes. In IEEE Indicon 2005 conference, 2005 (pp. 167–170).
Matamoros, M., Savage, J., Ortega-Arjona, J. L. (2015): A comparison of two software architectures for general purpose mobile service robots. In IEEE international conference on autonomous robot systems and competitions (pp. 131–136).
Acknowledgements
The authors would like to thank the anonymous “Reviewer #1” for the very constructive criticism. The provided insightful review comments contributed to the quality of the paper extensively.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Schnellbach, A., Hirz, M. & Fabian, J. Comparison of fail-operational software architectures from the viewpoint of an automotive application. Elektrotech. Inftech. 133, 283–293 (2016). https://doi.org/10.1007/s00502-016-0420-z
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00502-016-0420-z