Finding function clones in web applications

被引:30
作者
Lanubile, F [1 ]
Mallardo, T [1 ]
机构
[1] Univ Bari, Dipartimento Informat, Bari, Italy
来源
SEVENTH EUROPEAN CONFERENCE ON SOFTWARE MAINTENANCE AND REENGINEERING, PROCEEDINGS | 2003年
关键词
D O I
10.1109/CSMR.2003.1192447
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Many web applications use a mixture of HTML and scripting language code as the front-end to business services. Analogously to traditional applications, redundant code is introduced by copy-and-paste practices. Code duplication is a pathological form of software reuse because of its effects on the maintenance of large software systems. This paper describes how a simple semi-automated approach can be used to identity cloned functions within scripting code of web applications. The results obtained from applying our approach to three web applications show that the approach is useful for a fast selection of script function clones, and can be applied to prevent clone spreading or to remove redundant scripting code.
引用
收藏
页码:379 / 386
页数:8
相关论文
共 19 条
[1]   Modeling clones evolution through time series [J].
Antoniol, G ;
Casazza, G ;
Di Penta, M ;
Merlo, E .
IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE, PROCEEDINGS: SYSTEMS AND SOFTWARE EVOLUTION IN THE ERA OF THE INTERNET, 2001, :273-280
[2]  
BAKER DS, 1995, P 2 WORK C REV ENG T, P86
[3]  
Balazinska M., 1999, Proceedings Sixth International Software Metrics Symposium (Cat. No.PR00403), P292, DOI 10.1109/METRIC.1999.809750
[4]  
BALAZINSKA M, 1999, P 6 WORK C REV ENG, P326
[5]   Clone detection using abstract syntax trees [J].
Baxter, ID ;
Yahin, A ;
Moura, L ;
Sant'Anna, M ;
Bier, L .
INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE, PROCEEDINGS, 1998, :368-377
[6]  
CONALLEN J, 2000, BUILDING WEB APPL UM
[7]  
Di Lucca G. A, 2001, P 7 IEEE WORKSH EMP, P107
[8]  
Ducasse S., 1999, Proceedings IEEE International Conference on Software Maintenance - 1999 (ICSM'99). `Software Maintenance for Business Change' (Cat. No.99CB36360), P109, DOI 10.1109/ICSM.1999.792593
[9]   Reengineering analysis of object-oriented systems via duplication analysis [J].
Fioravanti, F ;
Migliarese, G ;
Nesi, P .
PROCEEDINGS OF THE 23RD INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, 2001, :577-586
[10]  
Fowler M., 2018, Refactoring: improving the design of existing code, V2nd