Clustering Classes in Packages for Program Comprehension

Joint Authors

Sun, Xiaobing
Li, Bin
Liu, Xiangyue
Li, Bixin
Lo, David
Liao, Lingzhi

Source

Scientific Programming

Issue

Vol. 2017, Issue 2017 (31 Dec. 2017), pp.1-15, 15 p.

Publisher

Hindawi Publishing Corporation

Publication Date

2017-04-11

Country of Publication

Egypt

No. of Pages

15

Main Subjects

Mathematics

Abstract EN

During software maintenance and evolution, one of the important tasks faced by developers is to understand a system quickly and accurately.

With the increasing size and complexity of an evolving system, program comprehension becomes an increasingly difficult activity.

Given a target system for comprehension, developers may first focus on the package comprehension.

The packages in the system are of different sizes.

For small-sized packages in the system, developers can easily comprehend them.

However, for large-sized packages, they are difficult to understand.

In this article, we focus on understanding these large-sized packages and propose a novel program comprehension approach for large-sized packages, which utilizes the Latent Dirichlet Allocation (LDA) model to cluster large-sized packages.

Thus, these large-sized packages are separated as small-sized clusters, which are easier for developers to comprehend.

Empirical studies on four real-world software projects demonstrate the effectiveness of our approach.

The results show that the effectiveness of our approach is better than Latent Semantic Indexing- (LSI-) and Probabilistic Latent Semantic Analysis- (PLSA-) based clustering approaches.

In addition, we find that the topic that labels each cluster is useful for program comprehension.

American Psychological Association (APA)

Sun, Xiaobing& Liu, Xiangyue& Li, Bin& Li, Bixin& Lo, David& Liao, Lingzhi. 2017. Clustering Classes in Packages for Program Comprehension. Scientific Programming،Vol. 2017, no. 2017, pp.1-15.
https://search.emarefa.net/detail/BIM-1203394

Modern Language Association (MLA)

Sun, Xiaobing…[et al.]. Clustering Classes in Packages for Program Comprehension. Scientific Programming No. 2017 (2017), pp.1-15.
https://search.emarefa.net/detail/BIM-1203394

American Medical Association (AMA)

Sun, Xiaobing& Liu, Xiangyue& Li, Bin& Li, Bixin& Lo, David& Liao, Lingzhi. Clustering Classes in Packages for Program Comprehension. Scientific Programming. 2017. Vol. 2017, no. 2017, pp.1-15.
https://search.emarefa.net/detail/BIM-1203394

Data Type

Journal Articles

Language

English

Notes

Includes bibliographical references

Record ID

BIM-1203394