arrow
返回

Single-state state machines in model-driven software engineering: an exploratory study

delete2021-09-10
delete2
delete
OA
AI
N
Nan Yang *
P
Pjl Pieter Cuijpers
R
R.R.H. Schiffelers
J
Johan J. Lukkien
A
Alexander Serebrenik
DOI:10.1007/s10664-021-10015-3delete
delete原文链接
delete原文求助
delete分享
delete收藏
摘要

摘要

En 中文
Context 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. Objective 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. Method 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. Results 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. Conclusions 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.
Keyword:
Model-driven engineering
Single-state state machines
modeling practice

期刊

Empirical Software Engineering 封面图
Empirical Software Engineering
IF:
3.6
论文数:
2.0K
被引数:
5.3K

机构

E
Eindhoven University of Technology
学者数:
1.6W
论文数: 1.5W
被引数: 2.2W
引用论文

引用论文

The State of Practice in Model-Driven Engineering
err2014-05-01
err259
errOAAI
errWhittle, Jon; Hutchinson, John; Rouncefield, Mark
err分享
err收藏
err分享
err收藏
Enhancement of Periosteal Chondrogenesis In Vitro Dose-Response for Transforming Growth Factor-Beta 1 (TGF-??1)
err1994-04-01
err0
PREAI
errYASUSHI MIURA; JAMES S. FITZSIMMONS; CINZIA N. COMMISSO; STEPHEN H. GALLAY; SHAWN W. O'DRISCOLL
err分享
err收藏
An empirical investigation on the reusability of design patterns and software packages
err2011-12-01
err18
PREAI
errAmpatzoglou, Apostolos; Kritikos, Apostolos; Kakarontzas, George; Stamelos, Ioannis
err分享
err收藏
The increasing incidence of adolescent bariatric surgery
err2013-12-01
err0
PREAI
errNathan P. Zwintscher; Kenneth S. Azarow; John D. Horton; Christopher R. Newton; Matthew J. Martin
err分享
err收藏
The laser-Raman spectra of some nylons
err1970-01-01
err0
PREAI
errP. J. Hendra; D. S. Watson; M. E. A. Cudby; H. A. Willis; P. Holliday
err分享
err收藏
err分享
err收藏
学者 查看更多内容