Specifying with Interface and Trait Abstractions in Abstract State Machines: A Controlled Experiment

Publication
ACM Transactions on Software Engineering and Methodology (TOSEM)

Abstract

Abstract State Machine (ASM) theory is a well-known state-based formal method. As in other state-based formal methods, the proposed specification languages for ASMs still lack easy-to-comprehend abstractions to express structural and behavioral aspects of specifications. Our goal is to investigate object-oriented abstractions such as interfaces and traits for ASM-based specification languages. We report on a controlled experiment with 98 participants to study the specification efficiency and effectiveness in which participants needed to comprehend an informal specification as problem (stimulus) in form of a textual description and express a corresponding solution in form of a textual ASM specification using either interface or trait syntax extensions. The study was carried out with a completely randomized design and one alternative (interface or trait) per experimental group. The results indicate that specification effectiveness of the traits experiment group shows a better performance compared to the interfaces experiment group, but specification efficiency shows no statistically significant differences. To the best of our knowledge, this is the first empirical study studying the specification effectiveness and efficiency of object-oriented abstractions in the context of formal methods.

Document

Reference

% BibTex
@article{paulweber2021tosem,
  title        = {{Specifying with Interface and Trait Abstractions in Abstract State Machines: A Controlled Experiment}},
  author       = {Philipp Paulweber and Georg Simhandl and Uwe Zdun},
  journal      = {Transactions on Software Engineering and Methodology},
  volume       = {30},
  issue        = {4 (47)},
  pages        = {1--29},
  year         = {2021},
  month        = {July},
  doi          = {https://doi.org/10.1145/3450968},
  publisher    = {ACM},
  address      = {TOSEM},
  issn         = {1049-331X}
}

Related