Reengineering using design patterns

被引:4
作者
Cagnin, MI [1 ]
Penteado, R [1 ]
Braga, RTV [1 ]
Masiero, PC [1 ]
机构
[1] Univ Sao Paulo, ICMC, Sao Carlos, SP, Brazil
来源
SEVENTH WORKING CONFERENCE ON REVERSE ENGINEERING - PROCEEDINGS | 2000年
关键词
reengineering; object-oriented development; design patterns; persistent objects; persistence layer;
D O I
10.1109/WCRE.2000.891459
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Starting from a legacy system, originally developed in C and using text files, we first conducted a reverse engineering of this system to obtain its object-oriented analysis model. Then, in a process that is called segmentation, we restructured the code, changing all data structures to abstract data types and procedures to methods, eliminating all data access anomalies. This paper presents an experiment in which part of the segmented code,vas reengineered to an object-oriented language (Java) and the test files were replaced by a relational database. We show how design patterns have been used to link the database with the object-oriented concepts of Java. We also report a maintenance experiment that compares maintainability of the legacy system, the segmented system, and the object-oriented version.
引用
收藏
页码:118 / 127
页数:10
相关论文
共 17 条
[1]  
BRAGA RTV, 1998, THESIS I CIENCIAS MA
[2]  
BROWN K, 1996, PATTERN LANGUAGES PR, pCH14
[3]  
BUSCHMANN F, 1997, 11 EUR C OBJ OR PROG
[4]  
CAGNIN MI, 1999, THESIS U FEDERAL SAO
[5]   Incremental migration strategies: Data flow analysis for wrapping [J].
Cimitile, A ;
De Carlini, U ;
De Lucia, A .
FIFTH WORKING CONFERENCE ON REVERSE ENGINEERING, PROCEEDINGS, 1998, :59-68
[6]  
GALL H, 1996, 6 INT C INF PROC MAN, P1099
[7]  
Gamma E., 1995, Design Patterns: Elements of Reusable Object-Oriented Software, V206, P395, DOI 10.1093/carcin/bgs084
[8]   STATECHARTS - A VISUAL FORMALISM FOR COMPLEX-SYSTEMS [J].
HAREL, D .
SCIENCE OF COMPUTER PROGRAMMING, 1987, 8 (03) :231-&
[9]   Reengineering of legacy systems based on transformation using the object oriented paradigm [J].
Penteado, R ;
Masiero, PC ;
do Prado, AF ;
Braga, RTV .
FIFTH WORKING CONFERENCE ON REVERSE ENGINEERING, PROCEEDINGS, 1998, :144-153
[10]   An experiment of legacy code segmentation to improve maintainability [J].
Penteado, R ;
Masiero, PC ;
Cagnin, MI .
PROCEEDINGS OF THE THIRD EUROPEAN CONFERENCE ON SOFTWARE MAINTENANCE AND REENGINEERING, 1999, :111-119