Component Identification and Evaluation for Legacy Systems--An Empirical Study--

JianFeng CUI  HeungSeok CHAE  

IEICE TRANSACTIONS on Information and Systems   Vol.E93-D   No.12   pp.3306-3320
Publication Date: 2010/12/01
Online ISSN: 1745-1361
DOI: 10.1587/transinf.E93.D.3306
Print ISSN: 0916-8532
Type of Manuscript: PAPER
Category: Software Engineering
component identification,  evaluation criteria,  legacy system,  software reengineering,  empirical study,  

Full Text: PDF(1.9MB)>>
Buy this Article

In the field of software reengineering, many component identification approaches have been proposed for evolving legacy systems into component-based systems. Understanding the behaviors of various component identification approaches is the first important step to meaningfully employ them for legacy systems evolution, therefore we performed an empirical study on component identification technology with considerations of their similarity measures, clustering approaches and stopping criteria. We proposed a set of evaluation criteria and developed the tool CIETool to automate the process of component identification and evaluation. The experimental results revealed that many components of poor quality were produced by the employed component identification approaches; that is, many of the identified components were tightly coupled, weakly cohesive, or had inappropriate numbers of implementation classes and interface operations. Finally, we presented an analysis on the component identification approaches according to the proposed evaluation criteria, which suggested that the weaknesses of these clustering approaches were the major reasons that caused components of poor-quality.