DocumentCode
2122805
Title
A heuristic approach to solving the software clustering problem
Author
Mitchell, Brian S.
Author_Institution
Dept. of Comput. Sci., Drexel Univ., Philadelphia, PA, USA
fYear
2003
fDate
22-26 Sept. 2003
Firstpage
285
Lastpage
288
Abstract
This paper provides an overview of the author\´s Ph.D. thesis (2002). The primary contribution of this research involved developing techniques to extract architectural information about a system directly from its source code. To accomplish this objective a series of software clustering algorithms were developed. These algorithms use metaheuristic search techniques to partition a directed graph generated from the entities and relations in the source code into subsystems. Determining the optimal solution to this problem was shown to be NP-hard, thus significant emphasis was placed on finding solutions that were regarded as "good enough" quickly. Several evaluation techniques were developed to gauge solution quality, and all of the software clustering tools created to support this work was made available for download over the Internet.
Keywords
computational complexity; heuristic programming; reverse engineering; software maintenance; software tools; NP-hard; directed graph; heuristic approach; metaheuristic search techniques; optimization; software clustering; software tools; solution quality; system source code; Algorithm design and analysis; Clustering algorithms; Computer science; Data mining; Partitioning algorithms; Reverse engineering; Software algorithms; Software maintenance; Software systems; Software tools;
fLanguage
English
Publisher
ieee
Conference_Titel
Software Maintenance, 2003. ICSM 2003. Proceedings. International Conference on
ISSN
1063-6773
Print_ISBN
0-7695-1905-9
Type
conf
DOI
10.1109/ICSM.2003.1235432
Filename
1235432
Link To Document