Kod kalıp analizi yöntemleri ile mikroservis mimarilerinde iyileştirme önerileri
Tezin Türü: Yüksek Lisans
Tezin Yürütüldüğü Kurum: Yıldız Teknik Üniversitesi, Fen Bilimleri Enstitüsü, Bilgisayar Mühendisliği, Türkiye
Tezin Onay Tarihi: 2017
Tezin Dili: Türkçe
Öğrenci: TUĞRUL AŞIK
Danışman: Yunus Emre Selçuk
Açık Arşiv Koleksiyonu: AVESİS Açık Erişim Koleksiyonu
Özet:Mikroservis mimari son dönemlerde yeni bir fenomen haline gelmeye başlamış olan mimari bir tasarımdır. Mikroservis mimarisi, dil bağımsız ve dinamik olarak ölçeklenebilir bir altyapı sunmaktadır. Bu mimari, temelde her bileşenin kendi içinde bir bütün olduğu ve bu bileşenlerin dağıtık olarak konumlandığı bir desen olarak tanımlanabilir. Yazılım uygulamalarının bağımsız olarak konuşlandırılabilir servis grupları halinde nasıl tasarlanmasıyla ilgili yöntemler sunmaktadır. İş yapma kabiliyeti, otomasyonel dağıtım, otomasyonel süreçler, akıllı erişim noktaları ve bileşene özgü ve merkezi olmayan veri yönetimi mikroservis mimarinin benzer karakteristik özelliklerdendir. Diğer yandan, bu mimari tarzın kesin ve tamamıyle olgunlaşmış bir tanımı bulunmamaktadır. Mimarinin bahsedilen karakteristik avantajları, ağ üzerinden servislerin keşfedilmesi, güvenlik yönetimi, iletişim optimizasyonu, veri paylaşımı ve performans gibi zorluklarları beraberinde getirmektedir. Ayrıca, ekip büyüklüğü, şirket kültürü, kişisel beceriler, üretkenlik vb. etmenler de yazılım geliştirme sürecinde ve yazılım ürününde bir etkiye sahiptir. Çalışma kapsamında, mikroservis mimari için tanımlı karakteristik özellikler ve farklılıklara göre, yazılım kalitesini ve mimariye uygunluğunu ölçmek için yeni metrik ve yaklaşımlar tanımlanmıştır. Bu metrik ve yaklaşımlar servis boyutunu ölçmek, servisler arası iletişimi analiz etmek ve yazılımı iyileştirmek için yapılmaması gereken pratikleri keşfetmek olarak kategorize edilebilir. Mikroservis mimari tabanlı geliştirilen bir yazılım ürünü üzerinde, tanımlanan metriklere ve yaklaşımlara uygunluğu kontrol etmek için, MISKAA statik analiz aracı geliştirilmiştir. Tanımlı metrikleri ve yaklaşımları değerlendirmek için örnek bir bilet satış uygulaması uyarlanmıştır. Analiz sonuçlarının yazılımı iyileştirme ve hataların erken teşhisi konusunda yol gösterici olacağı düşünülmektedir.