Conference Proceeding Article
A class diagram of a software system enhances our ability to understand software design. However, this diagram is often unavailable. Developers usually reconstruct the diagram by reverse engineering it from source code. Unfortunately, the resultant diagram is often very cluttered; making it difficult to learn anything valuable from it. Thus, it would be very beneficial if we are able to condense the reverse- engineered class diagram to contain only the important classes depicting the overall design of a software system. Such diagram would make program understanding much easier. A class can be important, for example, if its removal would break many connections between classes. In our work, we estimate this kind of importance by using design (e.g., number of attributes, number of dependencies, etc.) and network metrics (e.g., betweenness centrality, closeness centrality, etc.). We use these metrics as features and input their values to our optimistic classifier that will predict if a class is important or not. Different from standard classification, our newly proposed optimistic classification technique deals with data scarcity problem by optimistically assigning labels to some of the unlabeled data and use them for training a better statistical model. We have evaluated our approach to condense reverse-engineered diagrams of 9 software systems and compared our approach with the state-of-the-art work of Osman et al. Our experiments show that our approach can achieve an average Area Under the Receiver Operating Characteristic Curve (AUC) score of 0.825, which is a 9.1% improvement compared to the state-of-the-art approach.
Design Metrics, Network Metrics, Optimistic Classification, Important Classes
Software and Cyber-Physical Systems
ICPC 2014: Proceedings of the 22nd International Conference on Program Comprehension: Hyderabad, India, June 2-3, 2014
City or Country
Thung, Ferdian; LO, David; Osman, Mohd Hafeez; and Chaudron, Michel R.V..
Condensing class diagrams by analyzing design and network metrics using optimistic classification. (2014). ICPC 2014: Proceedings of the 22nd International Conference on Program Comprehension: Hyderabad, India, June 2-3, 2014. 110-121. Research Collection School Of Information Systems.
Available at: http://ink.library.smu.edu.sg/sis_research/2421
Copyright Owner and License
Creative Commons License
This work is licensed under a Creative Commons Attribution-Noncommercial-No Derivative Works 4.0 License.