Software quality indicates how effective and efficient a software is. Various standards need to be used to evaluate software quality. One of the most important internationally accepted standards for measuring software quality is the ISO/IEC 25010 software quality standard. With this standard, the quality of a software product is evaluated with eight different metrics. These are functional suitability, performance, compatibility, usability, reliability, security, maintainability and portability metrics. In this study, we tried to determine the relationship between user feedback and the metrics of the ISO/IEC 25010 software quality standard. Machine learning (ML) and natural language processing (NLP) techniques were used to classify user comments. After the data preprocessing phase, vectors of user comments were extracted with the Tf-Idf method for NLP. As a machine learning method, classification was made using five different models: Extra Trees Classifier (ETC), Gaussian Process Classifier (GPC), MLP Classifier (MLPC), Bernoulli Naive Bayes Classifier (BNBC) and Support Vector Classifier (SVC). Our goal is to show how quality metrics can be classified into multiple classes using user notifications. The data set used has an unbalanced structure, containing 1681 user comments classified by software experts. Synthetic Minority Oversampling Technique (SMOTE) was used to address the imbalance in the dataset. The results were compared by applying the same classification models to unbalanced and balanced data sets. According to the results obtained, the best classification model is the Extra Trees Classifier model, which provides the highest accuracy rate of 87% according to the SMOTE applied data set. The results show that ML and NLP methods can be used effectively in the classification process of software quality metrics.
Machine learning natural language processing ISO/IEC 25010 smote multiclass classification
Yazılım kalitesi, bir yazılımın ne kadar etkili ve verimli olduğunu gösterir. Yazılım kalitesini değerlendirmek için çeşitli standartların kullanılması gerekmektedir. Yazılım kalitesini ölçmek için uluslararası alanda kabul görmüş en önemli standartlardan biri, ISO/IEC 25010 yazılım kalite standardıdır. Bu standart ile bir yazılım ürününün kalitesi sekiz farklı metrik ile değerlendirilmektedir. Bunlar fonksiyonel uygunluk, performans, uyumluluk, kullanılabilirlik, güvenilirlik, güvenlik, bakım kolaylığı ve taşınabilirlik metrikleridir. Bu çalışmada kullanıcı geri bildirimleri ile, ISO/IEC 25010 yazılım kalite standardının metrikleri arasındaki ilişki tespit edilmeye çalışılmıştır. Kullanıcı yorumlarının sınıflandırılmasında Makine öğrenmesi (ML) ve doğal dil işleme (NLP) teknikleri kullanılmıştır. Veri önişleme aşamasından sonra NLP için Tf-Idf yöntemi ile kullanıcı yorumlarının vektörleri çıkarılmıştır. Makine öğrenmesi yöntemi olarak Ekstra Ağaçlar Sınıflandırıcısı (ETC), Gauss Süreç Sınıflandırıcısı (GPC), MLP Sınıflandırıcısı (MLPC), Bernoulli Naive Bayes Sınıflandırıcısı (BNBC) ve Destek Vektör Sınıflandırıcısı (SVC) olmak üzere beş farklı model kullanılarak sınıflandırma yapılmıştır. Amacımız, kalite metriklerinin kullanıcı bildirimlerini kullanarak çok sınıflı nasıl sınıflandırılabileceğini göstermektir. Kullanılan veri seti yazılım uzmanları tarafından sınıflandırılmış 1681 kullanıcı yorumu içeren dengesiz bir yapıya sahiptir. Veri setindeki dengesizliği gidermek için Sentetik Azınlık Aşırı Örnekleme Tekniği (SMOTE) kullanılmıştır. Dengesiz ve dengeli veri setlerine aynı sınıflandırma modelleri uygulanarak sonuçlar karşılaştırılmıştır. Elde edilen sonuçlara göre, en iyi sınıflandırma modeli SMOTE uygulanan veri setine göre %87 ile en yüksek doğruluk oranını sağlayan Ekstra Ağaçlar Sınıflandırıcısı modelidir. Sonuçlar, ML ve NLP yöntemlerinin yazılım kalite metriklerinin sınıflandırma sürecinde etkin bir şekilde kullanılabileceğini göstermektedir.
Makine öğrenmesi doğal dil işleme ISO/IEC 25010 smote çok sınıflı sınıflandırma
Birincil Dil | İngilizce |
---|---|
Konular | Veri Mühendisliği ve Veri Bilimi, Yazılım Kalitesi, Süreçler ve Metrikler |
Bölüm | Araştırma Makaleleri |
Yazarlar | |
Yayımlanma Tarihi | 30 Aralık 2024 |
Gönderilme Tarihi | 20 Kasım 2024 |
Kabul Tarihi | 10 Aralık 2024 |
Yayımlandığı Sayı | Yıl 2024 Cilt: 2 Sayı: 2 |