Title :
Reverse engineering software architecture using rough clusters
Author_Institution :
Dept. of Comput. Sci., Victoria Univ., BC, Canada
Abstract :
Software reverse engineering and program understanding deal with methods and techniques in support of maintenance and evolution of complex legacy software. A key challenge is to find effective mechanisms to (re-)create architectural abstractions of the software system, which aid human software engineers in understanding them. Much research has been devoted on developing algorithms for automated clustering of legacy software code into subsystem architectures. Still, few of these solutions are being used in industrial practice. We believe that this is mainly due to two main limitations, firstly, the lack of algorithms to represent approximate clusters, and secondly, the inability of clustering algorithms to use human expertise and domain knowledge about the legacy application. We describe an approach that applies rough set theory for the purpose of legacy software clustering, in order to overcome these limitations.
Keywords :
pattern clustering; reverse engineering; rough set theory; software architecture; software maintenance; architectural abstractions; automated clustering algorithm; domain knowledge; human software engineers; industrial practice; legacy software code; program understanding; rough clusters; rough set theory; software architecture; software maintenance; software reverse engineering; subsystem architectures; Application software; Clustering algorithms; Computer architecture; Humans; Reverse engineering; Set theory; Software algorithms; Software architecture; Software maintenance; Software systems;
Conference_Titel :
Fuzzy Information, 2004. Processing NAFIPS '04. IEEE Annual Meeting of the
Print_ISBN :
0-7803-8376-1
DOI :
10.1109/NAFIPS.2004.1336239