Master'sOpen Access

Predicting software coheson metrics with machine learning techniques

2022
0 views
0 downloads
Advisor: Dr. Öğr. Üyesi Tülin Erçelebi Ayyıldız

Abstract (EN)

Today, as the need for software increases, it has become necessary to measure the quality of these software. There are various metrics in the literature to measure software quality. Some of these metrics measures on a class basis. Classes are the basic units of object oriented programming. The cohesion metrics, which measures the compatibility of the methods and attributes in the classes with each other, directly affects the software quality. The main purpose of cohesion is to provide the rule that every class should serve a single purpose. When classes are created by paying attenion to cohesion, a single class will be traced for each purpose during the maintenance phase, so it is profitable in terms of time and cost. There are many metrics and tools in the literature that measure cohesion. Each metric calculates cohesion with different methods and considering different issues. Although it is common to use tools to calculate the cohesion, using a tool requires time and cost . In addition, with the trial versions of the tools, all desired metrics may not be accessible in all cases. As far as we know, there is no study that tries to predict cohesion metrics with machine lerning techniques so far. In this study, Lack of Cohesion in Methods (LCOM2), Tight Class Cohesion (TCC), Loose Class Cohesion (LCC) and Low Level Design Class Cohesion (LSCC) metrics were tried to be estimated using Random Forest, REPTree, K Nearest Neighbor – KNN, Linear Regression, Multilayer Perceptron (MLP) and Support Vector Machine (SVM). In this way, the cohesion metric is obtained more quickly and easily. Since the LCOM2 metric was not normalized between 0 and 1, normalization and outlier analysis were performed on the dataset of the LCOM2 metric. All of the analysis results obtained after these processes. According to the results obtained, the best performances were obtained for the LCOM2 metric with an error value of 5.080 after outlier analysis, 0.079 error value after normalization using KNN algorithm, using the KNN algorithm with an error value 0.231 for TCC, using the REPTree algorithm with an error value 0.259 for LCC and using the REPTree algorithm with an error value 0.149 for LSCC.

Author

Dr. Elif Nur Haner Kırğıl

How to Cite

Elif Nur Haner Kırğıl (Master Thesis). Predicting software coheson metrics with machine learning techniques, 2022, Baskent University.

License

Tüm Hakları Saklıdır

This work is shared under the specified license terms.

More theses from Baskent University