DSpace Repository

Performance Analysis of Machine Learning Approaches In Software Complexity Prediction

Show simple item record

dc.contributor.author Reza, Sayed Moshin
dc.contributor.author Rahman, Md. Mahfujur
dc.contributor.author Parvez, Hasnat
dc.contributor.author Badreddin, Omar
dc.contributor.author Mamun, Shamim Al
dc.date.accessioned 2022-05-07T06:11:52Z
dc.date.available 2022-05-07T06:11:52Z
dc.date.issued 2021
dc.identifier.uri http://dspace.daffodilvarsity.edu.bd:8080/handle/123456789/7949
dc.description.abstract Software design is one of the core concepts in software engineering. This covers insights and intuitions of software evolution, reliability, and maintainability. Effective software design facilitates software reliability and better quality management during development which reduces software development cost. Therefore, it is required to detect and maintain these issues earlier. Class complexity is one of the ways of detecting software quality. The objective of this paper is to predict class complexity from source code metrics using machine learning (ML) approaches and compare the performance of the approaches. In order to do that, we collect ten popular and quality maintained open source repositories and extract 18 source code metrics that relate to complexity for class-level analysis. First, we apply statistical correlation to find out the source code metrics that impact most on class complexity. Second, we apply five alternative ML techniques to build complexity predictors and compare the performances. The results report that the following source code metrics: Depth inheritance tree (DIT), response for class (RFC), weighted method count (WMC), lines of code (LOC), and coupling between objects (CBO) have the most impact on class complexity. Also, we evaluate the performance of the techniques, and results show that random forest (RF) significantly improves accuracy without providing additional false negative or false positive that work as false alarms in complexity prediction. en_US
dc.language.iso en_US en_US
dc.publisher Scopus en_US
dc.subject Software complexity en_US
dc.subject Software quality en_US
dc.subject Machine learning en_US
dc.subject Software design en_US
dc.subject Software reliability en_US
dc.title Performance Analysis of Machine Learning Approaches In Software Complexity Prediction en_US
dc.type Article en_US


Files in this item

This item appears in the following Collection(s)

Show simple item record

Search DSpace


Browse

My Account

Statistics