Objective evaluation of software architectures in driver assistance systems

  • Authors:
  • Dirk Ahrens;Andreas Frey;Andreas Pfeiffer;Torsten Bertram

  • Affiliations:
  • BMW Group, Driving Dynamics, Driver Assistance and Active Safety, Munich, Germany 80788;Aerospace Informatics and Avionics, Ingolstadt University of Applied Sciences, Ingolstadt, Germany 85019;BMW Group, Driving Dynamics, Driver Assistance and Active Safety, Munich, Germany 80788;Institute of Control Theory and Systems Engineering, Technische Universität Dortmund, Dortmund, Germany 44221

  • Venue:
  • Computer Science - Research and Development
  • Year:
  • 2013

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper describes methods and the obtained results for objective evaluation of software architectures in the automotive embedded domain. Software architecture is the key factor for influencing and fulfilling non-functional requirements that are addressed to a software system. Among others scalability, extensibility and portability are to be mentioned as major criteria. Until today however there is no approach that allows evaluating and measuring the quality of such software architectures objectively and quantitatively. The approach described here tries to close this gap and offers software architects methods and tools to be applied automatically to any existing architecture draft measuring an objective `quality value'.Initially a quality model is developed which consists of several quality characteristics and quality attributes which are highly adapted and specialized to the specific needs of the automotive embedded software domain. After the identification of relevant quality attributes eight objective architecture metrics are developed and presented.The whole methodology is fully integrable into existing development processes. The suggested steps and artifacts can be added as optional upgrade. For a better understanding of the surrounding environment the current development process and necessary extensions are also explained.All metrics have been implemented in a fully functioning prototypical tool which can be operated via a graphical user interface (GUI) on any Java compliant system without further requirements. The user can freely configure which metrics shall be applied and how they are weighted to do an individual evaluation according to the software's specific needs or requirements.To prove its benefit for automotive applications and long-term establishment in the software development process the approach is evaluated. This is done in two consecutive steps. Firstly the general functioning and applicability is approved by using the metrics for several small case studies which also helped getting to know the metrics better in detail to create an initial balancing and weighting. Secondly the approach was applied to a complex and real practical example out of the driver assistance domain. The whole longitudinal dynamics software architecture of BMW's driver assistance systems was refactored using the metrics to monitor the success and keep up a goal-oriented, iterative and incremental procedure.