Behavioral Compatibility of Simulink Models for Product Line Maintenance and Evolution

Bernhard Rumpe,Christoph Schulze,Michael von Wenckstern,Jan Oliver Ringert,Peter Manhart
DOI: https://doi.org/10.1145/2791060.2791077
2015-11-17
Abstract:Embedded software systems, e.g. automotive, robotic or automation systems are highly configurable and consist of many software components being available in different variants and versions. To identify the degree of reusability between these different occurrences of a component, it is necessary to determine the functional backward and forward compatibility between them. Based on this information it is possible to identify in which system context a component can be replaced safely by another version, e.g. exchanging an older component, or variant, e.g. introducing new features, to achieve the same functionality. This paper presents a model checking approach to determine behavioral compatibility of Simulink models, obtained from different component variants or during evolution. A prototype for automated compatibility checking demonstrates its feasibility. In addition implemented optimizations make the analysis more efficient, when the compared variants or versions are structurally similar. A case study on a driver assistance system provided by Daimler AG shows the effectiveness of the approach to automatically compare Simulink components.
Software Engineering
What problem does this paper attempt to address?