Genetik Algoritma İle Öznitelik Seçimi Yapılarak Yazılım Projelerinin Maliyet Tahmini
Cost Estimation of Software Projects by Feature Selection with Genetic Algorithm
Yazar: Ebren Kara, Şükran; Şamlı, Rüya
Dergi: Avrupa Bilim ve Teknoloji Dergisi No. 27, 2021
Anahtar kelimeler: Engineering ; Mühendislik ; Genetik Algoritmalar,Genetik Programlama,Makine Öğrenmesi,Yazılım Maliyet Tahmini,WEKA ; Genetic Algorithms,Genetic Programming,Machine Learning,Software Cost Estimation,WEKA

Bir yazılım projesinin tahmini maliyetini, yazılımı geliştirme döngüsünün başlarında yapabilmek proje yöneticisi için çok önemlidir. Projede ön görülemeyen belirsizlikler, zaman ve maliyet açısından proje yöneticisine sorunlar doğuracaktır. Yazılım maliyetinin doğru tahmin edilmesi bu gibi sorunları en aza indirmektedir. Literatürdeki çalışmalara bakıldığında, yazılım projelerinin maliyetinin çok farklı yöntemlerle tahmin edilmeye çalışıldığı görülmektedir. Bu çalışmanın amacı, bu yöntemler arasında sıklıkla kullanılan bir yöntem olarak ifade edilebilecek olan Genetik Algoritmalar kullanılarak veri setlerinde öznitelik seçiminin yazılım projelerinin maliyet tahminine etkisinin araştırılmasıdır.Bu çalışmada yazılım projelerinin maliyet tahmini için, WEKA (Waikato Environment for Knowledge Analaysis – Bilgi Analizi için Waikato Ortamı) ortamında bulunan 8 farklı Makine Öğrenmesi algoritması ve Evrimsel Algoritma: Genetik Programlama varsayılan ayarlar ile iki şekilde çalıştırılmıştır. İlk olarak, PROMISE (Predictor Models in Software Engineering – Yazılım Mühendisliğinde Tahmin Modelleri) veri deposundan temin edilen ham veri setlerine (Albrecht, Finnish, Kemerer, Maxwell ve Miyazaki94) herhangi bir öz nitelik seçimi yapılmadan Makine Öğrenmesi algoritmaları uygulanarak yazılım maliyet tahmini gerçekleştirilmiştir. İkinci olarak, öncelikle veri setlerine Genetik Algoritma uygulanarak öznitelik seçimi yapılmıştır. Öznitelik seçimi ile ilgili alt küme çıkarıldıktan sonra veri setlerine Makine Öğrenmesi algoritmaları uygulanarak yazılım maliyet tahmini gerçekleştirilmiştir. Algoritmalar 10 kat çapraz doğrulama tekniği ile test edilmiş ve sonuçlar değerlendirilirken, hata oranları MAE (mean absolute error - ortalama mutlak hata), RAE (relative absolute error - bağıl mutlak hata) ve korelasyon katsayısı dikkate alınmıştır. Bulgular karşılaştırılıp performans değerleri analiz edildiğinde, Genetik Algoritma ile öznitellik seçimi yapılan veri setlerinden elde edilen tahmin sonuçlarının öznitelik seçimi yapılmadan elde edilen tahmin sonuçlarından daha iyi olduğu belirlenmiştir.

It is very important for the project manager to be able to estimate the cost of a software project early in the software development cycle. The project manager can reduce the uncertainties in the project by accurately estimating the project cost. Otherwise, serious economic problems will arise. Looking at the studies in the literature, it is seen that the cost of software projects has been tried to be estimated using very different methods. The aim of this study is to investigate the effect of feature selection with genetic algorithms on software cost estimation. In this study, 8 different Machine Learning algorithms in the WEKA (Waikato Environment for Knowledge Analaysis) environment and Evolutionary Algorithm: Genetic Programming were run in two ways with default settings for the cost estimation of software projects. First, software cost estimation was performed by applying Machine Learning algorithms to the raw data sets (Albrecht, Finnish, Kemerer, Maxwell and Miyazaki94) which optained from the PROMISE (Predictor Models in Software Engineering) data store without any feature selection. Secondly, feature selection was made by applying Genetic Algorithm to the datasets. After the subset of datasets was created by feature selection, Machine Learning algorithms were applied to the data sets and software cost estimation was realized. Algorithms were applied to datasets with 10-fold cross validation technique and results, performance criterion correlation coefficient, error rates mean absolute error (MAE) and relative absolute error (RAE). When the results were examined and the performance values were compared, it was determined that the estimation results obtained from the data sets with feature selection by Genetic Algorithm were better than the estimation results obtained without feature selection.