Model-Based Requirements Engineering in the Automotive Industry: Challenges and Opportunities
Licentiate thesis, 2016
The automotive industry is faced with rapid increases in size and complexity of their software engineering efforts, which makes successful Requirements Engineering essential. Model-Based Engineering has been suggested as a method to handle increasing complexity on a higher level of abstraction. Using models already during Requirements Engineering could offer several benefits, as changes are quick and cheap to implement. However, due to the high level of uncertainty and abstraction from implementation, it is unclear whether models can be used in the same way during Requirements Engineering as during later project stages.
The overall aim of this PhD project is to simplify the introduction of Model-Based Requirements Engineering in an automotive environment, based on objective guidelines. These guidelines should enable engineers and decision makers to decide on important factors such as the point of time or appropriate abstraction levels for requirement models. As a first step in this direction, the contribution of this thesis is an overview of the current industrial practice of Model-Based Engineering and Requirements Engineering in the automotive industry and initial results on how automotive requirements models can be created and exploited for testing purposes.
Results of this thesis are obtained using the three empirical strategies case study, controlled experiment and survey. Additionally, improvements are suggested using one study following the engineering paradigm, proposing and evaluating improvements to existing solutions.
Results and Conclusions:
The thesis outlines the general feasibility of models during automotive Requirements Engineering. Findings are that Model-Based Engineering is widespread in the automotive domain and used for Requirements Engineering by some practitioners. However, several problems exist in the Requirements Engineering practices of automotive companies. As a part of these, we report problems with respect to communication and organisation structure. We show that behaviour requirements from an emission standard draft can be formalised as models and used as test oracles. Furthermore, we compare two notations for formalising behaviour of an automotive requirements specification. The results indicate that languages can be chosen based on other factors than the notation, such as tool support or experience.
There are several directions for future work. For example, high-level requirements can be re-used as test oracles on different abstraction and testing levels. Additionally, communication in Requirements Engineering could be improved by using existing model-based requirements specifications and ownership relations between requirements and stakeholders.