After a history of more than 100 years, the automobile as a product continues to evolve at a very
fast pace. Since the early 1970s, its evolution has strongly been infl uenced by a steady increase
in onboard electronic systems and software in the vehicle—a trend that continues unabated.
As a consequence of this trend, vehicle development, production, and service are changing in
fundamental ways. Using software to implement functions in the vehicle provides developers
with new degrees of freedom and solutions to existing confl icts of objectives. The resulting
complexity can be managed only by using processes, methods, and tools that are appropriate
for vehicle-specifi c applications.
In the last few years, various methods and standards have been devised for the development of
software for in-vehicle electronic systems. These methods and standards are best described by
the collective term automotive software engineering.
Over time, a complex terminology has evolved in automotive software engineering. All of us
working in this fi eld are confronting these terms on a daily basis. However, it is no overstatement
to say that many of us are no longer sure of a clear or shared defi nition of many of these
terms. In fact, some of the terms are used in very different contexts where they clearly do not
mean one and the same thing. For example, the term “process” occurs not only in the context
of control engineering but is also used (to designate a very specifi c thing) in conjunction with
real-time systems—to say nothing of its general meaning in development, where it describes
development methods in a wider context. In this book, we defi ne essential terms and then use
them consistently as defi ned.
The chapters of this book focus on the processes, methods, and tools for the development of
software for electronic systems in the vehicle. The book also places emphasis on the interaction
between software development (as a professional discipline limiting itself to certain vehicle
components) and the all-embracing systems engineering (a fi eld that considers all vehicle components).
The development methods introduced—the so-called processes—take the form of
models, that is, they comprise an abstract and idealized refl ection of daily practice. Although
they may serve as guidelines for a variety of development projects, they will need to be evaluated
and adapted before they are applied to specifi c projects. We have taken great pains to provide
clear and unambiguous descriptions of processes and supporting methods and tools.
The wealth of information available on many aspects of our topic forced us to forgo detailed
discussion of some of them. Generally speaking, we have limited our discussion to aspects that
are relevant and specifi c to the automotive industry.