• 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