Model-based development is supposed to improve the development efficiency by raising the abstraction level and generating applications instead of manually coding the application in low level languages like C. One of the successful incarnations of this idea is the MATLAB Simulink tool chain. These tools are now widely used in the automotive industry not only to simulate control devices but also to generate product quality code from it. Like with traditional concepts reuse of created models is an issue. When this can be done efficiently, an additional level of effort reduction (and quality improvement) will be achieved. While MATLAB Simulink in combination with code generators provides good support for creating models for single application, and libraries of models, it does not provide sufficient support for more complex reuse scenarios with fine grained variations across the model(s). This paper will extend the approach developed by an automotive car manufacturer to address these issues. After a discussion of the basic concept the paper will put a special focus on support for flexible binding times since this is one of the crucial issues for reusing models across different projects with different need for run-time switchable variations (development/testing) and static decisions for product generation (resource efficiency in terms of code size and run-time). A concrete application supporting the deployment of these concepts in a project, developing mass production control units, is discussed in the following section.
[1]
Jaejoon Lee,et al.
Concepts and Guidelines of Feature Modeling for Product Line Software Engineering
,
2002,
ICSR.
[2]
Jörg Schäuffele,et al.
Automotive Software Engineering
,
2003
.
[3]
Kyo Chul Kang,et al.
Feature-Oriented Domain Analysis (FODA) Feasibility Study
,
1990
.
[4]
Jan Bosch,et al.
Software Reuse: Methods, Techniques, and Tools
,
2004,
Lecture Notes in Computer Science.
[5]
Stefan Bunzel.
Process Integration of Model-Based Design and Production-Code Generation in the Multi-User / Multi-Project Development Environment at Continental Teves – Part 1
,
2004
.
[6]
M.L. Griss,et al.
Software reuse architecture, process, and organization for business success
,
1997,
Proceedings of the Eighth Israeli Conference on Computer Systems and Software Engineering.
[7]
Krzysztof Czarnecki,et al.
Generative programming - methods, tools and applications
,
2000
.
[8]
Danilo Beuche.
Composition and construction of embedded software families
,
2003
.
[9]
Lars Geyer.
Variabilitätsmanagement in Produktfamilien
,
2003
.