Geri Dön

Nesneye dayalı yazılımlarda sınama ve bakım öncelikli sınıfların belirlenmesi

Prediction of classes having priority at object oriented software test and maintenance

  1. Tez No: 295280
  2. Yazar: SİNAN ESKİ
  3. Danışmanlar: YRD. DOÇ. DR. FEZA BUZLUCA
  4. Tez Türü: Yüksek Lisans
  5. Konular: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol, Computer Engineering and Computer Science and Control
  6. Anahtar Kelimeler: Belirtilmemiş.
  7. Yıl: 2011
  8. Dil: Türkçe
  9. Üniversite: İstanbul Teknik Üniversitesi
  10. Enstitü: Fen Bilimleri Enstitüsü
  11. Ana Bilim Dalı: Bilgisayar Mühendisliği Ana Bilim Dalı
  12. Bilim Dalı: Belirtilmemiş.
  13. Sayfa Sayısı: 83

Özet

Günümüzde, toplam yazılım geliştirme maliyetlerinin yüzde ellisinden fazlasını yazılım bakım maliyetleri kapsamaktadır. Yazılım sınamaları ise bakım maliyetlerinin düşürülmesinde önemli bir role sahiptir. Yazılımın daha çok ve öncelikli olarak sınanması gereken kritik kısımlarının belirlenmesiyle, yapılacak sınamaların maliyetlerinin ve sürelerinin azaltılması sağlanabilir.Genel olarak yazılımların kaliteli kısımlarında hata çıkma olasılığı azdır ve bu kısımlarda çıkan hataların düzeltilmesi kolaydır; diğer yandan yazılımın kalitesiz ve karmaşık kısımlarında ise durum bunun tam tersidir. Yazılımlardaki kalitesiz kısımların, bir yazılım için, bakım sürecindeki en kiritik kısımlar olduğu açıktır. Yazılım kalitesinin doğru biçimde ölçülmesi yazılımın iyi ve kötü kısımlarını ortaya çıkartacaktır.Ölçme kavram olarak varlıkların özelliklerinin sayısallaştırılmasıdır. Yazılım metrikleri ise yazılımların kalitesini ölçmede kullanılabilecek en temel ölçme araçlardır; dolayısı ile yazılım metrikleri kullanılarak, kritik yani daha çok ve öncelikli olarak sınanması; bakım ve yazılımın gözden geçirilmesi sırasında öncelikli olarak değerlendirilmesi gereken kısımlar belirlenebilir. Proje yöneticileri sınama için ayıracakları kaynakları daha verimli bir biçimde ayarlayabilir; yazılım geliştiricileri yazılımın düşük kaliteli bu kısımlarından başlayarak yazılımın iyileştirilmesini sağlayabilirler.Bu çalışma kapsamında nesneye dayalı metrikler ile nesneye dayalı yazılımların değişimleri arasındaki ilişki araştırılmıştır. Sonuçların çıkarılmasında, açık kaynak kodlu yazılımlardaki değişimler, yazılımların gelişim süreçleri boyunca ardışıl sürümleri analiz edilerek incelenmiştir. Elde edilen deneysel sonuçlar düşük kaliteli yazılım kısımlarının yazılım geliştirme ve bakımı süresince sıklıkla değiştiğini göstermiştir. Bu ilişki dikkate alınarak, bu çalışmada yazılımlardaki öncelikle sınanması gereken kritik kısımların ve değişime eğilimli sınıfların belirlenmesi için sistematik bir yöntem önerilmiştir, diğer yöntemlerle karşılaştırılmıştır ve sonuçları doğrulanmıştır. Açık kaynak kodlu projeler üzerine yapılan deneysel sonuçlar göstermiştir ki geliştirilen yöntemle ilerleyen sürümlerde en çok değişime uğrayacak kısımlar %80'e yakın oranda belirlenebilmektedir.

Özet (Çeviri)

Software maintenance cost is typically more than fifty percent of the cost of the total software life cycle and software testing plays a critical role in reducing it. Determining the critical parts of a software system is an important issue, because they are the best place to start testing in order to reduce cost and duration of tests. Software quality is an important key factor to determine critical parts since high quality parts of software are less error prone and easy to maintain. As object oriented software metrics give important evidence about design quality, they can help software engineers to choose critical parts, which should be tested firstly and intensely. Also these parts should be considered for refactoring. In this paper, we present an empirical study about the relation between object oriented metrics and changes in software. In order to obtain the results, we analyze modifications in software across the historical sequence of open source projects. Empirical results of the study indicate that the low-level quality parts of a software change frequently during the development and management process. Using this relation, we propose a method that can be used to estimate change-prone classes and to determine parts which should be tested first and more deeply. We compare our method with random selection and decision tree approaches. Our metric-based method that can be applied at the last development phase of the software to predict critical classes, which tend to change in the future. These parts are also the low-level quality parts of the software. Therefore, they possibly need refactoring. Experimental results show that this approach can find up to 80 percent of the change-prone parts.

Benzer Tezler

  1. A learning-based method for detecting defective classes in object-oriented systems

    Nesneye dayalı yazılımlarda hatalı sınıfların öğrenme temelli yöntemle belirlenmesi

    ÇAĞIL BİRAY

    Yüksek Lisans

    İngilizce

    İngilizce

    2015

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrolİstanbul Teknik Üniversitesi

    Bilgisayar Mühendisliği Ana Bilim Dalı

    DOÇ. DR. FEZA BUZLUCA

  2. Grafiksel kullanıcı arayüz üzerinde ilişkisel veri tabanına dayalı uygulama yazılımları için yazılım geliştirme sürecinde kurumsal tabanda izlenecek yol ve ilkelerin belirlenmesi

    Identification of a software implementation process enterprise basis guidelines for relational database oriented software on graphical user interface

    EMİN AGAH ESTEKİN

    Yüksek Lisans

    Türkçe

    Türkçe

    2001

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolHacettepe Üniversitesi

    Bilgisayar Bilimleri Ana Bilim Dalı

    PROF. DR. ERSİN TÖRECİ

  3. Nesneye dayalı yazılımlarda tasarım düzeyinde klonların belirlenmesi

    Detection of design clones in object-oriented software systems

    UMUT TEKİN

    Doktora

    Türkçe

    Türkçe

    2014

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrolİstanbul Teknik Üniversitesi

    Bilgisayar Mühendisliği Ana Bilim Dalı

    DOÇ. DR. FEZA BUZLUCA

  4. Nesneye dayalı programlama tabanlı yazılımlarda yazılım metrikleri kullanılarak yapısal kod klon tespiti

    Structural code clone detection on object oriented software using software metrics

    MUSTAFA KAPDAN

    Yüksek Lisans

    Türkçe

    Türkçe

    2014

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolYıldız Teknik Üniversitesi

    Bilgisayar Mühendisliği Ana Bilim Dalı

    YRD. DOÇ. DR. MEHMET SIDDIK AKTAŞ

  5. Nesneye yönelik yaklaşımla gerçekleştirilen yazılımlarda sınıf uyum ölçütlerinin incelenmesi ve yeni bir sınıf uyum ölçütü önerisi

    Analysis of cohesion metrics in object oriented software and propose for a new metric

    AHMET ARSLAN

    Yüksek Lisans

    Türkçe

    Türkçe

    2012

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolSakarya Üniversitesi

    Bilgisayar ve Bilişim Mühendisliği Ana Bilim Dalı

    YRD. DOÇ. DR. HAYRETTİN EVİRGEN