soyutluk bir yazılım sistemi katılık bir ölçüsüdür [stabilite soyutluğunda kontrol]. Daha yüksek soyutlama, sertliği azalt (veya esnekliği arttır) ve tersi. Sistemin bileşenleri soyut sınıflara veya arayüzlere dayanıyorsa, böyle bir sistemin, doğrudan doğruya somut sınıflara bağlıysa, genişletilmesi ve değiştirilmesi daha kolaydır.
stabilitesi yazılım sistemi kırılma olmadan değişiklik sağlar ne kadar iyi olarak değiştirmek için bir tolerans ölçüsüdür. Bu, sistem bileşenlerinin karşılıklı bağımlılıklarını analiz ederek belirlenir.
Robert C. Martin article OO metriklere daha nicel açıdan bu kavramları açıklar. makaleden
alıntı:
sorumluluk, bağımsızlık ve bir kategorinin istikrar o kategoriye etkileşim bağımlılıkları sayılarak ölçülebilir. Üç ölçümlerini tespit edilmiştir:
Ca; afferent Kaplinler: Bu kategori içinde sınıflara bağlı bu kategoride dışında sınıfların sayısını.
Ce: Gösterişli Kaplinler: Bu kategorilerin dışında sınıflara bağlı bu kategoride içindeki sınıf sayısı.
I: Değişkenlik: (Ce ÷ (Ca + Ce)): Bu ölçüm aralığı [0,1] yer alır. I = 0, maksimum kararlı bir kategoriyi belirtir. I = 1, azami derecede istikrarsız bir kategoriyi belirtir.
A: soyutluk: (kategori içerisinde soyut sınıflar ÷ kategorideki sınıfların toplam #). Bu metrik aralığı [0,1]. 0 beton anlamına gelir ve 1 tamamen soyut demektir. herhangi bir yazılım sisteminde
özellikle büyük olanları, denge önemlidir. Bu durumda, bir sistemin “iyi” olması için soyutluğu istikrar ile dengelemesi gerekir. A-I grafiğindeki pozisyon bunu gösterir. Lütfen açıklama için makaleyi okuyun.