A Formal Approach to Checking Consistency in Software Refactoring

被引:4
作者
Hong Anh Le [1 ]
Thi-Huong Dao [2 ]
Ninh-Thuan Truong [2 ]
机构
[1] Hanoi Univ Min & Geol, Hanoi, Vietnam
[2] Univ Engn & Technol, VNU, Hanoi, Vietnam
关键词
Refactoring; Design patterns; Consistency; Formal approach;
D O I
10.1007/s11036-017-0807-z
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
In software development, refactoring is a process that improves the system internal structure without altering its external behavior. Applying design patterns, which are common reusable solutions of several kinds of problems is widely adopted. This technique, however, raises a challenging issue that after applying design patterns the software system may not preserve some certain behavioral properties. This paper proposes a new approach to checking consistency between original software system and its evolution at both design and implementation phases. First, we formalize elements of software designs and programs. Methods, based on these formalizations, are proposed for verifying the design and implementation of the system. Finally, the paper presents a case study of Adaptive Road Traffic Control system to illustrate the proposed approach in detail.
引用
收藏
页码:356 / 366
页数:11
相关论文
共 50 条
[41]   Verifying Parallel Code After Refactoring Using Equivalence Checking [J].
Abadi, Moria ;
Keidar-Barner, Sharon ;
Pidan, Dmitry ;
Veksler, Tatyana .
INTERNATIONAL JOURNAL OF PARALLEL PROGRAMMING, 2019, 47 (01) :59-73
[42]   Refactoring Impact Formal Representation on the Internal Program Structure [J].
Chisalita-Cretu, Camelia .
PROCEEDINGS OF THE 6TH INTERNATIONAL CONFERENCE ON VIRTUAL LEARNING, ICVL 2011, 2011, :500-507
[43]   Verifying Parallel Code After Refactoring Using Equivalence Checking [J].
Moria Abadi ;
Sharon Keidar-Barner ;
Dmitry Pidan ;
Tatyana Veksler .
International Journal of Parallel Programming, 2019, 47 :59-73
[44]   Efficient Singleton Consistency by Combining Forward Checking and Bound Consistency [J].
Guo, Jinsong ;
Li, Hongbo ;
Li, Zhanshan ;
Zhang, Yonggang ;
Jia, Xianghua .
INTERNATIONAL JOURNAL ON ARTIFICIAL INTELLIGENCE TOOLS, 2014, 23 (04)
[45]   Efficient Singleton Consistency by Combining Forward Checking and Bound Consistency [J].
Guo, Jinsong ;
Li, Zhanshan ;
Zhang, Yonggang .
2012 IEEE 24TH INTERNATIONAL CONFERENCE ON TOOLS WITH ARTIFICIAL INTELLIGENCE (ICTAI 2012), VOL 1, 2012, :223-229
[46]   On the use of many quality attributes for software refactoring: a many-objective search-based software engineering approach [J].
Mohamed Wiem Mkaouer ;
Marouane Kessentini ;
Slim Bechikh ;
Mel Ó Cinnéide ;
Kalyanmoy Deb .
Empirical Software Engineering, 2016, 21 :2503-2545
[47]   On the use of many quality attributes for software refactoring: a many-objective search-based software engineering approach [J].
Mkaouer, Mohamed Wiem ;
Kessentini, Marouane ;
Bechikh, Slim ;
Cinneide, Mel O. ;
Deb, Kalyanmoy .
EMPIRICAL SOFTWARE ENGINEERING, 2016, 21 (06) :2503-2545
[48]   Consistency Checking of UML Business Model [J].
Vasilecas, Olegas ;
Dubauskaite, Ruta ;
Rupnik, Rok .
TECHNOLOGICAL AND ECONOMIC DEVELOPMENT OF ECONOMY, 2011, 17 (01) :133-150
[49]   Refinement via Consistency Checking in MDA [J].
Paige, Richard F. ;
Kolovos, Dimitrios S. ;
Polack, Fiona A. C. .
ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2005, 137 (02) :151-161
[50]   Model checking dynamic UML consistency [J].
Department of Informatics, School of Math., Peking University, Beijing, China ;
不详 .
Lect. Notes Comput. Sci., 2006, (440-459) :440-459