Designing Reusable and Scalable Software Architectures for Automotive Embedded Systems in Driver Assistance 2010-01-0942
In this paper a model based design approach is described helping to improve the process of automotive embedded software development. The methodology contains a prototypical development process which shows great improvement towards the more and more upcoming non-functional demands faced by automotive software development like reusability, scalability and resource efficiency. This is achieved by use of increased formalism, continuousness and open standards. The whole hereby proposed and surrounding development process is introduced including all essential artifacts, process steps and formal or automated transitions between them.
Significantly important is the Abstract Automotive Software Architecture (ABSOFA), a meta model based software architecture modeling concept for structuring automotive software fully abstracting from realization, implementation and platform details. The meta model as well as the modeling language itself are based on the Unified Modeling Language (UML). This concept was particularly developed for the specific needs of complex software systems found e.g. in the domain of driver assistance.
The ABSOFA is also the backbone for several stages of expansion of the process. One of them is the concept of evaluating software architectures automatically and objectively. For doing so criteria for ‘good’ software architectures have been identified, formalized and worked out into quantitative algorithms that can be applied to the architecture calculating one or many quality values. For obtaining concrete variant and platform specific software architectures model transformations can also be applied automatically to any ABSOFA configuring and later on transferring them to common software implementation tools. For both concepts, architecture evaluation and model transformations, a common and formal XML (Extensible Markup Language) Schema based data model was required and developed which is also described.
The whole process works for top down as well as well as bottom up development. The article concludes with a practical example where the whole longitudinal dynamics software architecture of BMW's driver assistance systems is reengineered, restructured and optimized.
Citation: Ahrens, D., Frey, A., Pfeiffer, A., and Bertram, T., "Designing Reusable and Scalable Software Architectures for Automotive Embedded Systems in Driver Assistance," SAE Technical Paper 2010-01-0942, 2010, https://doi.org/10.4271/2010-01-0942. Download Citation
Dirk Ahrens, Andreas Frey, Andreas Pfeiffer, Torsten Bertram
BMW Group, Munich, Driving Dynamics, Technische Universität Dortmund