DocumentCode
2430594
Title
Program restructuring through clustering techniques
Author
Xu, Xia ; Lung, Chung-Horng ; Zaman, Marzia ; Srinivasan, Anand
Author_Institution
Dept. of Syst. & Comput. Eng., Carleton Univ., Ottawa, Ont., Canada
fYear
2004
fDate
15-16 Sept. 2004
Firstpage
75
Lastpage
84
Abstract
Program restructuring is a key method for improving the quality of ill-structured programs, thereby increasing the understandability and reducing the maintenance cost. It is a challenging task and a great deal of research is still ongoing. This work presents an approach to program restructuring at the function level, based on clustering techniques with cohesion as the major concern. Clustering has been widely used to group related entities together. The approach focuses on automated support for identifying ill-structured or low-cohesive functions and providing heuristic advice in both the development and evolution phases. A new similarity measure is defined and studied intensively. The approach is applied to restructure a real industrial program. The empirical observations show that the heuristic advice provided by the approach can help software designers make better decision of why and how to restructure a program. Specific source code level software metrics are presented to demonstrate the value of the approach.
Keywords
cluster tools; program diagnostics; software metrics; clustering techniques; program restructuring; source code level software metrics; Costs; Degradation; Job shop scheduling; Lungs; Programming; Software design; Software maintenance; Software metrics; Software quality; Telecommunication control;
fLanguage
English
Publisher
ieee
Conference_Titel
Source Code Analysis and Manipulation, 2004. Fourth IEEE International Workshop on
Print_ISBN
0-7695-2144-4
Type
conf
DOI
10.1109/SCAM.2004.18
Filename
1386161
Link To Document