Painting Flowers: Reasons for Using Single-State State Machines in Model-Driven Engineering

Research output: Chapter in Book/Report/Conference proceedingConference contributionAcademicpeer-review

Abstract

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 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. We study 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 employ the sequential explanatory strategy to study 1500 state machines from 26 components at ASML, a leading company in manufacturing lithography machines from the semiconductor industry. We observe that 25 out of 26 components contain SSSMs, making up 25.3% of the model base. To understand the reasons for this extensive usage we conduct a series of interviews followed by a grounded theory building. The results suggest that SSSMs are used to interface with the existing code, to deal with tool limitations, to facilitate maintenance and to ease verification. Based on our results, we provide implications to modeling tool builders. Furthermore, we formulate two hypotheses about the effectiveness of SSSMs as well as the impacts of SSSMs on development, maintenance and verification.

Original languageEnglish
Title of host publicationProceedings - 2020 IEEE/ACM 17th International Conference on Mining Software Repositories, MSR 2020
PublisherAssociation for Computing Machinery, Inc
Pages362-373
Number of pages12
ISBN (Electronic)9781450379571
DOIs
Publication statusPublished - 29 Jun 2020
Event17th IEEE/ACM International Conference on Mining Software Repositories, MSR 2020, co-located with the 42nd International Conference on Software Engineering. ICSE 2020 - Virtual, Online, Korea, Republic of
Duration: 29 Jun 202030 Jun 2020

Conference

Conference17th IEEE/ACM International Conference on Mining Software Repositories, MSR 2020, co-located with the 42nd International Conference on Software Engineering. ICSE 2020
CountryKorea, Republic of
CityVirtual, Online
Period29/06/2030/06/20

Keywords

  • Model-driven engineering
  • single-state state machines

Fingerprint Dive into the research topics of 'Painting Flowers: Reasons for Using Single-State State Machines in Model-Driven Engineering'. Together they form a unique fingerprint.

Cite this