Legacy Software Restructuring: Analyzing a Concrete Case

被引:21
作者
Anquetil, Nicolas [1 ]
Laval, Jannik [1 ]
机构
[1] INRIA Lille Nord Europe, Lille, France
来源
2011 15TH EUROPEAN CONFERENCE ON SOFTWARE MAINTENANCE AND REENGINEERING (CSMR) | 2011年
关键词
Re-modularization; re-structuring; cohesion; coupling; metrics; case study; METRICS;
D O I
10.1109/CSMR.2011.34
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Software re-modularization is an old preoccupation of reverse engineering research. The advantages of a well structured or modularized system are well known. Yet after so much time and efforts, the field seems unable to come up with solutions that make a clear difference in practice. Recently, some researchers started to question whether some basic assumptions of the field were not overrated. The main one consists in evaluating the high-cohesion/low-coupling dogma with metrics of unknown relevance. In this paper, we study a real structuring case (on the Eclipse platform) to try to better understand if (some) existing metrics would have helped the software engineers in the task. Results show that the cohesion and coupling metrics used in the experiment did not behave as expected and would probably not have helped the maintainers reach there goal. We also measured another possible restructuring which is to decrease the number of cyclic dependencies between modules. Again, the results did not meet expectations.
引用
收藏
页码:279 / 286
页数:8
相关论文
共 20 条
[1]  
Abreu FB, 2001, FIFTH EUROPEAN CONFERENCE ON SOFTWARE MAINTENANCE AND REENGINEERING, PROCEEDINGS, P47, DOI 10.1109/CSMR.2001.914968
[2]  
Anquetil N., 1999, Sixth Working Conference on Reverse Engineering (Cat. No.PR00303), P235, DOI 10.1109/WCRE.1999.806964
[3]  
Anquetil N., 2003, IEE Proceedings-Software, V150, P185, DOI 10.1049/ip-sen:20030581
[4]   Clustering software artifacts based on frequent common changes [J].
Beyer, D ;
Noack, A .
13TH INTERNATIONAL WORKSHOP ON PROGRAM COMPREHENSION, PROCEEDINGS, 2005, :259-268
[5]  
Bhatia P., 2006, Proceedings of the 2006 International Conference on Software Engineering Research and Practice and Conference on Programming Languages and Compilers SERP'06, P972
[6]   Validation of the coupling dependency metric as a predictor of run-time failures and maintenance measures [J].
Binkley, AB ;
Schach, SR .
PROCEEDINGS OF THE 1998 INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, 1998, :452-455
[7]   An investigation into coupling measures for C++ [J].
Briand, L ;
Devanbu, P ;
Melo, W .
PROCEEDINGS OF THE 1997 INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, 1997, :412-421
[8]   A Unified Framework for Cohesion Measurement in Object-Oriented Systems [J].
Briand L.C. ;
Daly J.W. ;
Wüst J. .
Empirical Software Engineering, 1998, 3 (1) :65-117
[9]   Evaluating the suitability of data clustering for software remodularisation [J].
Davey, J ;
Burd, E .
SEVENTH WORKING CONFERENCE ON REVERSE ENGINEERING - PROCEEDINGS, 2000, :268-276
[10]  
Gall H, 2003, SIXTH INTERNATIONAL WORKSHOP ON PRINCIPLES OF SOFTWARE EVOLUTION, PROCEEDINGS, P13