Validating Multiple Variants of an Automotive Light System with Electrum

This paper reports on the development and validation of a formal model for an automotive adaptive exterior lights system (ELS) with multiple variants in Electrum, a lightweight formal specification language that extends Alloy with mutable relations and temporal logic. We explore different strategies to address variability, one in pure Electrum and another through an annotative language extension. We then show how Electrum and its Analyzer can be used to validate systems of this nature, namely by checking that the reference scenarios are admissible, and to automatically verify whether the established requirements hold. A prototype was developed to translate the provided validation sequences into Electrum and back to further automate the validation process. The resulting ELS model was validated against the provided validation sequences and verified for most of requirements for all variants.

[1]  David Chemouil,et al.  Lightweight specification and analysis of dynamic systems with rich configurations , 2016, SIGSOFT FSE.

[2]  Frank Houdek,et al.  Adaptive Exterior Light and Speed Control System , 2020, ABZ.

[3]  Daniel Jackson,et al.  Software Abstractions - Logic, Language, and Analysis , 2006 .

[4]  Chong Liu,et al.  Simplifying the Analysis of Software Design Variants with a Colorful Alloy , 2019, SETTA.

[5]  Sven Apel,et al.  Detecting Dependences and Interactions in Feature-Oriented Design , 2010, 2010 IEEE 21st International Symposium on Software Reliability Engineering.

[6]  Alcino Cunha,et al.  Validating the Hybrid ERTMS/ETCS Level 3 concept with Electrum , 2018, International Journal on Software Tools for Technology Transfer.

[7]  David Chemouil,et al.  The Electrum Analyzer: Model Checking Relational First-Order Temporal Specifications , 2018, 2018 33rd IEEE/ACM International Conference on Automated Software Engineering (ASE).

[8]  David Chemouil,et al.  Simulation under Arbitrary Temporal Logic Constraints , 2019, F-IDE@FM.

[9]  Thomas Leich,et al.  Do background colors improve program comprehension in the #ifdef hell? , 2012, Empirical Software Engineering.