Loading [MathJax]/extensions/MathMenu.js
An Automated Approach for Classifying Reverse-Engineered and Forward-Engineered UML Class Diagrams | IEEE Conference Publication | IEEE Xplore

An Automated Approach for Classifying Reverse-Engineered and Forward-Engineered UML Class Diagrams


Abstract:

UML Class diagrams are commonly used to describe the designs of systems. Such designs can be used to guide the construction of software. In practice, we have identified t...Show More

Abstract:

UML Class diagrams are commonly used to describe the designs of systems. Such designs can be used to guide the construction of software. In practice, we have identified two main types of using UML: (i) FwCD refers to diagrams are hand-made as part of the forward-looking development process; (ii) RECD refers to those diagrams that are reverse engineered from the source code; Recently, empirical studies in Software Engineering have started looking at open source projects. This enables the automated extraction and analysis of large sets of project-data. For researching the effects of UML modeling in open source projects, we need a way to automatically determine the way in which UML used in such projects. For this, we propose an automated classifier for deciding whether a diagram is an FwCD or an RECD. We present the construction of such a classifier by means of (supervised) machine learning algorithms. As part of its construction, we analyse which features are useful in classifying FwCD and RECD. By comparing different machine learning algorithms, we find that the Random Forest algorithm is the most suitable algorithm for our purpose. We evaluate the performance of the classifier on a test set of 999 class diagrams obtained from open source projects.
Date of Conference: 29-31 August 2018
Date Added to IEEE Xplore: 21 October 2018
ISBN Information:
Conference Location: Prague, Czech Republic
No metrics found for this document.

1. Introduction

In the early stages of the SDLC, class diagrams may be used to represent the architectural software design. As development progresses, class diagrams can be used to represent information that is closer to the construction of the system. During or after the implementation of source code, a class diagram may be recovered using reverse engineering techniques. Such a reverse engineered class diagram is closely based on the source code and reflects the fine-grain implementation structure of software systems [1].

Usage
Select a Year
2025

View as

Total usage sinceOct 2018:366
012345JanFebMarAprMayJunJulAugSepOctNovDec403000000000
Year Total:7
Data is updated monthly. Usage includes PDF downloads and HTML views.
Contact IEEE to Subscribe

References

References is not available for this document.