Nesne yönelimli yazılım ölçütlerinin uzun ömürlü yazılımlarda hata oranlarını gösterme düzeyinin belirlenmesi
Determining the level of indicating bug rates in long-lived software based on object-oriented software metrics
Yazar: ÖZGE ESEN ÇOLAK
Danışman: DR. ÖĞR. ÜYESİ YUNUS EMRE SELÇUK
Yıldız Teknik Üniversitesi / Fen Bilimleri Enstitüsü / Bilgisayar Mühendisliği Ana Bilim Dalı / Bilgisayar Mühendisliği Bilim Dalı
Derece: Yüksek Lisans, 2024
Konu: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol = Computer Engineering and Computer Science and Control

Özet:
Nesne Tabanlı Programlama ilkeleri, yazılım dünyası tarafından uzun süredir benimsenen ve uygulanan prensiplerdir. Bu prensipler, kalite, sürdürülebilirlik ve karmaşıklık gibi önemli ölçümlerle değerlendirilmiş ve uzun vadeli yazılım projelerinde bakım ve standartlaşma planlamasında kritik bir rol üstlenmiştir. Chidamber ve Kemerer (CK) metrikleri, Nesne Tabanlı Programlamadaki karmaşıklığı değerlendirmek için temel metrikler sunar. Bu metrikler, yalnızca değerli bilgi kaynakları sağlamakla kalmaz, aynı zamanda proje planlamasına yeni yaklaşımlar getirir. Benzer şekilde sürümler boyunca karşılaşılan hata sayıları, geliştirme ve eklenen yeni özellikler de proje hakkında önemli bilgi kaynaklarıdır. Öncelikle elde edilen kaynaklar birleştirilerek bir veri seti oluşturulmuştur. Veri seti üzerinde lineer regresyon modeli ve korelasyon analizi çalışması gerçekleştirilmiştir. Lineer regresyon modeli metot düzeyinde yapılan modellerin diğer yaklaşımlara oranla dağa uygun modelleme sağlandığı ve Eclipse SWT projesinin metot düzeyinde yapılan analizde %60'ın üzerinde bir uygunluk oranı sağladığı gözlemlenmiştir. Korelasyon analizi sonucunda elde edilen sonuçlar ve sürüm takip sisteminden elde edilen veriler üç farklı yaklaşım ile incelenmiştir. İlk yaklaşım, yıllar içindeki CK metrik değerlerinin evrimine odaklanarak, CBO, WMC ve LCOM metriklerinde ortak bir artış oranı ortaya koymuştur. Başka bir yaklaşımda, metrikler ile hata sayısı arasındaki ilişki Spearman korelasyon katsayısı kullanılarak değerlendirilmiş ve LCOM parametresinin hata sayısı üzerinde en etkili parametrelerden biri olduğu belirlenmiştir. Son olarak, DD ve WMC başına hata sayısı metriklerinin benzer dağılımlar sergilediği gözlemlenmiştir.

Abstract:
Object-Oriented Programming (OOP) principles are long-standing and widely adopted principles in the software world. These principles have been evaluated based on important metrics such as quality, sustainability and complexity, playing a critical role in maintenance and standardization planning for long-term software projects. Chidamber and Kemerer (CK) metrics provide fundamental metrics to assess complexity in Object-Oriented Programming. These metrics not only provide valuable sources of information but also introduce new approaches to project planning. Similarly, bug counts encountered throughout versions and newly added features are significant sources of information about the project. Initially, the obtained resources were combined to create a dataset. A linear regression model and correlation analysis were conducted on the dataset. The linear regression model showed that models made at the method level provide more suitable modeling compared to other approaches, and Eclipse SWT project achieved an over 60% fit rate in the analysis conducted at the method level. The results of the correlation analysis and data obtained from the version tracking system were examined using three different approaches. In the first approach, focusing on the evolution of CK metric values over the years revealed a common increase rate in CBO, WMC, and LCOM metrics. Another approach evaluated the relationship between metrics and bug counts using the Spearman correlation coefficient, determining that LCOM is one of the most effective parameters on bug counts. Lastly, it was observed that bug counts per DD and WMC metrics exhibited similar distributions.