Statik Kod Analizi & Yazılım Kalitesi Değerlendirme Hizmetleri


Yazılım sistemleri gittikçe büyümekte ve çeşitlilik arzetmektedir. Yazılımda mevcut tüm hataların testlerde tespit edilmesi imkânsızdır. Dinamik testlerde tespit edilemeyen çoğu hatanın statik testlerde ve deneyim-temelli testlerde tespit edildiği görülmektedir. Yazılım projelerinde yazılımın kalitesine çoğunlukla önem verilmez, bunun için personel ve bütçe tahsis edilmez. Çünkü öğrenilmesi zordur, maliyetlidir ve faydalı olmayacağına dair bir önyargı hâkimdir. YTKDL, yazılım test hizmetlerine tamamlayıcı hizmet olarak statik kod analizleri ve yazılım kalitesi değerlendirme faaliyetlerini de gerçekleştirerek, başta kamu olmak üzere sektörün daha kaliteli yazılımlar geliştirmesi için farkındalık oluşturmayı, modeller ve pratik araçlar geliştirmeyi, yönetimsel ve teknik raporlar sunarak iyileştirmelerini takip etmeyi hedeflemiş ve gerçekleştirmektedir. Yazılım kalite metrik ölçümü için NASA ve ABD Savunma Bakanlığı projelerinde kullanılan McCabe IQ/EQ araçları ile akademik çevrede tercih edilen Understand araçlarının yanı sıra SonarQube, Eclipse Metrics gibi açık kaynak kodlu araçlar da kullanılarak yazılım büyüklüğü, karmaşıklık, kuplaj, bağımlılık, bütünlük kaybı gibi çeşitli kalite nitelikleri ölçümünde ve analizinde uzmanlık kazanılmıştır. Ayrıca Klocwork gibi ticari, Findbugs, PMD, SonarQube, CCFinder gibi açık kaynak kodlu yazılımlar kullanılarak da statik kod analizleri ve kod klon analizleri gerçekleştirilmiş ve SQL aşılama, bellek sızıntısı, kod klonları, ölü kod, bellek taşması gibi uygulama güvenlik açıklarına sebebiyet verecek anomaliler konusunda birikim elde edilmiştir. Elde edilen bu birikim ve tecrübeler ile projeler ve kurumlar, fahiş lisans ücretleri ödemeden ve yazılım kalitesi konusunda gerekli yoğun bilgiyi edinmeye gerek kalmadan yazılımlarını analiz ettirebilmekte ve kısa süre içerisinde çoğu sorunun testlere gitmeden çözümlenmesini sağlayabilmektedir. Metrik ölçümleri ve statik kod analizi tecrübelerinin emniyet kritik yazılımlarda önem kazanan yazılım güvenilirliği modellerine uygulanması için AR-GE çalışmaları devam etmekte, yazılımları kalitesine göre notlandırarak belgeleyen uluslararası bakım yapılabilirlik modelleri incelenmektedir. Yazılım kalite modelleri, yazılım ürün kalitesine bakarak yazılımların, proje tekliflerinin, KOBİ'lerin ve kurumların derecelendirilmesinde ve Bilgi Teknolojileri (BT) denetimlerinde kullanılmaktadır.

TÜBİTAK bünyesindeki; Bilişim Teknolojileri Enstitüsü (BTE)'nün E-BELGEM, İKAS, RAYTES, KUŞRAD, ATCTRSIM, TAFRISK, TAKSIS, YTDABIS, UDSP, TARGEM, PLANSIS projeleri, Ulusal Elektronik ve Kriptoloji Araştırma Enstitüsü (UEKAE)'nün DF, SGS ve MINDER projeleri, Ulusal Akademik Ağ ve Bilgi Merkezi (ULAKBIM)'nin TRABIS projesi, Siber Güvenlik Enstitüsü (SGE)'nün Ağ Geçidi ve VKÖS projeleri ve Yazılım Teknolojileri Enstitüsü (YTE)'nün EBİS projesi gibi çok sayıda projede periyodik olarak gerçekleştirilen yazılım kalite değerlendirme faaliyetleri, aşağıdaki kurumların yazılımlarında da gerçekleştirilmiş ve/veya gerçekleştirilmeye devam etmektedir:

  • Başhukuk Müşavirliği ve Muhakemat Genel Müdürlüğü (BAHUM, Maliye Bakanlığı)
  • Göç İdaresi Başkanlığı, GÖÇNET Yazılımı
  • Türkiye Kömür İşletmeleri (TKİ)
  • İzmir Kâtip Çelebi Üniversitesi (İKÇÜ), Üniversite Bilgi Yönetim Sistemi Yazılımı (ÜBYS)
  • Sivil Havacılık Genel Müdürlüğü (SHGM)
  • Sayıştay BT Denetimi, Türk Patent Enstitüsü (TPE) Marka Yazılımı


  • Araştırma ve Geliştirme Alanlarımız

     
    Test Otomasyonu
    Yazılım test faaliyetleri kapsamında otomasyon yazılımın ihtiyaçları doğrultusunda uygulanır.
    Büyük Veri
    Büyük veri sistemleri test ve doğrulama faaliyetleri YTKDL bünyesinde araştırılan bir konudur.
    Statik Kod Analizi
    Statik kod analizi yöntem ve araçlarının inovasyonu için YTKDL bünyesinde araştırma ve geliştirme çalışmaları yapılmaktadır.
    Simulasyon Test
    Simülasyon sistemleri doğrulama tekniklerinin geliştirlmesi için yapılan araştırma faaliyetlerimizdir.