Title :
Clustering software artifacts based on frequent common changes
Author :
Beyer, Dirk ; Noack, Andreas
Author_Institution :
Ecole Polytech. Fed. de Lausanne, Switzerland
Abstract :
Changes of software systems are less expensive and less error-prone if they affect only one subsystem. Thus, clusters of artifacts that are frequently changed together are subsystem candidates. We introduce a two-step method for identifying such clusters. First, a model of common changes of software artifacts, called co-change graph, is extracted from the version control repository of the software system. Second, a layout of the co-change graph is computed that reveals clusters of frequently co-changed artifacts. We derive requirements for such layouts, and introduce an energy model for producing layouts that fulfill these requirements. We evaluate the method by applying it to three example systems, and comparing the resulting layouts to authoritative decompositions.
Keywords :
configuration management; data flow graphs; formal specification; reverse engineering; software maintenance; cluster identification; co-change graph layout; frequently co-changed artifact cluster; program understanding; requirement analysis; software artifact clustering; software maintenance; software system change management; subsystem candidate; version control repository; Application software; Clustering methods; Costs; Documentation; File systems; Power engineering and energy; Reverse engineering; Software systems; Systems engineering and theory;
Conference_Titel :
Program Comprehension, 2005. IWPC 2005. Proceedings. 13th International Workshop on
Print_ISBN :
0-7695-2254-8
DOI :
10.1109/WPC.2005.12