Geri Dön

Java iş uygulamaları için yazılım işlevsel büyüklüğünün işletim izlerinden ölçülmesi

Measuring functional size of java business applications from execution traces

  1. Tez No: 379615
  2. Yazar: MUHAMMET ALİ SAĞ
  3. Danışmanlar: YRD. DOÇ. DR. AYÇA TARHAN
  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: 2014
  8. Dil: Türkçe
  9. Üniversite: Hacettepe Ü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ı: Belirtilmemiş.

Özet

Yazılım büyüklüğünün ölçülmesi, geliştirme sürecinin tüm evrelerinde, artan yazılım büyüklükleri sebebiyle giderek karmaşıklaşan proje yönetim süreçleri için büyük önem taşımaktadır. Manuel olarak gerçekleştirilen büyüklük ölçme işlemlerinde ölçüm yapan uzmanın bireysel etkisi ölçümlerde farklı sonuçlara yol açabilmektedir. Diğer yandan ölçümlerin gerektirdiği maliyet ve zaman gibi problemlerin yanı sıra ölçmeye girdi olabilecek dokümantasyon eksikliği göz önüne alındığında, ölçme işleminin otomatikleştirilmesi konusu ön plana çıkmıştır. Çalışma kapsamında; COSMIC işlevsel büyüklük yöntemi kuralları çerçevesinde, Java iş uygulamalarının işlevsel süreçlerinin tespiti ve yazılım işlevsel büyüklüğünün otomatik olarak hesaplanması hedeflenmiştir. Yöntem işlevsel büyüklüğü, çalışma zamanında yapılan dinamik analiz yöntemiyle yazılımdan elde edilecek UML Dizge Diyagramları üzerinden hesaplamaktadır. Dinamik analiz için bağlam yönelimli programlama yönteminin Java platformundaki gerçekleştirimi olan AspectJ kullanılmaktadır. Yöntem, yazılım kodunda herhangi bir değişiklik gerektirmeden uygulanabilmektedir. Büyüklüğü hesaplanacak yazılımın işlevsel süreçleri arayüzden tetiklenen olaylar aracılığıyla tespit edilmektedir. Tetiklenen olayların işletim izleri AspectJ ile metin biçeminde dizge diyagramlarına dönüştürülmektedir. Daha sonra bu dizge diyagramları üzerinden veri hareketleri tespit edilerek COSMIC işlevsel büyüklük hesaplanmaktadır. Önerilen yöntemi desteklemek için 'COSMIC Solver' adlı bir prototip araç geliştirilmiştir. Hedefler çerçevesinde yöntemin işe yararlılığı örnek bir ön uygulama ve bir durum çalışması üzerinden doğrulanmıştır. Durum çalışmasında çerçevesi prototipe uygun olarak seçilen Java uygulamasının işlevsel büyüklüğü manuel olarak ve önerilen yöntem/araç kullanarak ölçülmüş ve elde edilen sonuçlar değerlendirilmiştir. Ölçümlerde elde edilen sonuçların birbirine yakınsadığı ve hesaplamada otomasyonla tezde hedeflenen oranın (%80+) üstünde netlik elde edilebildiği görülmüştür. Ayrıca otomatikleştirmenin doğal bir sonucu olarak zaman maliyetinde büyük kazanç (1/10 oranında) sağlanabildiği gözlemlenmiştir.

Özet (Çeviri)

During all phases of software development, software size measurement has great importance for project management processes that are gradually becoming more complex because of growing sizes of software. Due to individual effect of measurement specialist, manually operated size measurements might lead to different results in measured values. On the other hand, considering the cost and time problems and the lack of documentation to input to size measurement, the issues of automatizing process of measurement came to the front. In this study, it is aimed to automatically compute software functional size within the scope of COSMIC functional size methodology in case of detecting functional processes and measuring the size of Java business applications. The method measures functional size using UML Sequence Diagrams that are produced from software with dynamic analysis method at runtime. For dynamic analysis, AspectJ as an implementation of aspect oriented programming methodology on Java platform is being used. The method could be applied without any changes in software code. Functional processes are detected by interactions that are produced by using graphical user interfaces of the software. With the help of AspectJ, execution traces are converted to sequence diagrams which are in text format. Then, using that sequence diagrams, the COSMIC functional size is measured by using data movements. In order to support proposed method, a prototype tool called ' COSMIC Solver', was developed. Considering the goals, the proposed method's usefulness was tested with an example application and a case study. In the case study, in addition to using manual measurement, proposed method/tool was used to measure the size of a Java application that is chosen from a public library as conformant to the prototype, and results are evaluated. It is observed that the results of measurements are converging to each other and that the accuracy of the value calculated by the prototype exceeds the targeted value in this study (80%+). Moreover, it is observed that a natural result of automatizing is a great time saving which is about 10 times.

Benzer Tezler

  1. Cosmıc işlevsel büyüklüğün java iş uygulamalarına ölçme kodu enstrümantasyonu yoluyla çalışma zamanında ölçülmesi

    Run-time measuring of cosmic functional size via measurement code instrumentation into java business applications

    RANA GÖNÜLTAŞ

    Yüksek Lisans

    Türkçe

    Türkçe

    2015

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

    Bilgisayar Mühendisliği Ana Bilim Dalı

    YRD. DOÇ. DR. AYÇA TARHAN

  2. ДОКУМЕНТ БАШКАРУУ СИСТЕМАЛАРЫНЫН БҮТҮНДҮГҮН КАМСЫЗ КЫЛУУ ҮЧҮН БЛОКЧЕЙН ТЕХНОЛОГИЯЛАРЫН ИЗИЛДӨӨ

    BELGE YÖNETİM SİSTEMLERİNİN BÜTÜNLÜĞÜNÜ SAĞLAMAK İÇİN BLOCKCHAIN TEKNOLOJİLERİNİN ARAŞTIRILMASI

    BEKTEMIR KIZI BAHIANA

    Yüksek Lisans

    Kırgızca

    Kırgızca

    2025

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolKırgızistan-Türkiye Manas Üniversitesi

    Yazılım Mühendisliği Ana Bilim Dalı

    DOÇ. DR. ISMAİLOVA RİTA

  3. Sarfan: A distributed and paraler application development framework for networks of heterogeneous workstations

    Heterojen iş istasyonu ağları için paralel ve dağıtık uygulama geliştirme altyapısı

    HAMZA GÖLYERİ

    Yüksek Lisans

    İngilizce

    İngilizce

    2005

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolOrta Doğu Teknik Üniversitesi

    Bilgisayar Mühendisliği Ana Bilim Dalı

    PROF. DR. MÜSLİM BOZYİĞİT

  4. Executing codes for IA-32 (x86) architecture on java virtual machines

    IA-32 (x86) mimarisi için geliştirilmiş kodların java sanal makinasında koşturulması

    ERDEM GÜVEN

    Yüksek Lisans

    İngilizce

    İngilizce

    2009

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolDokuz Eylül Üniversitesi

    Bilgisayar Mühendisliği Bölümü

    YRD. DOÇ. DR. ŞEN ÇAKIR

  5. A composed technical debt identification methodology to predict software vulnerabilities

    Yazılım zafiyetlerini tahmin etmek için kapsamlı bir teknik borç tanımlama yöntemi

    RUŞEN HALEPMOLLASI

    Doktora

    İngilizce

    İngilizce

    2024

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

    Bilgisayar Mühendisliği Ana Bilim Dalı

    DOÇ. DR. AYŞE TOSUN KÜHN