Yazılım Metrikleri – Ödev Hazırlatma – Proje Yaptırma – Tez Yaptırma Fiyatları – Sunum Örnekleri – Ücretli Ödev Yaptırma – Ödev Yaptırma Ücretleri
Nesne Yönelimli Yazılım Metrikleri
Yazılım ölçümü, yazılım projelerinin kalitesini izlemek, bakım maliyetlerini tahmin etmek, bileşenlerin yeniden kullanılabilirliğini değerlendirmek, benzer projelerdeki hataları tahmin etmek ve yazılım geliştirme sürecinin iyileştirilmesine katkıda bulunmak için etkin bir araç olarak kabul edilir.
Bu bölüm, özellikle nesne yönelimli metriklere ve kod karmaşıklığını ölçmek için metriklere odaklanan yazılım metrikleri literatürünü inceler. Ayrıca, yazılım metrikleri ve bunların kullanılabilirliği hakkında eleştirel bir bakış sunuyoruz.
NESNE ODAKLI METRİKLERİN KISA ARAŞTIRMASI
Ölçüm teorisini tüm yazılım metriklerine dahil etme eğilimi, ölçümler için ölçeklerin tanımlanmasına yol açtı, böylece boyutlar hakkında bir bakış açısı sağladı.
Ölçüm teorisine dayalı en yaygın ölçek türleri şunlardır:
• Sıralı ölçek: Sıralı bir kategoriler grubu (genellikle sabit bir ölçek noktaları kümesine dayalı maliyet modellerinde ayarlama faktörleri için kullanılır)
• Aralık ölçeği: Ardışık her bir sayı çifti arasındaki farkın eşdeğer bir miktar olduğu ancak “gerçek” sıfır değerinin olmadığı sayısal değerler
• Oran ölçeği: Öğelere, sayılar arasındaki farklar ve oranlar, özniteliğin farklılıklarını ve oranlarını yansıtacak şekilde numaralar atanır.
• Nominal ölçek: Bir öğenin sınıflandırıldığı bir dizi kategori.
• Mutlak ölçek: Öğelere, sayıların tüm özellikleri özniteliğin benzer özelliklerini yansıtacak şekilde numaralar atanır.
Ölçme teorisi temelinde nesne yönelimli yazılım metriklerinin özelliklerini analiz eder. Ölçme teorisinin altında yatan kavram, Söylem Evreni içindeki nesneler arasındaki ilişkilerin sezgisel veya ampirik varlığına dayanır.
Bu ilişkiler daha sonra matematiksel olarak türetilmiş bir biçimsel ilişkisel sistemde biçimsel olarak tanımlanabilir. Ayrıca yazılım ölçümlerinin sıra, oran, nominal ve aralık olarak nasıl ve hangi koşullar altında görülebileceğini araştırdılar. Bu ölçek türlerinin, uygulamanın sürdürülebilirliği ve “hataya açıklığı” açısından çok az anlam ifade ettiğini kabul ettiler.
Çalışmalarının katkısı, belirli önlemler perspektiflerinin tanıtılmasındadır. Ölçeklerin tanımının kesinliğini ve ölçülen bir özelliğin tanımını vurgularlar.
Aksiyomatik yaklaşım önerildi. Bu çerçeve, listelendiği gibi bir dizi dokuz aksiyoma dayanmaktadır. W eyeker’in metrik önerisinde, yapısal kalıtım karmaşıklığı metriklerinin resmileştirilmesini gözlemliyoruz. Özellik 9, bir sınıfı iki sınıfa ayırmanın karmaşıklığı azaltabileceği anlamına gelir. Deneyim, sınıflar bölündüğünde etkileşimin karmaşıklığının artabileceği argümanını desteklemektedir.
Aşağıdaki yapıları tanımlamak için “yazılım metrikleri” terimini kullandı:
• Genellikle deneysel olarak bir işlemden veya koddan türetilen bir sayı [örneğin, kod satırları (LOC) veya işlev noktalarının sayısı]
• Bir ölçüm ölçeği (Fenton’ın kitabında kullanılan örnek, nominal ölçek veya sınıflandırmadır.)
• Belirli bir işlevsellik sağlamak için kullanılan tanımlanabilir bir öznitelik (bir örnek, “taşınabilirlik” veya sınıf birleştirme metriğidir)
• Bağımlı bir değişkeni bağımsız değişkenlerin bir fonksiyonu olarak tanımlayan teorik veya veriye dayalı model (bir örnek, bakım çabası ile program boyutu arasındaki işlevsel ilişki olabilir)
Bu tanımlar tipik olarak modeller ve istenen yazılım özelliklerini tahmin etme yetenekleri arasında yaygın bir karışıklığa ve dolayısıyla tahmin amaçları için kullanılmaya uygunluklarına yol açar. Özetlenen metrikleri, ölçüm teorisinde de temellere sahiptir. Yazarlar araştırmalarını kapsamlı yapıya dayandırmazlar.
Yazılım örnekleri
Yazılım öğrenme
Yazılım unsurları Nelerdir
yazılım nedir, nasıl yapılır
Yazılım hizmeti nedir
Yazılım alanları Nelerdir
Yazılım Nedir kısaca
Bilgisayar yazılım Nedir
Eleştiri, bazı metriklerin, özellikle WMC’nin belirsizliğine işaret ediyor. CBO’nun sağlam bir ampirik ilişki sistemi kullanmadığını, özellikle kapsamlı yapılara dayanmadığını gösterdi. Ayrıca, LCOM metriği, eşdeğer durumların farklı şekilde temsil edilmesine izin vererek ek hataya neden olur.
Birleştirme ölçüleri, tasarım kalitesinin dinamik yönlerinin değerlendirilmesinde önemli bir ölçüler grubunu oluşturur. Nesneler arasındaki eşleşme, bir nesneden diğerine bağlantının gücünün ölçüsü olarak gevşek bir şekilde tanımlanır. Farklı yazarların yaklaşımları, ölçülen özniteliğin tanımında çoğunlukla farklılık gösterir. Tanımlardaki farklılıkların bir özetini sunar. Niteliklerden bazıları geliştirme aşamasında ancak çok geç bilinebilir.
Sınıflar arasındaki eşleşmeyi iki yön etkiler: sınıflar arasındaki mesajlaşma sıklığı (bu sınıflardan türetilen nesnelerin kardinalitesi ve çokluğu) ve eşleşme türü vb.
Tartışma üç tür arasında ayrım yapar: etkileşim eşlemesi, bileşen eşlemesi ve kalıtım eşlemesi. Bağlantı derecesi, bağlantı türleri setinde kısmi bir düzen tanımlamaya dayanır. Alt uç, küçük ve açık ilişkilerle tanımlanır ve ölçeğin üst ucu, büyük, karmaşık ve örtük ilişkilere atanır.
Tanım özneldir ve bir yazılım kalite göstergesi olarak kullanılmak üzere değerlerin deneysel olarak atanmasını gerektirir.
Uyum, bir sınıftaki öğelerin birbirine ait olma derecesi olarak tanımlanır. İyi bir tasarımın arzu edilen özelliği, oldukça uyumlu sınıflar üretmektir.
Farklı çerçevelerin karşılaştırılması ve kapsamlı tartışma Briand’ın çalışmasında bulunabilir. Sınıfların ve yöntemlerin anlamsal analizini gerektiren kapsamlı bir çerçeve sağladı.
Chidamber’in metrikleri, LCOM’u n kümenin kesişimi tarafından oluşturulan ayrık kümelerin sayısı olarak tanımlar. Denklem’deki tanım, yöntemlerin ve özniteliklerin kalıtımının, yöntem geçersiz kılma ve aşırı yükleme ve kalıtım ağacının derinliği ile ilgili olarak nasıl ele alındığını belirtmez.
Karmaşıklık Ölçüleri
Nesne etkileşimlerini kapsayan modülerleştirilmiş kod, sınıf hiyerarşileri ile karakterize edilir. Yazılım geliştirmedeki sorunlardan biri, bazı davranış veya işlevsellik türlerinin birçok nesne yönelimli bileşendeki sınıflarla kesişmesi veya ortogonal olması ve bunların ayrı bir sınıfa kolayca modülerleştirilememesidir.
Bu tür davranış örnekleri arasında şunlar yer alır: senkronizasyon ve eşzamanlılık, performans optimizasyonu, istisna işleme ve olay izleme, koordinasyon ve etkileşim protokolleri ve nesne görünümleri. Koddaki bu değişiklikler, kaotik gelişime, ek alt sınıflara ve sınıf hiyerarşilerinin yeniden yapılandırılmasına yol açar.
Tipik olarak, kodun karmaşıklığının ve düzensizliğin artmasıyla sonuçlanırlar. Döngüsel karmaşıklık, bir statik yazılım metrikleri sınıfının en yaygın kullanılan üyesidir. Döngüsel karmaşıklık, bir program için sağlamlığın ve güvenin geniş bir ölçüsü olarak 1976’da Thomas McCabe tarafından tanıtıldı. Bir program modülü aracılığıyla doğrusal olarak bağımsız yolların sayısını ölçer.
Bu ölçü, diğer programların karmaşıklığıyla karşılaştırılabilecek tek bir sıra sayısı sağlar. Döngüsel karmaşıklık genellikle basitçe program karmaşıklığı veya McCabe’nin karmaşıklığı olarak adlandırılır.
Entropi tabanlı karmaşıklık ölçüleri, bilgi teorisine dayanmaktadır. Birleştirilmiş ve ağlanmış yapılar arasındaki farkları nicelleştiren yaklaşım, m olayının meydana gelme olasılığının yansız bir tahminidir. Bu ölçüm, FORTRAN ve COBOL kodunun parçalarını temel alır.
Artan entropi yasasını detaylandırdılar: bir sistemin entropisi (yapılandırılmamışlık düzeyi), onu korumak veya azaltmak için belirli bir çalışma yapılmadığı sürece zamanla artar. Entropi artışı, bir projede değişiklik yapılması gerektiğinde ciddi komplikasyonlara neden olabilir ve genellikle bakımın bir engelidir.
Bilgisayar yazılım Nedir nasıl yapılır Yazılım alanları Nelerdir Yazılım hizmeti nedir Yazılım Nedir Yazılım Nedir kısaca Yazılım öğrenme Yazılım örnekleri Yazılım unsurları Nelerdir