Condensing class diagrams by analyzing design and network metrics using optimistic classification

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 difficul...

Full description

Saved in:
Bibliographic Details
Main Authors: Thung, Ferdian, LO, David, Osman, Mohd Hafeez, Chaudron, Michel R.V.
Format: text
Language:English
Published: Institutional Knowledge at Singapore Management University 2014
Subjects:
Online Access:https://ink.library.smu.edu.sg/sis_research/2421
https://ink.library.smu.edu.sg/context/sis_research/article/3421/viewcontent/p110_thung.pdf
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Singapore Management University
Language: English
id sg-smu-ink.sis_research-3421
record_format dspace
spelling sg-smu-ink.sis_research-34212017-04-04T10:19:48Z Condensing class diagrams by analyzing design and network metrics using optimistic classification Thung, Ferdian LO, David Osman, Mohd Hafeez Chaudron, Michel R.V. 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. 2014-06-01T07:00:00Z text application/pdf https://ink.library.smu.edu.sg/sis_research/2421 info:doi/10.1145/2597008.2597157 https://ink.library.smu.edu.sg/context/sis_research/article/3421/viewcontent/p110_thung.pdf http://creativecommons.org/licenses/by-nc-nd/4.0/ Research Collection School Of Computing and Information Systems eng Institutional Knowledge at Singapore Management University Design Metrics Network Metrics Optimistic Classification Important Classes Software Engineering
institution Singapore Management University
building SMU Libraries
continent Asia
country Singapore
Singapore
content_provider SMU Libraries
collection InK@SMU
language English
topic Design Metrics
Network Metrics
Optimistic Classification
Important Classes
Software Engineering
spellingShingle Design Metrics
Network Metrics
Optimistic Classification
Important Classes
Software Engineering
Thung, Ferdian
LO, David
Osman, Mohd Hafeez
Chaudron, Michel R.V.
Condensing class diagrams by analyzing design and network metrics using optimistic classification
description 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.
format text
author Thung, Ferdian
LO, David
Osman, Mohd Hafeez
Chaudron, Michel R.V.
author_facet Thung, Ferdian
LO, David
Osman, Mohd Hafeez
Chaudron, Michel R.V.
author_sort Thung, Ferdian
title Condensing class diagrams by analyzing design and network metrics using optimistic classification
title_short Condensing class diagrams by analyzing design and network metrics using optimistic classification
title_full Condensing class diagrams by analyzing design and network metrics using optimistic classification
title_fullStr Condensing class diagrams by analyzing design and network metrics using optimistic classification
title_full_unstemmed Condensing class diagrams by analyzing design and network metrics using optimistic classification
title_sort condensing class diagrams by analyzing design and network metrics using optimistic classification
publisher Institutional Knowledge at Singapore Management University
publishDate 2014
url https://ink.library.smu.edu.sg/sis_research/2421
https://ink.library.smu.edu.sg/context/sis_research/article/3421/viewcontent/p110_thung.pdf
_version_ 1770572141184417792