Software systems need to evolve as business requirements, technology and environment change. As software is modified to accommodate the required changes, its structure deteriorates. There is increased deviation from the actual design and architecture. Very often, documentation is not updated to reflect these changes thus making it more and more difficult to understand, manage and maintain these systems. Researchers have applied various techniques to recover the components and architecture of such software systems. The use of clustering techniques has recently been explored for reverse engineering and software architecture recovery. There is a need to tailor clustering algorithms and similarity measures to cater to software. In this paper, we present a new algorithm for finding inter-cluster distance. We compare the performance of some popular similarity measures for this algorithm using two test systems and suggest variations of the similarity measures which show better results for so...
Onaiza Maqbool, Haroon A. Babri