Comparing the Applicability of Complexity Measurements for Simulink Models during Integration Testing -- An Industrial Case Study

Context: Simulink models are used during software integration testing in the automotive domain on hardware in the loop (HIL) rigs. As the amount of software in cars is increasing continuously, the number of Simulink models for control logic and plant models is growing at the same time. Objective: The study aims for investigating the applicability of three approaches for evaluating model complexity in an industrial setting. Additionally, insights on the understanding of maintainability in industry are gathered. Method: Simulink models from two vehicle projects at a German premium car manufacturer are evaluated by applying the following three approaches: Assessing a model's (a) size, (b) structure, and (c) signal routing. Afterwards, an interview study is conducted followed by an on-site workshop in order to validate the findings. Results: The measurements of 65 models resulted in comparable data for the three measurement approaches. Together with the interview studies, conclusions were drawn on how well each approach reflects the experts' opinions. Additionally, it was possible to get insights on maintainability in an industrial setting. Conclusion: By analyzing the results, differences between the three measurement approaches were revealed. The interviews showed that the expert opinion tends to favor the results of the simple size measurements over the measurement including the signal routing.

[1]  Marina Waldén,et al.  Quality Comparison and Evaluation of Digital Hydraulic Control Systems , 2008 .

[2]  Audris Mockus,et al.  Variability and Reproducibility in Software Engineering: A Study of Four Companies that Developed the Same System , 2009, IEEE Transactions on Software Engineering.

[3]  Alexander Serebrenik,et al.  Empirical Analysis of the Relationship between CC and SLOC in a Large Corpus of Java Methods , 2014, 2014 IEEE International Conference on Software Maintenance and Evolution.

[4]  Fabiano Cutigi Ferrari,et al.  A set of metrics for characterizing simulink model comprehension , 2014 .

[5]  Carolyn B. Seaman,et al.  Qualitative Methods in Empirical Studies of Software Engineering , 1999, IEEE Trans. Software Eng..

[6]  Robert Feldmann Complexity- and Performance Analysis of Different Controller Implementations on a Soft PLC , 2013, Demos/Posters/StudentResearch@MoDELS.

[7]  Per Runeson,et al.  Guidelines for conducting and reporting case study research in software engineering , 2009, Empirical Software Engineering.

[8]  Chris F. Kemerer,et al.  Software complexity and software maintenance: A survey of empirical research , 1995, Ann. Softw. Eng..

[9]  Rajiv D. Banker,et al.  Software Errors and Software Maintenance Management , 2002, Inf. Technol. Manag..

[10]  David P. Tegarden,et al.  A software complexity model of object-oriented systems , 1995, Decis. Support Syst..

[11]  Pontus Boström,et al.  An approach to contract-based verification of Simulink models , 2010 .

[12]  David N. Card,et al.  Measuring software design complexity , 1988, J. Syst. Softw..

[13]  Alexander Serebrenik,et al.  Simulink models are also software: modularity assessment , 2013, QoSA '13.

[14]  Nicholas A. Kraft,et al.  Cyclomatic Complexity and Lines of Code: Empirical Evidence of a Stable Linear Relationship , 2009, J. Softw. Eng. Appl..

[15]  Victor R. Basili,et al.  A Validation of Object-Oriented Design Metrics as Quality Indicators , 1996, IEEE Trans. Software Eng..

[16]  Chris F. Kemerer,et al.  A Metrics Suite for Object Oriented Design , 2015, IEEE Trans. Software Eng..