Refactoring of Statecharts

被引:0
|
作者
Abadi, Moria [1 ]
Feldman, Yishai A. [2 ]
机构
[1] Tel Aviv Univ, Tel Aviv, Israel
[2] IBM Haifa Res Lab, Haifa, Israel
关键词
D O I
暂无
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Statecharts are an important tool for specifying the behavior of reactive systems, and development tools can automatically generate object-oriented code from them. As the system is refactored, it is necessary to modify the associated statecharts as well, performing operations such as grouping or ungrouping states, extracting part of a statechart into a separate class, and merging states and transitions. Refactoring tools embedded in object-oriented development environments are making it much easier for developers to modify their programs. However, tool support for refactoring statecharts does not yet exist. As a result, developers avoid making certain changes that are too difficult to perform manually, even though design quality deteriorates. Methodologically, statecharts were meant to enable a systems engineer to describe a complete system, which would then be refined into a concrete implementation (object-oriented or other). This process is not supported by object-oriented development environments, which force each statechart to be specified as part of a class. Automated tool support for refactoring statecharts will also make this kind of refinement possible. This paper describes a case study that shows the usefulness of refactoring support for statecharts, and presents an initial catalog of relevant refactorings. We show that a top-down refinement process helps identify the tasks and classes in a natural way.
引用
收藏
页码:50 / +
页数:3
相关论文
共 50 条
  • [31] Statecharts for Gene Network Modeling
    Shin, Yong-Jun
    Nourani, Mehrdad
    [J]. PLOS ONE, 2010, 5 (02):
  • [32] Flattening statecharts without explosions
    Wasowski, A
    [J]. ACM SIGPLAN NOTICES, 2004, 39 (07) : 257 - 266
  • [33] Statecharts, transition structures and transformations
    Peron, A
    [J]. TAPSOFT '95: THEORY AND PRACTICE OF SOFTWARE DEVELOPMENT, 1995, 915 : 454 - 468
  • [34] Specialization and Validation of Statecharts in OWL
    Groener, Gerd
    Staab, Steffen
    [J]. KNOWLEDGE ENGINEERING AND MANAGEMENT BY THE MASSES, EKAW 2010, 2010, 6317 : 360 - 370
  • [35] Statecharts via process algebra
    Lüttgen, G
    von der Beeck, M
    Cleaveland, R
    [J]. CONCUR '99: CONCURRENCY THEORY, 1999, 1664 : 399 - 414
  • [36] Fusing Statecharts and Java']Java
    Marinescu, Maria-Cristina
    Sanchez, Cesar
    [J]. ACM TRANSACTIONS ON EMBEDDED COMPUTING SYSTEMS, 2013, 12
  • [37] WHAT IS IN A STEP - ON THE SEMANTICS OF STATECHARTS
    PNUELI, A
    SHALEV, M
    [J]. LECTURE NOTES IN COMPUTER SCIENCE, 1991, 526 : 244 - 264
  • [38] Recommending Model Refactoring Rules from Refactoring Examples
    Mokaddem, Chihab Eddine
    Sahraoui, Houari
    Syriani, Eugene
    [J]. 21ST ACM/IEEE INTERNATIONAL CONFERENCE ON MODEL DRIVEN ENGINEERING LANGUAGES AND SYSTEMS (MODELS 2018), 2018, : 257 - 267
  • [39] Verify UML Statecharts with SMV
    Chen Hai yan 1
    2 State Key Laboratory for Software Engineering
    [J]. Wuhan University Journal of Natural Sciences, 2001, (Z1) : 183 - 190
  • [40] Reachability Verification of Rhapsody Statecharts
    Madhukar, Kumar
    Metta, Ravindra
    Singh, Priyanka
    Venkatesh, R.
    [J]. IEEE SIXTH INTERNATIONAL CONFERENCE ON SOFTWARE TESTING, VERIFICATION AND VALIDATION WORKSHOPS (ICSTW 2013), 2013, : 96 - 101