Loading…

Interpreting clustering results through cluster labeling

Software architecture refers to the overall structure of a software system, and is defined by the components (sub-systems) within a software system and their interactions with one another. Quite often, there is little documentation describing a software system's architecture, especially in the...

Full description

Saved in:
Bibliographic Details
Main Authors: Maqbool, O., Babri, H.A.
Format: Conference Proceeding
Language:English
Subjects:
Online Access:Request full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:Software architecture refers to the overall structure of a software system, and is defined by the components (sub-systems) within a software system and their interactions with one another. Quite often, there is little documentation describing a software system's architecture, especially in the case of legacy software systems. Thus techniques must be employed for recovering the architecture from the software's source code. Given the size and complexity of legacy systems, researchers have started exploring the use of automated techniques for architecture recovery. A technique that has shown promising results is clustering. Clusters that are obtained as a result of the clustering process represent sub-systems within a software system, but are nor easy to interpret until they are given appropriate names. In this paper, we present a cluster labeling scheme based on identifiers. As the clustering process proceeds, keywords are ranked using the inverse document frequency ranking scheme. Results of experiments conducted on a test system demonstrate that our labeling approach is effective. We also compare the clustering results of the complete algorithm and the weighted combined algorithm based on labels of the clusters produced by them during clustering.
DOI:10.1109/ICET.2005.1558920