<< back to topics
Automotive
Summary of Selected Papers
Development of software for automotive systems has become increasingly complex. Sophisticated driver assistance, infotainment and Car2X-communication systems as well as advanced active and passive safety-systems result in complex, software-intensive embedded systems. As these feature-driven subsystems may be arbitrarily combined by the customer, a huge amount of distinct variants needs to be managed, developed and tested. Thus, we are carrying out numerous projects in the automotive software engineering, here we concentrate on three aspects: (1) Autonomous driving; (2) Modeling of functional; and (3) Logical architectures and on variability.
To understand all these features, we describe in [GRJA12] a requirements management that connects with features in all phases of the development process helps to handle complex development tasks and thus stabilizes the development of automotive systems.
Autonomous driving
Quality assurance, especially of safety-related functions, is crucial to successfully deploy autonomous vehicles. In the Carolo project (see [BR12b],[BR12] and Autonomous Driving & Intelligent Driver Assistance), we have developed a rigorous test infrastructure for intelligent, sensor-based functions through fully-automatic simulation (not only visualization) of the car within its surrounding: the city, pedestrians and especially other cars [BBR07]. Beside the simulation of a complete autonomous car with its sensors and actors, the simulation environment may also be used to test dedicated subsystems without any real hardware involved. By producing sensor input from the simulation and comparison of expected and actual behavior, subsystems may be automatically validated and thus developed in an agile way.
Modeling logical architecture: function nets
The conceptual gap between requirements and the logical architecture of a car is closed in [GHK+07] and [GHK+08]. Here, feature views modeled as a function net are used to implement the mapping between feature-related requirements and the complete logical architecture of a car.
Variability of car software
Automotive functions that may be derived from a feature view are often developed in Matlab/Simulink. As variability needs also to be handled in development artifacts, we extended Matlab/Simulink with delta modeling techniques (see also Variability & Software Product Lines (SPL)). A core Simulink model represents the base variant that is transformed to another variant by applying deltas to it. A delta contains modifications that add, remove, or modify existing model elements. Thus, features of an automotive system may be developed modularly without mixing up variability and functionality in development artifacts [HKM+13]. New delta models that derive new variants may be added bottom-up without the need for a fully elaborated feature model.

In practice, product lines often originate from a single variant that is copied and altered to derive a new variant. In [HRRW12], we provide means to extract a well defined software product line from a set of copy and paste variants. This way, further variant development is alleviated, as new variants directly reuse common elements of the product line. To identify potential product lines and variants, [RSW+15] describes an approach to use logical and model checking techniques to identify commonalities and differences of two Simulink models describing the same control device in different variants and thus allows to understand incompatibilities.

Summary
- A consistent requirement management leads to a more stable and predictable development of automotive systems.
- Various functional and architectural variants need to be explicitly managed in all phases of the development cycle.
- Agile development techniques may be used by introducing continuous tests based on automatic simulations.
- The quality of autonomous driving cars and smart assistance systems is assured using automatic simulations.
Related Topics
- Autonomous Driving & Intelligent Driver Assistance
- Cloud Computing & Enterprise Information Systems
- Cyber-Physical Systems (CPS)
- Domain-Specific Languages (DSLs)
- MontiArc - Architectural Modeling
- MontiCore - Language Workbench
- Modeling Software Architecture
- Robotics
- Variability & Software Product Lines (SPL)
Selected Related Publications
-
[BMR+13]
V. Bertram, S. Maoz, J. O. Ringert, B. Rumpe, M. von Wenckstern
Component and Connector Views in Practice: An Experience Report
Conference on Model Driven Engineering Languages and Systems (MODELS'17), pg. 167-177, Austin, IEEE, Sept. 2017. - [RSW+15]
B. Rumpe, C. Schulze, M. von Wenckstern, J. O. Ringert, P. Manhart:
Behavioral Compatibility of Simulink Models for Product Line Maintenance and Evolution.
In: Conference on Software Product Lines (SPLC'15), p. 141-150, ACM, 2015. -
[HKM+13]
A. Haber, C. Kolassa, P. Manhart, P. Mir Seyed Nazari, B. Rumpe, I. Schaefer
First-Class Variability Modeling in Matlab/Simulink
In: Proceedings of the Seventh International Workshop on Variability Modelling of Software-intensive Systems, 23.-25.1.2013, pp. 11-18, ACM, New York, NY, USA. 2013. -
[BR12b]
C. Berger, B. Rumpe
Autonomous Driving - 5 Years after the Urban Challenge: The Anticipatory Vehicle as a Cyber-Physical System
In: Proceedings of the 10th Workshop on Automotive Software Engineering (ASE 2012), pp. 789-798, Braunschweig, September 2012. -
[GRJA12]
T. Gülke, B. Rumpe, M.Jansen, J. Axmann
High-Level Requirements Management and Complexity Costs in Automotive Development Projects: A Problem Statement
In: Requirements Engineering: Foundation for Software Quality 18th International Working Conference, Proceedings, REFSQ 2012, Essen, Germany, March 19-22, 2012. -
[HRRW12]
C. Hopp, H. Rendel, B. Rumpe, F. Wolf
Einführung eines Produktlinienansatzes in die automotive Softwareentwicklung am Beispiel von Steuergerätesoftware
In: Software Engineering 2012: Fachtagung des GI-Fachbereichs Softwaretechnik, 27. Februar - 2. März 2012 in Berlin. pp. 181-192, LNI 198, 2012
-
[BR12]
C. Berger, B. Rumpe
Engineering Autonomous Driving Software
In: C. Rouff, M. Hinchey (Eds.). Experience from the DARPA Urban Challenge. Springer, 2012.
- [GKPR08] H. Grönniger, H. Krahn, C. Pinkernell, B. Rumpe Modeling Variants of Automotive Systems using Views. In: Tagungsband Modellierungs-Workshop MBEFF: Modellbasierte Entwicklung von eingebetteten Fahrzeugfunktionen. Berlin, März 2008, Informatik-Bericht 2008-01, CFG-Fakultät, TU Braunschweig, 2008.
- [GHK+08] H. Grönniger, J. Hartmann, H. Krahn, S. Kriebel, L. Rothhardt, B. Rumpe Modelling Automotive Function Nets with Views for Features, Variants, and Modes. 4th European Congress ERTS - Embedded Real Time Software, Toulouse 2008.
- [BBR07] C. Basarke, C. Berger, B. Rumpe. Software & Systems Engineering Process and Tools for the Development of Autonomous Driving Intelligence. In: Journal of Aerospace Computing, Information, and Communication (JACIC) Vol.4, Nr.12, S. 1158-1174, October 2007
- [GHK+07] H. Grönniger, J. Hartmann, H. Krahn, S. Kriebel, B. Rumpe. View-Based Modeling of Function Nets. In: Proceedings of the Object-oriented Modelling of Embedded Real-Time Systems (OMER4) Workshop, Paderborn, October 2007
<< list of all topics list of all publications >>