A method for testing and validating executable statechart models

被引:11
|
作者
Mens, Tom [1 ]
Decan, Alexandre [1 ]
Spanoudakis, Nikolaos I. [2 ]
机构
[1] Univ Mons, Fac Sci, Software Engn Lab, B-7000 Mons, Belgium
[2] Tech Univ Crete, Sch Prod Engn & Management, Appl Math & Comp Lab, Khania 73100, Greece
来源
SOFTWARE AND SYSTEMS MODELING | 2019年 / 18卷 / 02期
关键词
Statechart; Executable modeling; Behaviour-driven development; Design by contract; Runtime verification; SYSTEM; UML;
D O I
10.1007/s10270-018-0676-3
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Statecharts constitute an executable language for modelling event-based reactive systems. The essential complexity of statechart models solicits the need for advanced model testing and validation techniques. In this article, we propose a method aimed at enhancing statechart design with a range of techniques that have proven their usefulness to increase the quality and reliability of source code. The method is accompanied by a process that flexibly accommodates testing and validation techniques such as test-driven development, behaviour-driven development, design by contract, and property statecharts that check for violations of behavioural properties during statechart execution. The method is supported by the Sismic tool, an open-source statechart interpreter library in Python, which supports all the aforementioned techniques. Based on this tooling, we carry out a controlled user study to evaluate the feasibility, usefulness and adequacy of the proposed techniques for statechart testing and validation.
引用
收藏
页码:837 / 863
页数:27
相关论文
共 50 条
  • [41] Fault injection - An effective method for validating and testing computer system dependability
    Hong, BR
    Chen, SJ
    Song, YJ
    Jin, X
    Wang, YF
    ISTM/99: 3RD INTERNATIONAL SYMPOSIUM ON TEST AND MEASUREMENT, 1999, : 381 - 385
  • [42] Testing Flight Systems with Machine Executable Scripts
    Gibbs, Don
    Bone, Brian
    2009 IEEE AEROSPACE CONFERENCE, VOLS 1-7, 2009, : 3908 - 3914
  • [43] A New approach to Detect Safety Violations in UML Statechart Models
    Prashanth, C. M.
    Shet, K. Chandrashekar
    INTERNATIONAL JOURNAL OF COMPUTER SCIENCE AND NETWORK SECURITY, 2008, 8 (07): : 167 - 174
  • [44] Improving statechart testing criteria using data flow information
    Briand, L. C.
    Labiche, Y.
    Lin, Q.
    16TH IEEE INTERNATIONAL SYMPOSIUM ON SOFTWARE RELIABILITY ENGINEERING, PROCEEDINGS, 2005, : 95 - 104
  • [45] Sismic-A Python']Python library for statechart execution and testing
    Decan, Alexandre
    Mens, Tom
    SOFTWAREX, 2020, 12
  • [46] Using search-based techniques for testing executable software models specified through graph transformations
    Anvar Bahrampour
    Vahid Rafe
    International Journal of Machine Learning and Cybernetics, 2020, 11 : 2743 - 2770
  • [47] Using search-based techniques for testing executable software models specified through graph transformations
    Bahrampour, Anvar
    Rafe, Vahid
    INTERNATIONAL JOURNAL OF MACHINE LEARNING AND CYBERNETICS, 2020, 11 (12) : 2743 - 2770
  • [48] Validating prediction models
    Steyerberg, Ewout W.
    Lingsma, Hester F.
    BRITISH MEDICAL JOURNAL, 2008, 336 (7648): : 789 - 789
  • [49] Validating BitTorrent models
    David Erman
    Daniel Saavedra
    José Á. Sánchez González
    Adrian Popescu
    Telecommunication Systems, 2008, 39 : 103 - 116
  • [50] Validating Animal Models
    Atanasova, Nina A.
    THEORIA-REVISTA DE TEORIA HISTORIA Y FUNDAMENTOS DE LA CIENCIA, 2015, 30 (02): : 163 - 181