Use-Relationship Based Classification for Software Components

Use-Relationship Based Classification for Software Components
复制标题

DOI:
--
复制
发表时间:
2018
期刊:
--
影响因子:
--
通讯作者:
Reishi Yokomori;Norihiro Yoshida;Masami Noro;Katsuro Inoue
Reishi Yokomori;Norihiro Yoshida;Masami Noro;Katsuro Inoue
中科院分区:
其他
文献类型:
--
作者:
Reishi Yokomori;Norihiro Yoshida;Masami Noro;Katsuro Inoue

文献摘要

相似文献

近年来,软件系统的维护周期不断增加。软件系统的规模越来越大,类的数量以及类之间的关系也越来越复杂。如果我们能够根据功能和角色等信息对软件组件进行分类,我们相信这些分类的组件可以放在一起理解,并且有助于理解系统。本文提出了一种基于使用关系相似性的软件组件分类方法。对于每个组件,分析该组件使用的一组组件。然后,对于每对组件,根据两组组件的重合度计算距离。创建距离矩阵并通过层次聚类分析对组件进行分类。我们将此方法应用到由 70 个组件组成的 jlGui 中。从 70 个成分中提取出 8 个簇,每簇 36 个成分。评估了提取的簇的特征,并以案例研究的形式介绍了每个簇的内容。在 8 个簇中的 7 个簇中,从功能的角度来看,簇的组件彼此非常相似。通过这些实验,我们证实我们的方法对于目标软件的组件分类是有效的,并且对于理解它们很有用。
In recent years, the maintenance period of the software system is increasing. The size of the software system has grown, and the number of classes and the relationship between classes are also increasingly complicated. If we can categorize software components based on information such as functions and roles, we believe that these classified components can be understood together, and are useful for understanding the system. In this paper, we proposed a classification method for software components based on similarity of use relation. For each component, a set of components used by the component was analyzed. And then, for each pair of components, the distance was calculated from the coincidence of the two sets. A distance matrix was created and components were classified by hierarchical cluster analysis. We applied this method to jlGui consisting of 70 components. 8 clusters of 36 components were extracted from the 70 components. Characteristics of the extracted clusters were evaluated, and the content of each cluster was introduced as a case study. In 7 clusters out of the 8 clusters, components of the cluster were strongly similar with each other from the viewpoint of their functions. Through these experiments, we confirmed that our method is effective for classifying components of the target software, and is useful for understanding them.