Machine Learning Techniques For Software Component Reusability

Feroz Khan, Gowtham Lingala · 2022 3rd International Conference for Emerging Technology (INCET) · 2022

Software reuse has considerably reduced the products time to market with increased reliability and productivity. Widespread use of software reuse, agile software development, User stories and component-based development methods can be observed nowadays. To reap the advantages of software reuse developers can access it from the repositories. The repositories are generated through different techniques used in data mining. In order to predict the reusability of a component machine learning techniques is used. This article provides a method of integration of agile, user stories and component-based developments methods using artificial neural network. The factors that determine the reusability of software are studied and corresponding software metrics are input to the proposed classifier. The metrics used for the study are Cyclomatic Complexity (CC), Design Structure Quality Index (DSQI), Cohesion, weighted method per class (WMP), Bugs, Coupling. Depth Inheritance Tree (DIT), Number of children (NOC). The classifier was tested with some standard classifiers namely Random Forest, Logit Boost, J48 and ESRT used in machine learning and the accuracy achieved is 91.8%.

Read the paper · More papers on PaperTik