Tez No İndirme Tez Künye Durumu
474339
On the evolutionary coupling and its measurement / Evrimsel bağlaşım ve ölçümü üzerine
Yazar:SERKAN KIRBAŞ
Danışman: DOÇ. DR. MEHMET ALPER ŞEN ; DOÇ. DR. TRACY HALL
Yer Bilgisi: Boğaziçi Üniversitesi / Fen Bilimleri Enstitüsü / Bilgisayar Mühendisliği Ana Bilim Dalı
Konu:Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol = Computer Engineering and Computer Science and Control
Dizin:Bilgisayar yazılımları = Computer softwares
Onaylandı
Doktora
İngilizce
2017
123 s.
Evrimsel Bağlaşım (EB), bir sistemin gelişimi sırasında birlikte sıkça değişen yazılım sisteminin parçaları (artifact) arasındaki örtülü ilişkidir. Yazılım sistemlerinde EB'yi anlamak önemlidir çünkü mimari problemler, çapraz kesim, yazılım hataları ve etki analizi hakkında bilgi verir. Günümüzde, yazılım içindeki ve yazılımlar arasındaki artan boyut ve bağlaşım, EB üzerinde çalışmanın önemini arttırmaktadır. Bu tezin ilk bölümünde, evrimsel bağlaşım ile yazilim hataları arasındaki ilişkiyi anlamak için ampirik olarak nadiren incelenmiş olan büyük endüstriyel yazılım sistemlerini analiz ettik. EB ile hatalar arasındaki ilişki hakkında literatürdeki çelişkili sonuçların nedenlerini araştırdık. Sonuçlarımız, EB ölçülerinin açıklayıcı gücünün, yazılım boyutu ve yazılım geliştirici faaliyetleri gibi hata tiplerine ve modül özelliklerine bağlı olarak değiştiğini göstermektedir. Tezin ikinci bölümünde ölçüm teorisi ve metroloji ilkelerini kullanarak EB ölçme değerlendirme kriterleri geliştirdik. Mevcut EB ölçütlerinin zayıf yönlerini ve güçlü yanlarını, ölçüm teorisi ilkelerine dayanarak gösterdik. Uygulayıcılara ve araştırmacılara, hangi EB ölçütlerini ne zaman kullanmaları gerektiği konusunda tavsiyeler sunduk. Ayrıca, EB ölçütlerinin nasıl türetildiğini ve nasıl yorumlanacağını anlamak için gerekli olan EB kavramları için bir meta model geliştirdik. Bu tez ölçüm teorisi ve metroloji ilkelerini EB ölçümlemesine uygulayan ilk çalışmadır.
Evolutionary Coupling (EC) is the implicit relationship between the artifacts or parts of the software system that are frequently changed together during evolution of a system. Understanding the EC in software systems is important, as it has been shown to provide insight into architectural problems, cross-cutting concerns, software defects and the impact of change. Today, the increasing size and coupling within and between software increases the importance of work on EC. In the first part of this thesis we analyse large commercial systems which have rarely been empirically studied to understand the relation between EC and defects. We explore the reasons for the contradicting results in the literature about the relationship between EC and defects. No studies exist to explain these contradictory findings. Our results show that the explanatory power of EC measures varies depending on defect types and module features such as size and developer activity. In the second part of the thesis we develop EC measurement evaluation criteria by using measurement theory and metrology principles. We show the weaknesses and strengths of current EC measures based on measurement theory principles. We provide recommendations for practitioners and researchers about what EC measure to use and not to use as well as when to use these measures. Furthermore, we develop a meta-model for EC concepts, which are essential in understanding how the measure is derived and how to interpret it. To the best of our knowledge, this is the first work that applies measurement theory and metrology principles to EC measurement.