Abstract— State of the art automotive software systems presume a static configuration of electronic control units and software components. Assuming that future Driver Assistance Systems (DAS) will deploy dynamically changing software configurations, the authors propose an approach towards an adaptive software and systems architecture for DAS. The paper focuses on systems, which assist the driver while backing up truck and trailer combinations. These systems are characterized by a high degree of distribution as well as a high level of heterogeneity and changeability even at runtime. In order to meet these demands, the authors suggest the usage of service orientation combined with software agents. The functional units of these systems are encapsulated in services which are dynamically orchestrated by the agents whenever the system changes. This paper describes the ideas of this approach using a real world example. It also names and classifies the scenarios of re-configuration. The article concludes with a lookout on the future work within this project. Index Terms— automotive software architecture, automotive systems architecture, driver assistance systems, re-configuration, service oriented architecture, software agents I. INTRODUCTION A. Driver Assistance Systems Modern Driver Assistance Systems (DAS), often referred to as "Advanced Driver Assistance Systems" and Driver Information Systems support the driver during his main tasks (Table 1) of driving, operating the vehicle and operating devices in the vehicle [17]: TABLE 1. DRIVING TASKS [17] Primary Task: Conducting the vehicle Stabilization, Route keeping, Navigation Secondary Task: Operating car devices Gear change, Blinking, Wiping Tertiary Tasks: Ambient Control Air Conditioning, Communication/Entertainment Systems This is usually done by informing the driver through one or more information channels, or modalities (e.g. sound, Manuscript received September 8, 2011. Marco Wagner was supported by a scholarship of the “Thomas Gessmann-Stiftung”, Essen, Germany. Marco Wagner and Ansgar Meroth are with the faculty of Mechanics and Electronics, Heilbronn University, Heilbronn, Germany. (e-mail: Marco.Wagner@hs-heilbronn.de). (e-mail: Ansgar.Meroth@hs-heilbronn.de). Dieter Zöbel is with the faculty of Computer Science of the University of Koblenz-Landau, Koblenz, Germany (e-mail: Zoebel@uni-koblenz.de). warning lights, vibration), sometimes by changing the classical semantics of the car's input devices, e.g. by using the steering wheel for triggering an overtaking assistant, or changing the force feedback of the wheel or the pedals to indicate whatever is required [18]. Moreover, they may also directly interact with the vehicle, e.g. by selectively braking or accelerating. For all those purposes, DAS need information about the car and its interaction with the environment. First, systems derived this information from sensors that measured the behavior of the car itself (e.g. sensors measure the acceleration or differences in wheel velocities in order to derive the friction of the street). Nowadays, information is collected with cameras, radars and lasers in order to directly obtain a picture of the environment. Fig. 1. The generic loop of informing driver assistance systems. The functional reference architecture of an informing DAS consists of three components. Sensors are used to measure physical quantities characterizing the current state of the vehicle. The logic of the assistance uses these values to calculate some kind of information. This information is presented to the driver through the human machine interface (HMI) which constitutes the third component. Upon the provided information, the driver decides for and conducts an action (e.g. steering, braking) which consequently changes the state of the vehicle. Thus, the driver is part of a generic control loop which is shown in figure 1. There is of course a wide variety of DAS in modern cars. They support the driver in situations like lane changing, parking or stop-and-go traffic. Current driver assistance systems are characterized by a static systems architecture since the number of electronic control units (ECUs) and the functional and electrical topology of the network connecting them rarely changes during their life cycle. Unlike this, future DAS will base on changing hardware configurations that might even alter at runtime. This may happen through connecting so called nomadic devices like personal digital assistants (PDAs) or Smartphones. Another scenario that is possible is future car-to-car or car-to-infrastructure communication systems where the car and its ECUs will be part of an ever-changing M. Wagner, D. Zöbel, and A. Meroth An Adaptive Software and Systems Architecture for Driver Assistance Systems based on Service Orientation International Journal of Machine Learning and Computing, Vol. 1, No. 4, October 2011 359