{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,3,3]],"date-time":"2026-03-03T01:29:45Z","timestamp":1772501385656,"version":"3.50.1"},"reference-count":107,"publisher":"Springer Science and Business Media LLC","issue":"6","license":[{"start":{"date-parts":[[2021,9,10]],"date-time":"2021-09-10T00:00:00Z","timestamp":1631232000000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0"},{"start":{"date-parts":[[2021,9,10]],"date-time":"2021-09-10T00:00:00Z","timestamp":1631232000000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0"}],"funder":[{"DOI":"10.13039\/501100003005","name":"Technische Universiteit Eindhoven","doi-asserted-by":"publisher","id":[{"id":"10.13039\/501100003005","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":["Empir Software Eng"],"published-print":{"date-parts":[[2021,11]]},"abstract":"<jats:title>Abstract<\/jats:title><jats:sec>\n                <jats:title>Context<\/jats:title>\n                <jats:p>Models, as the main artifact in model-driven engineering, have been extensively used in the area of embedded systems for code generation and verification. One of the most popular behavioral modeling techniques is the state machine. Many state machine modeling guidelines recommend that a state machine should have more than one state in order to be meaningful. However, single-state state machines (SSSMs) violating this recommendation have been used in modeling cases reported in the literature.<\/jats:p>\n              <\/jats:sec><jats:sec>\n                <jats:title>Objective<\/jats:title>\n                <jats:p>We aim for understanding the phenomenon of using SSSMs in practice as understanding why developers violate the modeling guidelines is the first step towards improvement of modeling tools and practice.<\/jats:p>\n              <\/jats:sec><jats:sec>\n                <jats:title>Method<\/jats:title>\n                <jats:p>To study the phenomenon, we conducted an exploratory study which consists of two complementary studies. The first study investigated the prevalence and role of SSSMs in the domain of embedded systems, as well as the reasons why developers use them and their perceived advantages and disadvantages. We employed the sequential explanatory strategy, including repository mining and interview, to study 1500 state machines from 26 components at ASML, a leading company in manufacturing lithography machines from the semiconductor industry. In the second study, we investigated the evolutionary aspects of SSSMs, exploring when SSSMs are introduced to the systems and how developers modify them by mining the largest state-machine-based component from the company.<\/jats:p>\n              <\/jats:sec><jats:sec>\n                <jats:title>Results<\/jats:title>\n                <jats:p>We observe that 25 out of 26 components contain SSSMs. Our interviews suggest that SSSMs are used to interface with the existing code, to deal with tool limitations, to facilitate maintenance and to ease verification. Our study on the evolutionary aspects of SSSMs reveals that the need for SSSMs to deal with tool limitations grew continuously over the years. Moreover, only a minority of SSSMs have been changed between SSSM and multiple-state state machine (MSSM) during their evolution. The most frequent modifications developers made to SSSMs is inserting events with constraints on the execution of the events.<\/jats:p>\n              <\/jats:sec><jats:sec>\n                <jats:title>Conclusions<\/jats:title>\n                <jats:p>Based on our results, we provide implications for developers and tool builders. Furthermore, we formulate hypotheses about the effectiveness of SSSMs, the impacts of SSSMs on development, maintenance and verification as well as the evolution of SSSMs.<\/jats:p>\n              <\/jats:sec>","DOI":"10.1007\/s10664-021-10015-3","type":"journal-article","created":{"date-parts":[[2021,9,10]],"date-time":"2021-09-10T16:02:59Z","timestamp":1631289779000},"update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":4,"title":["Single-state state machines in model-driven software engineering: an exploratory study"],"prefix":"10.1007","volume":"26","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-3071-0244","authenticated-orcid":false,"given":"Nan","family":"Yang","sequence":"first","affiliation":[]},{"given":"Pieter","family":"Cuijpers","sequence":"additional","affiliation":[]},{"given":"Ramon","family":"Schiffelers","sequence":"additional","affiliation":[]},{"given":"Johan","family":"Lukkien","sequence":"additional","affiliation":[]},{"given":"Alexander","family":"Serebrenik","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2021,9,10]]},"reference":[{"key":"10015_CR1","doi-asserted-by":"crossref","unstructured":"Ambler SW (2005) The elements of UML\u21222.0 style. Cambridge University Press, Cambridge","DOI":"10.1017\/CBO9780511817533"},{"issue":"12","key":"10015_CR2","doi-asserted-by":"publisher","first-page":"2265","DOI":"10.1016\/j.jss.2011.06.047","volume":"84","author":"A Ampatzoglou","year":"2011","unstructured":"Ampatzoglou A, Kritikos A, Kakarontzas G, Stamelos I (2011) An empirical investigation on the reusability of design patterns and software packages. J Syst Softw 84(12):2265\u20132283","journal-title":"J Syst Softw"},{"issue":"8","key":"10015_CR3","doi-asserted-by":"publisher","first-page":"781","DOI":"10.1109\/TSE.2015.2414917","volume":"41","author":"A Ampatzoglou","year":"2015","unstructured":"Ampatzoglou A, Chatzigeorgiou A, Charalampidou S, Avgeriou P (2015) The effect of gof design patterns on stability: a case study. IEEE Trans Softw Eng 41(8):781\u2013802","journal-title":"IEEE Trans Softw Eng"},{"key":"10015_CR4","doi-asserted-by":"crossref","unstructured":"Antoniol G, Fiutem R, Cristoforetti L (1998) Design pattern recovery in object-oriented software. In: Proceedings. 6th international workshop on program comprehension. IWPC\u201998 (Cat. No. 98TB100242). IEEE, pp 153\u2013160","DOI":"10.1109\/WPC.1998.693342"},{"key":"10015_CR5","unstructured":"Aslam K, Luo Y, Schiffelers RRH, van den Brand MG (2018) Interface protocol inference to aid understanding legacy software components. In: MODELS workshops, pp 6\u201311"},{"key":"10015_CR6","doi-asserted-by":"crossref","unstructured":"Babur \u00d6 (2018) Clone detection for ecore metamodels using n-grams. In: MODELSWARD, pp 411\u2013419","DOI":"10.5220\/0006604604110419"},{"issue":"3","key":"10015_CR7","doi-asserted-by":"publisher","first-page":"50","DOI":"10.1145\/3182657","volume":"51","author":"R Baldoni","year":"2018","unstructured":"Baldoni R, Coppa E, D\u2019elia DC, Demetrescu C, Finocchi I (2018) A survey of symbolic execution techniques. ACM Comput Surv (CSUR) 51 (3):50","journal-title":"ACM Comput Surv (CSUR)"},{"key":"10015_CR8","unstructured":"Beazley DM (1996) Swig: An easy to use tool for integrating scripting languages with c and c++. In: Tcl\/Tk workshop. pp 43"},{"key":"10015_CR9","unstructured":"Behrmann G, David A, Larsen KG, H\u00e5kansson J, Pettersson P, Yi W, Hendriks M (2006) Uppaal 4.0"},{"key":"10015_CR10","doi-asserted-by":"crossref","unstructured":"Bird C, Rigby PC, Barr ET, Hamilton DJ, German DM, Devanbu P (2009) The promises and perils of mining git. In: 2009 6th IEEE International working conference on mining software repositories, IEEE, pp 1\u201310","DOI":"10.1109\/MSR.2009.5069475"},{"key":"10015_CR11","doi-asserted-by":"crossref","unstructured":"Brito A, Xavier L, Hora A, Valente MT (2018) Apidiff: Detecting Api breaking changes. In: 2018 IEEE 25Th international conference on software analysis, evolution and reengineering (SANER). IEEE, pp 507-511","DOI":"10.1109\/SANER.2018.8330249"},{"issue":"1","key":"10015_CR12","doi-asserted-by":"publisher","first-page":"106","DOI":"10.1177\/1473325010370189","volume":"10","author":"E Buchbinder","year":"2011","unstructured":"Buchbinder E (2011) Beyond checking: Experiences of the validation interview. Qual Soc Work 10(1):106\u2013122","journal-title":"Qual Soc Work"},{"key":"10015_CR13","doi-asserted-by":"crossref","unstructured":"Businge J, Serebrenik A, van den Brand MG (2013) Analyzing the eclipse API usage: Putting the developer in the loop. In: 17th European conference on software maintenance and reengineering, CSMR 2013, Genova, Italy, March 5-8, 2013. IEEE Computer Society, pp 37\u201346","DOI":"10.1109\/CSMR.2013.14"},{"issue":"1","key":"10015_CR14","doi-asserted-by":"publisher","first-page":"107","DOI":"10.1007\/s11219-013-9221-3","volume":"23","author":"J Businge","year":"2015","unstructured":"Businge J, Serebrenik A, Van Den Brand MG (2015) Eclipse api usage: the good and the bad. Softw Qual J 23(1):107\u2013141","journal-title":"Softw Qual J"},{"key":"10015_CR15","doi-asserted-by":"publisher","first-page":"3","DOI":"10.1016\/j.jss.2013.12.038","volume":"91","author":"R Capilla","year":"2014","unstructured":"Capilla R, Bosch J, Trinidad P, Ruiz-Cort\u00e9s A, Hinchey M (2014) An overview of dynamic software product line architectures and techniques: Observations from research and industry. J Syst Softw 91:3\u201323","journal-title":"J Syst Softw"},{"issue":"4","key":"10015_CR16","doi-asserted-by":"publisher","first-page":"571","DOI":"10.1007\/s10270-012-0278-4","volume":"11","author":"MRV Chaudron","year":"2012","unstructured":"Chaudron MRV, Heijstek W, Nugroho A (2012) How effective is uml modeling? Softw Syst Model 11(4):571\u2013580","journal-title":"Softw Syst Model"},{"key":"10015_CR17","unstructured":"Chen YL, Lafortune S (1995) Modular supervisory control with priorities for discrete event systems. In: 34th Conference on decision and control. IEEE, pp 409\u2013415"},{"key":"10015_CR18","doi-asserted-by":"crossref","unstructured":"Clarke E, Grumberg O, Jha S, Lu Y, Veith H (2001) Progress on the state explosion problem in model checking. In: Informatics. Springer, pp 176\u2013194","DOI":"10.1007\/3-540-44577-3_12"},{"key":"10015_CR19","doi-asserted-by":"crossref","unstructured":"Corcoran D (2010) The good, the bad and the ugly: experiences with model driven development in large scale projects at ericsson. In: European conference on modelling foundations and applications. Springer, pp 2\u20132","DOI":"10.1007\/978-3-642-13595-8_2"},{"key":"10015_CR20","volume-title":"Systems analysis and design UML Version 2.0","author":"A Dennis","year":"2009","unstructured":"Dennis A, Wixom BH, Tegarden D (2009) Systems analysis and design UML Version 2.0. Wiley, Hoboken"},{"key":"#cr-split#-10015_CR21.1","doi-asserted-by":"crossref","unstructured":"de San Pedro J, Cortadella J (2016) Mining structured petri nets for the visualization of process behavior. In: Ossowski S","DOI":"10.1145\/2851613.2851645"},{"key":"#cr-split#-10015_CR21.2","unstructured":"(ed) Proceedings of the 31st annual ACM symposium on applied computing, Pisa, Italy, April 4-8, 2016. ACM, pp 839-846"},{"key":"10015_CR22","doi-asserted-by":"crossref","unstructured":"Dong J, Lad DS, Zhao Y (2007) Dp-miner: Design pattern discovery using matrix. In: 14th Annual IEEE international conference and workshops on the engineering of computer-based systems (ECBS\u201907), IEEE, pp 371\u2013380","DOI":"10.1109\/ECBS.2007.33"},{"key":"10015_CR23","doi-asserted-by":"crossref","unstructured":"Doornbos R, Hooman J, van Vlimmeren B (2012) Complementary verification of embedded software using asd and uppaal. In: 2012 International conference on innovations in information technology (IIT). IEEE, pp 60\u201365","DOI":"10.1109\/INNOVATIONS.2012.6207775"},{"key":"10015_CR24","doi-asserted-by":"crossref","unstructured":"Easterbrook S, Singer J, Storey MA, Damian D (2008) Selecting empirical methods for software engineering research. In: Guide to advanced empirical software engineering. Springer, pp 285\u2013311","DOI":"10.1007\/978-1-84800-044-5_11"},{"key":"10015_CR25","doi-asserted-by":"crossref","unstructured":"Etzlstorfer J, Kapsammer E, Schwinger W (2017) On the evolution of modeling ecosystems: An evaluation of co-evolution approaches. In: MODELSWARD. pp 90\u201399","DOI":"10.5220\/0006167900900099"},{"key":"10015_CR26","doi-asserted-by":"crossref","unstructured":"Farias K, Garcia A, Whittle J, Lucena C (2013) Analyzing the effort of composing design models of large-scale software in industrial case studies. In: International conference on model driven engineering languages and systems. Springer, pp 639\u2013655","DOI":"10.1007\/978-3-642-41533-3_39"},{"key":"10015_CR27","doi-asserted-by":"crossref","unstructured":"Favre JM (2005) Languages evolve too! changing the software time scale. In: Eighth international workshop on principles of software evolution (IWPSE\u201905), IEEE, pp 33\u201342","DOI":"10.1109\/IWPSE.2005.22"},{"key":"10015_CR28","unstructured":"Fdr homepage (2014) http:\/\/www.fsel.com"},{"issue":"1","key":"10015_CR29","doi-asserted-by":"publisher","first-page":"87","DOI":"10.2307\/2340521","volume":"85","author":"RA Fisher","year":"1922","unstructured":"Fisher RA (1922) On the interpretation of \u03c7 2 from contingency tables, and the calculation of p. J R Stat Soc 85(1):87\u201394","journal-title":"J R Stat Soc"},{"key":"10015_CR30","doi-asserted-by":"crossref","unstructured":"Gamma E, Helm R, Johnson R, Vlissides J (1993) Design patterns: Abstraction and reuse of object-oriented design. In: European conference on object-oriented programming. Springer, pp 406\u2013431","DOI":"10.1007\/3-540-47910-4_21"},{"key":"10015_CR31","doi-asserted-by":"crossref","unstructured":"Garcia J, Ivkovic I, Medvidovic N (2013) A comparative analysis of software architecture recovery techniques. In: Proceedings of the 28th IEEE\/ACM international conference on automated software engineering. IEEE Press, pp 486\u2013496","DOI":"10.1109\/ASE.2013.6693106"},{"key":"10015_CR32","doi-asserted-by":"crossref","unstructured":"Greifenberg T, H\u00f6lldobler K, Kolassa C, Look M, Nazari PMS, M\u00fcller K, Perez AN, Plotnikov D, Reiss D, Roth A et al (2015) Integration of handwritten and generated object-oriented code. In: International conference on model-driven engineering and software development. Springer, pp 112\u2013132","DOI":"10.1007\/978-3-319-27869-8_7"},{"key":"10015_CR33","unstructured":"Gruschko B, Kolovos D, Paige R (2007) Towards synchronizing models with evolving metamodels. In: Proceedings of the international workshop on model-driven software evolution, Amsterdam, The Netherlands, p 3"},{"key":"10015_CR34","doi-asserted-by":"publisher","unstructured":"Gupta M, Mandal A, Dasgupta G, Serebrenik A (2018) Runtime monitoring in continuous deployment by differencing execution behavior model. In: Pahl C, Vukovic M, Yin J, Yu Q (eds) Service-oriented computing - 16th international conference, ICSOC 2018, Hangzhou, China, November 12-15, 2018, Proceedings, Lecture Notes in Computer Science, vol 11236. Springer, pp 812\u2013827. https:\/\/doi.org\/10.1007\/978-3-030-03596-9\u2216_58","DOI":"10.1007\/978-3-030-03596-9\u2216_58"},{"key":"10015_CR35","doi-asserted-by":"crossref","unstructured":"He X, Avgeriou P, Liang P, Li Z (2016) Technical debt in mde: a case study on gmf\/emf-based projects. In: Proceedings of the ACM\/IEEE 19th international conference on model driven engineering languages and systems. pp 162\u2013172","DOI":"10.1145\/2976767.2976806"},{"issue":"5","key":"10015_CR36","doi-asserted-by":"publisher","first-page":"396","DOI":"10.1109\/TSE.2016.2610424","volume":"43","author":"R Hebig","year":"2016","unstructured":"Hebig R, Khelladi DE, Bendraou R (2016a) Approaches to co-evolution of metamodels and models: a survey. IEEE Trans Softw Eng 43(5):396\u2013414","journal-title":"IEEE Trans Softw Eng"},{"key":"10015_CR37","doi-asserted-by":"crossref","unstructured":"Hebig R, Quang TH, Chaudron MR, Robles G, Fernandez MA (2016b) The quest for open source projects that use uml: mining github. In: Proceedings of the ACM\/IEEE 19th international conference on model driven engineering languages and systems. pp 173\u2013183","DOI":"10.1145\/2976767.2976778"},{"key":"10015_CR38","doi-asserted-by":"crossref","unstructured":"Hutchinson J, Whittle J, Rouncefield M, Kristoffersen S (2011) Empirical assessment of mde in industry. In: Proceedings of the 33rd international conference on software engineering. ACM, pp 471\u2013480","DOI":"10.1145\/1985793.1985858"},{"key":"10015_CR39","doi-asserted-by":"publisher","first-page":"144","DOI":"10.1016\/j.scico.2013.03.017","volume":"89","author":"J Hutchinson","year":"2014","unstructured":"Hutchinson J, Whittle J, Rouncefield M (2014) Model-driven engineering practices in industry: social, organizational and managerial factors that lead to success or failure. Sci Comput Program 89:144\u2013161","journal-title":"Sci Comput Program"},{"key":"10015_CR40","doi-asserted-by":"crossref","unstructured":"Jolak R, Ho-Quang T, Chaudron MR, Schiffelers RRH (2018) Model-based software engineering: A multiple-case study on challenges and development efforts. In: Proceedings of the 21th ACM\/IEEE international conference on model driven engineering languages and systems. pp 213\u2013223","DOI":"10.1145\/3239372.3239404"},{"key":"10015_CR41","doi-asserted-by":"crossref","unstructured":"Jongeling R, Cicchetti A, Ciccozzi F, Carlson J (2020) Co-evolution of simulink models in a model-based product line. In: Proceedings of the 23rd ACM\/IEEE international conference on model driven engineering languages and systems. pp 263\u2013273","DOI":"10.1145\/3365438.3410989"},{"key":"10015_CR42","doi-asserted-by":"crossref","unstructured":"Khelladi DE, Combemale B, Acher M, Barais O (2020a) On the power of abstraction: a model-driven co-evolution approach of software code. In: Proceedings of the ACM\/IEEE 42nd International conference on software engineering: new ideas and emerging results. pp 85\u201388","DOI":"10.1145\/3377816.3381727"},{"key":"10015_CR43","doi-asserted-by":"crossref","unstructured":"Khelladi DE, Combemale B, Acher M, Barais O, J\u00e9z\u00e9quel JM (2020b) Co-evolving code with evolving metamodels. In: Proceedings of the ACM\/IEEE 42nd international conference on software engineering, pp 1496\u20131508","DOI":"10.1145\/3377811.3380324"},{"issue":"4","key":"10015_CR44","doi-asserted-by":"publisher","first-page":"187","DOI":"10.1049\/ip-sen:19990602","volume":"146","author":"YG Kim","year":"1999","unstructured":"Kim YG, Hong HS, Bae DH, Cha SD (1999) Test cases generation from uml state diagrams. IEE Proc-Softw 146(4):187\u2013192","journal-title":"IEE Proc-Softw"},{"key":"10015_CR45","doi-asserted-by":"crossref","unstructured":"Kronlid F (2006) Turn taking for artificial conversational agents. In: Klusch M, Rovatsos M, Payne T R (eds) Cooperative information agents x, 10th international workshop, lecture notes in computer science, vol 4149. Springer, pp 81\u201395","DOI":"10.1007\/11839354_7"},{"issue":"3","key":"10015_CR46","doi-asserted-by":"publisher","first-page":"230","DOI":"10.1016\/j.infsof.2006.10.017","volume":"49","author":"A Kuhn","year":"2007","unstructured":"Kuhn A, Ducasse S, G\u00edrba T (2007) Semantic clustering: Identifying topics in source code. Inf Softw Technol 49(3):230\u2013243","journal-title":"Inf Softw Technol"},{"key":"10015_CR47","doi-asserted-by":"publisher","first-page":"102","DOI":"10.1016\/j.is.2014.11.010","volume":"49","author":"M La Rosa","year":"2015","unstructured":"La Rosa M, Dumas M, Ekanayake CC, Garc\u00eda-Ba\u00f1uelos L, Recker J, ter Hofstede AH (2015) Detecting approximate clones in business process model repositories. Inf Syst 49:102\u2013125","journal-title":"Inf Syst"},{"key":"10015_CR48","doi-asserted-by":"crossref","unstructured":"Lange CF, Chaudron MR (2004) An empirical assessment of completeness in uml designs. In: Proceedings of the 8th International Conference on Empirical Assessment in Software Engineering (EASE \u201904), IET. pp 111\u2013121","DOI":"10.1049\/ic:20040404"},{"issue":"2","key":"10015_CR49","doi-asserted-by":"publisher","first-page":"40","DOI":"10.1109\/MS.2006.50","volume":"23","author":"CF Lange","year":"2006","unstructured":"Lange CF, Chaudron MR, Muskens J (2006a) In practice: Uml software architecture and design description. IEEE Softw 23(2):40\u201346","journal-title":"IEEE Softw"},{"key":"10015_CR50","doi-asserted-by":"crossref","unstructured":"Lange CF, DuBois B, Chaudron MR, Demeyer S (2006b) An experimental investigation of uml modeling conventions. In: International conference on model driven engineering languages and systems. Springer, pp 27\u201341","DOI":"10.1007\/11880240_3"},{"key":"10015_CR51","doi-asserted-by":"publisher","unstructured":"Lehman MM (1979) On understanding laws, evolution, and conservation in the large-program life cycle. https:\/\/doi.org\/10.1016\/0164-1212(79)90022-0, https:\/\/www.sciencedirect.com\/science\/article\/pii\/0164121279900220, vol 1, pp 213\u2013221","DOI":"10.1016\/0164-1212(79)90022-0"},{"key":"10015_CR52","doi-asserted-by":"crossref","unstructured":"Lemieux C, Park D, Beschastnikh I (2015) General ltl specification mining, IEEE","DOI":"10.1109\/ASE.2015.71"},{"key":"10015_CR53","doi-asserted-by":"crossref","unstructured":"Liebel G, Marko N, Tichy M, Leitner A, Hansson J (2014) Assessing the state-of-practice of model-based engineering in the embedded systems domain. In: International conference on model driven engineering languages and systems, Springer. pp 166\u2013182","DOI":"10.1007\/978-3-319-11653-2_11"},{"issue":"1","key":"10015_CR54","doi-asserted-by":"publisher","first-page":"91","DOI":"10.1007\/s10270-016-0523-3","volume":"17","author":"G Liebel","year":"2018","unstructured":"Liebel G, Marko N, Tichy M, Leitner A, Hansson J (2018) Model-based engineering in the embedded systems domain: an industrial survey on the state-of-practice. Softw Syst Model 17(1):91\u2013113","journal-title":"Softw Syst Model"},{"key":"10015_CR55","doi-asserted-by":"crossref","unstructured":"Lo D, Khoo SC, Han J, Liu C (2011) Mining software specifications: methodologies and applications. CRC Press, Boca Raton","DOI":"10.1201\/b10928"},{"key":"10015_CR56","doi-asserted-by":"crossref","unstructured":"MacDonald A, Russell D, Atchison B (2005) Model-driven development within a legacy system: an industry experience report. In: Australian software engineering conference. IEEE, pp 14\u201322","DOI":"10.1109\/ASWEC.2005.32"},{"key":"10015_CR57","unstructured":"Mengerink J, Schiffelers RR, Serebrenik A, van den Brand M (2016) Dsl\/model co-evolution in industrial emf-based mdse ecosystems. In: ME@ MODELS. pp 2\u20137"},{"key":"10015_CR58","unstructured":"Mengerink JG, van der Sanden B, Cappers BC, Serebrenik A, Schiffelers RR, van den Brand MG (2018) Exploring dsl evolutionary patterns in practice. In: Proceedings of the 6th international conference on model-driven engineering and software development, SCITEPRESS-Science and Technology Publications, Lda, pp 446\u2013453"},{"key":"10015_CR59","doi-asserted-by":"crossref","unstructured":"Mengerink JGM, Serebrenik A, Schiffelers RRH, van den Brand MGJ (2017) Automated analyses of model-driven artifacts: obtaining insights into industrial application of mde. In: Proceedings of the 27th international workshop on software measurement and 12th international conference on software process and product measurement. ACM, pp 116\u2013121","DOI":"10.1145\/3143434.3143442"},{"key":"10015_CR60","doi-asserted-by":"crossref","unstructured":"Mens T, Van Der Straeten R, Simmonds J (2005) A framework for managing consistency of evolving uml models. In: Software evolution with UML and XML, IGI Global. pp 1\u201330","DOI":"10.4018\/978-1-59140-462-0.ch001"},{"key":"10015_CR61","unstructured":"Mens T, Blanc X, Mens K (2007) Model-driven software evolution: an alternative research agenda. In: The 6th BElgian-NEtherlands software eVOLution workshop (BENEVOL 2007), pp 1\u20137"},{"key":"10015_CR62","doi-asserted-by":"crossref","unstructured":"Mohagheghi P, Dehlen V (2008) Where is the proof?-a review of experiences from applying mde in industry. In: European conference on model driven architecture-foundations and applications. Springer, pp 432\u2013443","DOI":"10.1007\/978-3-540-69100-6_31"},{"issue":"1","key":"10015_CR63","doi-asserted-by":"publisher","first-page":"89","DOI":"10.1007\/s10664-012-9196-x","volume":"18","author":"P Mohagheghi","year":"2013","unstructured":"Mohagheghi P, Gilani W, Stefanescu A, Fernandez MA (2013) An empirical study of the state of the practice and acceptance of model-driven engineering in four industrial cases. Empir Softw Eng 18(1):89\u2013116","journal-title":"Empir Softw Eng"},{"key":"10015_CR64","doi-asserted-by":"crossref","unstructured":"Mostafa S, Rodriguez R, Wang X (2017) Experience paper: a study on behavioral backward incompatibilities of java software libraries. In: Proceedings of the 26th ACM SIGSOFT international symposium on software testing and analysis. pp 215\u2013225","DOI":"10.1145\/3092703.3092721"},{"key":"10015_CR65","doi-asserted-by":"crossref","unstructured":"Nurwidyantoro A, Ho-Quang T, Chaudron MRV (2019) Automated classification of class role-stereotypes via machine learning. In: Proceedings of the evaluation and assessment on software engineering. ACM, pp 79\u201388","DOI":"10.1145\/3319008.3319016"},{"key":"10015_CR66","doi-asserted-by":"crossref","unstructured":"Osman MH, Ho-Quang T, Chaudron M (2018) An automated approach for classifying reverse-engineered and forward-engineered uml class diagrams. In: 2018 44Th euromicro conference on software engineering and advanced applications (SEAA). IEEE, pp 396\u2013399","DOI":"10.1109\/SEAA.2018.00070"},{"key":"10015_CR67","doi-asserted-by":"publisher","unstructured":"Palomba F, Tamburri DA, Arcelli Fontana F, Oliveto R, Zaidman A, Serebrenik A (2018) Beyond technical aspects: How do community smells influence the intensity of code smells?. IEEE Trans Softw Eng :1\u20131. https:\/\/doi.org\/10.1109\/TSE.2018.2883603","DOI":"10.1109\/TSE.2018.2883603"},{"issue":"1","key":"10015_CR68","doi-asserted-by":"publisher","first-page":"29","DOI":"10.1109\/TSE.2004.1265734","volume":"30","author":"A Petrenko","year":"2004","unstructured":"Petrenko A, Boroday S, Groz R (2004) Confirming configurations in efsm testing. IEEE Trans Softw Eng 30(1):29\u201342","journal-title":"IEEE Trans Softw Eng"},{"key":"10015_CR69","doi-asserted-by":"crossref","unstructured":"Piantadosi V, Fierro F, Scalabrino S, Serebrenik A, Oliveto R (2020) How does code readability change during software evolution?. Empir Softw Eng :1\u201339","DOI":"10.1007\/s10664-020-09886-9"},{"key":"10015_CR70","doi-asserted-by":"crossref","unstructured":"Pourali P, Atlee JM (2018) An empirical investigation to understand the difficulties and challenges of software modellers when using modelling tools. In: Proceedings of the 21th ACM\/IEEE international conference on model driven engineering languages and systems. ACM, pp 224\u2013234","DOI":"10.1145\/3239372.3239400"},{"key":"10015_CR71","unstructured":"Prochnow S (2008) Efficient development of complex statecharts. PhD thesis, Christian-Albrechts Universit\u00e4t Kiel"},{"key":"10015_CR72","doi-asserted-by":"crossref","unstructured":"Raghuraman A, Ho-Quang T, Chaudron MR, Serebrenik A, Vasilescu B (2019a) Does uml modeling associate with lower defect proneness?: a preliminary empirical investigation, IEEE","DOI":"10.1109\/MSR.2019.00024"},{"key":"10015_CR73","doi-asserted-by":"publisher","unstructured":"Raghuraman A, Ho-Quang T, Chaudron MRV, Serebrenik A, Vasilescu B (2019b) Does UML modeling associate with lower defect proneness?: a preliminary empirical investigation. In: Storey M D, Adams B, Haiduc S (eds) Proceedings of the 16th international conference on mining software repositories, MSR 2019, 26-27 May 2019, Montreal, Canada. IEEE \/ ACM, pp 101\u2013104. https:\/\/doi.org\/10.1109\/MSR.2019.00024","DOI":"10.1109\/MSR.2019.00024"},{"key":"10015_CR74","doi-asserted-by":"crossref","unstructured":"Rahad K, Badreddin O, Mohsin Reza S (2021) The human in model-driven engineering loop: a case study on integrating handwritten code in model-driven engineering repositories. Softw Pract Exper","DOI":"10.1002\/spe.2957"},{"key":"10015_CR75","doi-asserted-by":"crossref","unstructured":"Robles G, Ho-Quang T, Hebig R, Chaudron MR, Fernandez MA (2017) An extensive dataset of uml models in github. In: 2017 IEEE\/ACM 14Th international conference on mining software repositories (MSR). IEEE, pp 519\u2013522","DOI":"10.1109\/MSR.2017.48"},{"issue":"2","key":"10015_CR76","doi-asserted-by":"publisher","first-page":"131","DOI":"10.1007\/s10664-008-9102-8","volume":"14","author":"P Runeson","year":"2009","unstructured":"Runeson P, H\u00f6st M (2009) Guidelines for conducting and reporting case study research in software engineering. Empirical Softw Eng 14(2):131","journal-title":"Empirical Softw Eng"},{"key":"10015_CR77","unstructured":"Schaefer G (2006) Statechart style checking\u2013automated semantic robustness analysis of statecharts. PhD thesis, Diploma thesis, Christian-Albrechts-Universit\u00e4t zu Kiel, Institut f\u00fcr Informatik"},{"key":"10015_CR78","unstructured":"Sprinkle J, Gray J, Mernik M (2009) Fundamental limitations in domain-specific modeling language evolution. Tech. rep., Technical report, Technical Report# Tr-0908311, University of Arizona"},{"key":"10015_CR79","doi-asserted-by":"crossref","unstructured":"Staron M (2006) Adopting model driven software development in industry\u2013a case study at two companies. In: International conference on model driven engineering languages and systems. Springer, pp 57\u201372","DOI":"10.1007\/11880240_5"},{"key":"10015_CR80","unstructured":"Steinberg D, Budinsky F, Merks E, Paternostro M (2008) EMF: eclipse modeling framework. Pearson Education, London"},{"key":"10015_CR81","doi-asserted-by":"crossref","unstructured":"Stephan M, Cordy JR (2015) Identifying instances of model design patterns and antipatterns using model clone detection. In: 2015 IEEE\/ACM 7th International workshop on modeling in software engineering. IEEE, pp 48\u201353","DOI":"10.1109\/MiSE.2015.16"},{"key":"10015_CR82","doi-asserted-by":"crossref","unstructured":"Stephan M, Rapos EJ (2019) Model clone detection and its role in emergent model pattern mining. Model Management and Analytics for Large Scale Systems, p 37","DOI":"10.1016\/B978-0-12-816649-9.00011-9"},{"key":"10015_CR83","doi-asserted-by":"crossref","unstructured":"Stol KJ, Ralph P, Fitzgerald B (2016) Grounded theory in software engineering research: a critical review and guidelines. In: 2016 IEEE\/ACM 38th international conference on software engineering (ICSE). IEEE, pp 120\u2013131","DOI":"10.1145\/2884781.2884833"},{"key":"10015_CR84","unstructured":"syntok (2014). https:\/\/github.com\/fnl\/syntok"},{"issue":"1","key":"10015_CR85","doi-asserted-by":"publisher","first-page":"182","DOI":"10.1007\/s10664-012-9219-7","volume":"19","author":"SW Thomas","year":"2014","unstructured":"Thomas SW, Hemmati H, Hassan AE, Blostein D (2014) Static test case prioritization using topic models. Empir Softw Eng 19(1):182\u2013212. https:\/\/doi.org\/10.1007\/s10664-012-9219-7","journal-title":"Empir Softw Eng"},{"key":"10015_CR86","doi-asserted-by":"crossref","unstructured":"Tolvanen JP, Kelly S (2010) Integrating models with domain-specific modeling languages. In: Proceedings of the 10th workshop on domain-specific modeling. ACM, p 10","DOI":"10.1145\/2060329.2060354"},{"key":"10015_CR87","unstructured":"Tookkit NL (2014). https:\/\/www.nltk.org\/"},{"key":"10015_CR88","doi-asserted-by":"crossref","unstructured":"Torres W, van den Brand MG, Serebrenik A (2019) Model management tools for models of different domains: a systematic literature review. In: 2019 IEEE International systems conference (SysCon). IEEE, pp 1\u20138","DOI":"10.1109\/SYSCON.2019.8836869"},{"key":"10015_CR89","doi-asserted-by":"crossref","unstructured":"Tufano M, Palomba F, Bavota G, Oliveto R, Di Penta M, De Lucia A, Poshyvanyk D (2015) When and why your code starts to smell bad. In: Proceedings of the 37th International conference on software engineering-volume 1. IEEE Press, pp 403\u2013414","DOI":"10.1109\/ICSE.2015.59"},{"issue":"11","key":"10015_CR90","doi-asserted-by":"publisher","first-page":"1063","DOI":"10.1109\/TSE.2017.2653105","volume":"43","author":"M Tufano","year":"2017","unstructured":"Tufano M, Palomba F, Bavota G, Oliveto R, Penta MD, Lucia AD, Poshyvanyk D (2017) When and why your code starts to smell bad (and whether the smells go away). IEEE Trans Software Eng 43(11):1063\u20131088. https:\/\/doi.org\/10.1109\/TSE.2017.2653105","journal-title":"IEEE Trans Software Eng"},{"issue":"6","key":"10015_CR91","doi-asserted-by":"publisher","first-page":"26","DOI":"10.1145\/352029.352035","volume":"35","author":"A van Deursen","year":"2000","unstructured":"van Deursen A, Klint P, Visser J (2000) Domain-specific languages: an annotated bibliography. ACM Sigplan Notices 35(6):26\u201336","journal-title":"ACM Sigplan Notices"},{"key":"10015_CR92","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-19345-3","volume-title":"Process mining: discovery, conformance and enhancement of business processes, vol 2","author":"WM van der Aalst","year":"2011","unstructured":"van der Aalst WM (2011) Process mining: discovery, conformance and enhancement of business processes, vol 2. Springer, Berlin"},{"key":"10015_CR93","doi-asserted-by":"crossref","unstructured":"Van Der Straeten R, Mens T, Van Baelen S (2008) Challenges in model-driven software engineering. In: International conference on model driven engineering languages and systems. Springer, pp 35\u201347","DOI":"10.1007\/978-3-642-01648-6_4"},{"issue":"3-4","key":"10015_CR94","doi-asserted-by":"publisher","first-page":"387","DOI":"10.3233\/FI-2009-136","volume":"94","author":"JMEM van der Werf","year":"2009","unstructured":"van der Werf JMEM, van Dongen BF, Hurkens CAJ, Serebrenik A (2009) Process discovery using integer linear programming. Fundam Inform 94 (3-4):387\u2013412. https:\/\/doi.org\/10.3233\/FI-2009-136","journal-title":"Fundam Inform"},{"key":"10015_CR95","unstructured":"Verum (2014) http:\/\/www.verum.com"},{"issue":"3","key":"10015_CR96","doi-asserted-by":"publisher","first-page":"79","DOI":"10.1109\/MS.2013.65","volume":"31","author":"J Whittle","year":"2013","unstructured":"Whittle J, Hutchinson J, Rouncefield M (2013a) The state of practice in model-driven engineering. IEEE Softw 31(3):79\u201385","journal-title":"IEEE Softw"},{"key":"10015_CR97","doi-asserted-by":"crossref","unstructured":"Whittle J, Hutchinson J, Rouncefield M, Burden H, Heldal R (2013b) Industrial adoption of model-driven engineering: Are the tools really the problem?. In: International conference on model driven engineering languages and systems. Springer, pp 1\u201317","DOI":"10.1007\/978-3-642-41533-3_1"},{"issue":"3","key":"10015_CR98","doi-asserted-by":"publisher","first-page":"79","DOI":"10.1109\/MS.2013.65","volume":"31","author":"J Whittle","year":"2014","unstructured":"Whittle J, Hutchinson JE, Rouncefield M (2014) The state of practice in model-driven engineering. IEEE Softw 31(3):79\u201385","journal-title":"IEEE Softw"},{"key":"10015_CR99","doi-asserted-by":"crossref","unstructured":"Wieman R, Aniche MF, Lobbezoo W, Verwer S, van Deursen A (2017) An experience report on applying passive learning in a large-scale payment company, IEEE, ICSME","DOI":"10.1109\/ICSME.2017.71"},{"key":"10015_CR100","doi-asserted-by":"crossref","unstructured":"Wiese A, Ho V, Hill E (2011) A comparison of stemmers on source code identifiers for software search. In: 2011 27Th IEEE international conference on software maintenance (ICSM). IEEE, pp 496\u2013499","DOI":"10.1109\/ICSM.2011.6080817"},{"key":"10015_CR101","unstructured":"Wittgenstein L (2009) Philosophical investigations. Wiley, Hoboken"},{"key":"10015_CR102","doi-asserted-by":"crossref","unstructured":"Xing J, Theelen BD, Langerak R, van de Pol J, Tretmans J, Voeten JP (2010) From poosl to uppaal: Transformation and quantitative analysis. In: 2010 10th International conference on application of concurrency to system design. IEEE, pp 47\u201356","DOI":"10.1109\/ACSD.2010.21"},{"key":"10015_CR103","doi-asserted-by":"crossref","unstructured":"Yang N, Aslam K, Schiffelers R, Lensink L, Hendriks D, Cleophas L, Serebrenik A (2019) Improving model inference in industry by combining active and passive learning, IEEE","DOI":"10.1109\/SANER.2019.8668007"},{"key":"10015_CR104","doi-asserted-by":"crossref","unstructured":"Yang N, Cuijpers P, Schiffelers R, Lukkien J, Serebrenik A (2020) Painting flowers: Reasons for using single-state state machines in model-driven engineering. In: 17th International conference on mining software repositories","DOI":"10.1145\/3379597.3387452"},{"key":"10015_CR105","unstructured":"Yin RK (1994) Case study research: Design and methods, applied social research. Methods Ser 5"},{"issue":"5","key":"10015_CR106","doi-asserted-by":"publisher","first-page":"1213","DOI":"10.1109\/TSE.2011.79","volume":"38","author":"C Zhang","year":"2011","unstructured":"Zhang C, Budgen D (2011) What do we know about the effectiveness of software design patterns? IEEE Trans Softw Eng 38(5):1213\u20131231","journal-title":"IEEE Trans Softw Eng"}],"container-title":["Empirical Software Engineering"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/s10664-021-10015-3.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/article\/10.1007\/s10664-021-10015-3\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/s10664-021-10015-3.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2021,10,28]],"date-time":"2021-10-28T04:19:08Z","timestamp":1635394748000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/s10664-021-10015-3"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2021,9,10]]},"references-count":107,"journal-issue":{"issue":"6","published-print":{"date-parts":[[2021,11]]}},"alternative-id":["10015"],"URL":"https:\/\/doi.org\/10.1007\/s10664-021-10015-3","relation":{},"ISSN":["1382-3256","1573-7616"],"issn-type":[{"value":"1382-3256","type":"print"},{"value":"1573-7616","type":"electronic"}],"subject":[],"published":{"date-parts":[[2021,9,10]]},"assertion":[{"value":"1 July 2021","order":1,"name":"accepted","label":"Accepted","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"10 September 2021","order":2,"name":"first_online","label":"First Online","group":{"name":"ArticleHistory","label":"Article History"}}],"article-number":"124"}}