Skip to main content
Erschienen in: Software Quality Journal 4/2016

16.11.2015

Clone detection in MATLAB Stateflow models

verfasst von: Jian Chen, Thomas R. Dean, Manar H. Alalfi

Erschienen in: Software Quality Journal | Ausgabe 4/2016

Einloggen

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Abstract

MATLAB Simulink is one of the leading tools for model-based software development in the automotive industry. One extension to Simulink is Stateflow, which allows the user to embed Statecharts as components in a Simulink model. These state machines contain nested states, an action language that describes events, guards, conditions, actions, and complex transitions. As Stateflow has become increasingly important in Simulink models for the automotive sector, we extend previous work on clone detection of Simulink models to Stateflow components. While Stateflow models are stored in the same file as the Simulink models that host them, the representations differ. Our approach incorporates a pretransformation that converts the Stateflow models into a form that allows us to use the SIMONE model clone detector to identify candidates and cluster them into classes. In addition, we push the results of the Stateflow clone detection back into the Simulink models, improving the accuracy of the clones found in the host Simulink models. We validated our approach on the MATLAB Simulink/Stateflow demo set. Our approach showed promising results on the identification of Stateflow clones in isolation, as well as integrated components of the Simulink models that are hosting them.

Sie haben noch keine Lizenz? Dann Informieren Sie sich jetzt über unsere Produkte:

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Literatur
Zurück zum Zitat Al-Batran, B., Schätz, B., & Hummel, B. (2011). Semantic clone detection for model-based development of embedded systems. In Proceedings of the 14th International conference on model driven engineering languages and systems, (pp 258–272), MODELS’11. Berlin, Heidelberg: Springer. http://dl.acm.org/citation.cfm?id=2050655.2050681. Al-Batran, B., Schätz, B., & Hummel, B. (2011). Semantic clone detection for model-based development of embedded systems. In Proceedings of the 14th International conference on model driven engineering languages and systems, (pp 258–272), MODELS’11. Berlin, Heidelberg: Springer. http://​dl.​acm.​org/​citation.​cfm?​id=​2050655.​2050681.
Zurück zum Zitat Alalfi, M., Cordy, J., Dean, T., Stephan, M., & Stevenson, A. (2012a). Models are code too: Near-miss clone detection for Simulink models. In ICSM (pp 295–304). Alalfi, M., Cordy, J., Dean, T., Stephan, M., & Stevenson, A. (2012a). Models are code too: Near-miss clone detection for Simulink models. In ICSM (pp 295–304).
Zurück zum Zitat Alalfi, M., Cordy, J., Dean, T., Stephan, M., & Stevenson, A. (2012b). Near-miss model clone detection for Simulink models. In IWSC (pp. 78–79). Alalfi, M., Cordy, J., Dean, T., Stephan, M., & Stevenson, A. (2012b). Near-miss model clone detection for Simulink models. In IWSC (pp. 78–79).
Zurück zum Zitat Antony, E., Alalfi, M., & Cordy, J. (2013). An approach to clone detection in behavioural models. In Reverse engineering (WCRE), 2013 20th working conference on (pp. 472–476). doi:10.1109/WCRE.2013.6671325. Antony, E., Alalfi, M., & Cordy, J. (2013). An approach to clone detection in behavioural models. In Reverse engineering (WCRE), 2013 20th working conference on (pp. 472–476). doi:10.​1109/​WCRE.​2013.​6671325.
Zurück zum Zitat Chen, J., Dean, T.R., & Alalfi, M.H. (2014). Clone detection in matlab stateflow models. In Proceedings of the 8th international workshop on software clones, Elec. Comm. EASST (vol. 63, p. 13). Chen, J., Dean, T.R., & Alalfi, M.H. (2014). Clone detection in matlab stateflow models. In Proceedings of the 8th international workshop on software clones, Elec. Comm. EASST (vol. 63, p. 13).
Zurück zum Zitat Cordy, J.R. (2013). Submodel pattern extraction for simulink models. In Proceedings of the 17th International Software Product Line Conference, ACM, New York, NY, USA, SPLC ’13 (pp. 7–10). doi:10.1145/2491627.2492153. Cordy, J.R. (2013). Submodel pattern extraction for simulink models. In Proceedings of the 17th International Software Product Line Conference, ACM, New York, NY, USA, SPLC ’13 (pp. 7–10). doi:10.​1145/​2491627.​2492153.
Zurück zum Zitat Cordy, J.R., & Roy, C.K. (2011). The NiCad clone detector. In Proceedings of the 2011 IEEE 19th international conference on program comprehension, IEEE Computer Society, Washington, DC, USA, ICPC ’11 (pp. 219–220). doi:10.1109/ICPC.2011.26. Cordy, J.R., & Roy, C.K. (2011). The NiCad clone detector. In Proceedings of the 2011 IEEE 19th international conference on program comprehension, IEEE Computer Society, Washington, DC, USA, ICPC ’11 (pp. 219–220). doi:10.​1109/​ICPC.​2011.​26.
Zurück zum Zitat Deissenboeck, F., Pizka, M., & Seifert, T. (2005). Tool support for continuous quality assessment. In Software technology and engineering practice, 2005. 13th IEEE International Workshop on (pp. 127–136). doi:10.1109/STEP.2005.31. Deissenboeck, F., Pizka, M., & Seifert, T. (2005). Tool support for continuous quality assessment. In Software technology and engineering practice, 2005. 13th IEEE International Workshop on (pp. 127–136). doi:10.​1109/​STEP.​2005.​31.
Zurück zum Zitat Deissenboeck, F., Hummel, B., Jürgens, E., Schätz, B., Wagner, S., Girard, J.F., & Teuchert, S. (2008). Clone detection in automotive model-based development. In Proceedings of the 30th international conference on software engineering, ACM, New York, NY, USA, ICSE ’08 (pp. 603–612). doi:10.1145/1368088.1368172. Deissenboeck, F., Hummel, B., Jürgens, E., Schätz, B., Wagner, S., Girard, J.F., & Teuchert, S. (2008). Clone detection in automotive model-based development. In Proceedings of the 30th international conference on software engineering, ACM, New York, NY, USA, ICSE ’08 (pp. 603–612). doi:10.​1145/​1368088.​1368172.
Zurück zum Zitat Deissenboeck, F.,Hummel, B., Juergens, E., Pfaehler, M., & Schaetz, B. (2010). Model clone detection in practice. In: IWSC (pp. 57–64). Deissenboeck, F.,Hummel, B., Juergens, E., Pfaehler, M., & Schaetz, B. (2010). Model clone detection in practice. In: IWSC (pp. 57–64).
Zurück zum Zitat Hummel, B., Juergens, E., & Steidl, D. (2011). Index-based model clone detection. In Proceedings of the 5th International Workshop on Software Clones, ACM, New York, NY, USA, IWSC ’11 (pp. 21–27). doi:10.1145/1985404.1985409. Hummel, B., Juergens, E., & Steidl, D. (2011). Index-based model clone detection. In Proceedings of the 5th International Workshop on Software Clones, ACM, New York, NY, USA, IWSC ’11 (pp. 21–27). doi:10.​1145/​1985404.​1985409.
Zurück zum Zitat Juergens, E., Deissenboeck, F., & Hummel, B. (2009). Clonedetective—A workbench for clone detection research. In Proceedings of the 31st international conference on software engineering, IEEE computer society, Washington, DC, USA, ICSE ’09 (pp. 603–606). doi:10.1109/ICSE.2009.5070566. Juergens, E., Deissenboeck, F., & Hummel, B. (2009). Clonedetective—A workbench for clone detection research. In Proceedings of the 31st international conference on software engineering, IEEE computer society, Washington, DC, USA, ICSE ’09 (pp. 603–606). doi:10.​1109/​ICSE.​2009.​5070566.
Zurück zum Zitat Koschke, R. (2006). Survey of research on software clones. In Dagstuhl Seminars. Koschke, R. (2006). Survey of research on software clones. In Dagstuhl Seminars.
Zurück zum Zitat Liu, H., Ma, Z., Zhang, L., & Shao, W. (2006). Detecting duplications in sequence diagrams based on suffix trees. In Software engineering conference, 2006. APSEC 2006. 13th Asia Pacific (pp. 269–276). doi:10.1109/APSEC.2006.32. Liu, H., Ma, Z., Zhang, L., & Shao, W. (2006). Detecting duplications in sequence diagrams based on suffix trees. In Software engineering conference, 2006. APSEC 2006. 13th Asia Pacific (pp. 269–276). doi:10.​1109/​APSEC.​2006.​32.
Zurück zum Zitat Martin, D., & Cordy, J. R. (2010). Towards web services tagging by similarity detection. In M. Chignell, J. Cordy, J. Ng, & Y. Yesha (Eds.), The smart internet, lecture notes in computer science (Vol. 6400, pp. 216–233). Berlin Heidelberg: Springer. Martin, D., & Cordy, J. R. (2010). Towards web services tagging by similarity detection. In M. Chignell, J. Cordy, J. Ng, & Y. Yesha (Eds.), The smart internet, lecture notes in computer science (Vol. 6400, pp. 216–233). Berlin Heidelberg: Springer.
Zurück zum Zitat Martin, D., & Cordy, J.R. (2011). Analyzing web service similarity using contextual clones. In Proceedings of the 5th international workshop on software clones, ACM, New York, NY, USA, IWSC ’11 (pp. 41–46). doi:10.1145/1985404.1985412. Martin, D., & Cordy, J.R. (2011). Analyzing web service similarity using contextual clones. In Proceedings of the 5th international workshop on software clones, ACM, New York, NY, USA, IWSC ’11 (pp. 41–46). doi:10.​1145/​1985404.​1985412.
Zurück zum Zitat Pham, N., Nguyen, H., Nguyen, T., Al-Kofahi, J., & Nguyen, T. (2009). Complete and accurate clone detection in graph-based models. In Software Engineering, 2009. ICSE 2009. IEEE 31st International Conference on (pp. 276–286). doi:10.1109/ICSE.2009.5070528. Pham, N., Nguyen, H., Nguyen, T., Al-Kofahi, J., & Nguyen, T. (2009). Complete and accurate clone detection in graph-based models. In Software Engineering, 2009. ICSE 2009. IEEE 31st International Conference on (pp. 276–286). doi:10.​1109/​ICSE.​2009.​5070528.
Zurück zum Zitat Roy, C.K., & Cordy, J.R. (2007). A survey on software clone detection research. In: School of Computing TR 2007-541, Queen’s University 115. Roy, C.K., & Cordy, J.R. (2007). A survey on software clone detection research. In: School of Computing TR 2007-541, Queen’s University 115.
Zurück zum Zitat Roy, C. K., Cordy, J. R., & Koschke, R. (2009). Comparison and evaluation of code clone detection techniques and tools: A qualitative approach. Science of Computer Programming, 74(7), 470–495.MathSciNetCrossRefMATH Roy, C. K., Cordy, J. R., & Koschke, R. (2009). Comparison and evaluation of code clone detection techniques and tools: A qualitative approach. Science of Computer Programming, 74(7), 470–495.MathSciNetCrossRefMATH
Zurück zum Zitat Grant, S., Martin, J. C. D., & Skillicorn, D. (2011). Contextualized semantic analysis of web services. In WSE, 2011, 33–42. Grant, S., Martin, J. C. D., & Skillicorn, D. (2011). Contextualized semantic analysis of web services. In WSE, 2011, 33–42.
Zurück zum Zitat Stephan, M., Alafi, M., Stevenson, A., & Cordy, J. (2012). Towards qualitative comparison of simulink model clone detection approaches. In IWSC (pp. 84–85). Stephan, M., Alafi, M., Stevenson, A., & Cordy, J. (2012). Towards qualitative comparison of simulink model clone detection approaches. In IWSC (pp. 84–85).
Zurück zum Zitat Stevenson, A., & Cordy, J. R. (2012). Grammatical inference in software engineering: An overview of the state of the art. In Hedin (Ed.), Pre-proceedings of the fifth international conference on software language engineering (SLE 2012), Fakultät Informatik, Technische Universität (pp. 206–225). Stevenson, A., & Cordy, J. R. (2012). Grammatical inference in software engineering: An overview of the state of the art. In Hedin (Ed.), Pre-proceedings of the fifth international conference on software language engineering (SLE 2012), Fakultät Informatik, Technische Universität (pp. 206–225).
Zurück zum Zitat Störrle, H. (2009). VMQL: A generic visual model query language. In Visual languages and human-centric computing, 2009. VL/HCC 2009. IEEE Symposium on (pp. 199–206). doi:10.1109/VLHCC.2009.5295261. Störrle, H. (2009). VMQL: A generic visual model query language. In Visual languages and human-centric computing, 2009. VL/HCC 2009. IEEE Symposium on (pp. 199–206). doi:10.​1109/​VLHCC.​2009.​5295261.
Zurück zum Zitat Störrle, H. (2013). Towards clone detection in uml domain models. Software and Systems Modeling, 12(2), 307–329.CrossRef Störrle, H. (2013). Towards clone detection in uml domain models. Software and Systems Modeling, 12(2), 307–329.CrossRef
Metadaten
Titel
Clone detection in MATLAB Stateflow models
verfasst von
Jian Chen
Thomas R. Dean
Manar H. Alalfi
Publikationsdatum
16.11.2015
Verlag
Springer US
Erschienen in
Software Quality Journal / Ausgabe 4/2016
Print ISSN: 0963-9314
Elektronische ISSN: 1573-1367
DOI
https://doi.org/10.1007/s11219-015-9296-0

Weitere Artikel der Ausgabe 4/2016

Software Quality Journal 4/2016 Zur Ausgabe

EditorialNotes

In this issue