Clustering Variation Points in MATLAB/Simulink Models Using Reverse Signal Propagation Analysis

  • Alexander SchlieEmail author
  • David Wille
  • Loek Cleophas
  • Ina Schaefer
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10221)


Model-based languages such as MATLAB/Simulink play an essential role in the model-driven development of software systems. During their development, these systems can be subject to modification numerous times. For large-scale systems, to manually identify performed modifications is infeasible. However, their precise identification and subsequent validation is essential for the evolution of model-based systems. If not fully identified, modifications may cause unaccountable behavior as the system evolves and their redress can significantly delay the entire development process. In this paper, we propose a fully automated technique called Reverse Signal Propagation Analysis, which identifies and clusters variations within evolving MATLAB/Simulink models. With each cluster representing a clearly delimitable variation point between models, we allow model engineers not only to specifically focus on single variations, but by using their domain knowledge, to also relate and verify them. By identifying variation points, we assist model engineers in validating the respective parts and reduce the risk of improper system behavior as the system evolves. To assess the applicability of our technique, we present a feasibility study with real-world models from the automotive domain and show our technique to be very fast and highly precise.


MATLAB/Simulink Variation point Clustering 



We would like to thank Remo Lachmann and Christoph Seidl for their strong support and guidance on this paper.


  1. 1.
    Deissenboeck, F., Hummel, B., Jürgens, E., Schätz, B., Wagner, S., Girard, J.F., Teuchert, S.: Clone detection in automotive model-based development. In: Proceedings of the International Conference on Software Engineering (ICSE), pp. 603–612. ACM (2008)Google Scholar
  2. 2.
    Grönniger, H., Krahn, H., Pinkernell, C., Rumpe, B.: Modeling variants of automotive systems using views. CoRR abs/1409.6629 (2014)Google Scholar
  3. 3.
    Eckl, C., Brandstätter, M., Stjepandic, J.: Using the “model-based systems engineering” technique for multidisciplinary system development. In: Transdisciplinary Lifecycle Analysis of Systems - Proceedings of the 22nd ISPE Inc., International Conference on Concurrent Engineering, Delft, The Netherlands, July 20–23, 2015, pp. 100–109 (2015)Google Scholar
  4. 4.
    Kolovos, D.S., Di Ruscio, D., Pierantonio, A., Paige, R.F.: Different models for model matching: an analysis of approaches to support model differencing. In: Proceedings of the 2009 ICSE Workshop on Comparison and Versioning of Software Models. CVSM 2009, Washington, DC, pp. 1–6. IEEE Computer Society (2009)Google Scholar
  5. 5.
    Deissenboeck, F., Hummel, B., Juergens, E., Pfaehler, M., Schaetz, B.: Model clone detection in practice. In: Proceedings of the 4th International Workshop on Software Clones. IWSC 2010, pp. 57–64. ACM, New York (2010)Google Scholar
  6. 6.
    Wille, D., Holthusen, S., Schulze, S., Schaefer, I.: Interface variability in family model mining. In: Proceedings of the International Workshop on Model-Driven Approaches in Software Product Line Engineering (MAPLE), pp. 44–51. ACM (2013)Google Scholar
  7. 7.
    Holthusen, S., Wille, D., Legat, C., Beddig, S., Schaefer, I., Vogel-Heuser, B.: Family model mining for function block diagrams in automation software. In: Proceedings of the International Workshop on Reverse Variability Engineering (REVE), pp. 36–43. ACM (2014)Google Scholar
  8. 8.
    Wille, D.: Managing lots of models: the famine approach. In: Proceedings of the International Symposium on the Foundations of Software Engineering (FSE), pp. 817–819. ACM (2014)Google Scholar
  9. 9.
    Pohl, K., Böckle, G., van der Linden, F.J.: Software Product Line Engineering: Foundations Principles and Techniques. Springer-Verlag New York, Inc., Secaucus (2005)CrossRefzbMATHGoogle Scholar
  10. 10.
    Kuperberg, M., Reussner, R.: Analysing the fidelity of measurements performed with hardware performance counters. In: Proceedings of the 2nd ACM/SPEC International Conference on Performance Engineering. ICPE 2011, pp. 413–414. ACM, New York (2011)Google Scholar
  11. 11.
    Al-Batran, B., Schätz, B., Hummel, B.: Semantic clone detection for model-based development of embedded systems. In: Whittle, J., Clark, T., Kühne, T. (eds.) MODELS 2011. LNCS, vol. 6981, pp. 258–272. Springer, Heidelberg (2011). doi: 10.1007/978-3-642-24485-8_19 CrossRefGoogle Scholar
  12. 12.
    Alalfi, M., Cordy, J.R., Dean, T.R.: Analysis and clustering of model clones: an automotive industrial experience, pp. 375–378. IEEE (2014)Google Scholar
  13. 13.
    Kelter, U., Wehren, J., Niere, J.: A generic difference algorithm for UML models. Softw. Eng. 64(105–116), 4–9 (2005)Google Scholar
  14. 14.
    The Object Management Group: Unified Modeling Language (UML). Technical report, OMG Version 2.4.1. (2011)Google Scholar
  15. 15.
    Treude, C., Berlik, S., Wenzel, S., Kelter, U.: Difference computation of large models. In: Proceedings of the 6th Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on The Foundations of Software Engineering. ESEC-FSE 2007, pp. 295–304. ACM, New York (2007)Google Scholar
  16. 16.
    Könemann, P.: Semantic grouping of model changes. In: Proceedings of the 1st International Workshop on Model Comparison in Practice. IWMCP 2010, pp. 50–55. ACM, New York (2010)Google Scholar
  17. 17.
    Ryssel, U., Ploennigs, J., Kabitzsch, K.: Automatic variation-point identification in function-block-based models. In: Proceedings of the International Conference on Generative Programming and Component Engineering (GPCE), pp. 23–32. ACM (2010)Google Scholar

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  • Alexander Schlie
    • 1
    Email author
  • David Wille
    • 1
  • Loek Cleophas
    • 2
    • 3
  • Ina Schaefer
    • 1
  1. 1.TU BraunschweigBraunschweigGermany
  2. 2.Stellenbosch UniversityStellenboschSouth Africa
  3. 3.TU EindhovenEindhovenThe Netherlands

Personalised recommendations