Tez No İndirme Tez Künye Durumu
775789
A variability-guided methodology for microservice-based development / Mikroservis tabanlı geliştirme için değişkenlik rehberlikli bir metodoloji
Yazar:BETÜL KURUOĞLU DOLU
Danışman: PROF. DR. ALİ HİKMET DOĞRU
Yer Bilgisi: Orta Doğu Teknik Üniversitesi / Fen Bilimleri Enstitüsü / Bilgisayar Mühendisliği Ana Bilim Dalı
Konu:Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol = Computer Engineering and Computer Science and Control
Dizin:
Onaylandı
Doktora
İngilizce
2022
78 s.
Bu tez, ürün yapılanması için düşük kodlu bir geliştirme ortamı aracılığıyla, değişkenlik yönetimi kullanan, MSDeveloper adlı mikroservis tabanlı bir geliştirme yaklaşımı sunmaktadır. Bu yaklaşımın amacı, farklı çalışma alanlarında ürün ailelerinin daha kolay geliştirilmesi için genel amaçlı bir ortam sunmaktır. Yazılım geliştiricilerinin ve ürün geliştiricilerinin, bir yazılım ekosistemi olarak kullanabilecekleri çalışma alanı odaklı geliştirme ortamı önerilmektedir. Böylece, jeneriklik farklı alanları destekleyerek sunulmaktadır. Bir çalışma alanı için katmanlı bir mimaride öznitelik ve süreç modelleri ve mikroservisler hazırlanır. Öznitelik modeli, süreç modelini ve mikroservis katmanını etkileyerek ürün yapılandırmasını yönlendirir. Yaklaşımın uygulanabilirliğini ve geliştirme ortamının kullanılabilirliğini doğrulamak için deneysel bir çalışma yapılmıştır. Farklı derslerden öğrencilere, önerilen metodolojiyi destekleyen yardımcı araçlar sağlanarak sistem modelleme projeleri verildi. Ayrıca, önerilen bu etki alanı odaklı geliştirme ortamı hakkında profesyonel yazılım geliştiricilere danışıldı. Bu tez kapsamında, öğrenci projelerinden gelen geri bildirimler ve profesyonellerin görüşleri analiz edildi ve tartışıldı.
This thesis presents a microservice-based development approach, MSDeveloper (Microservices Developer), employing variability management for product configuration through a low-code development environment. The purpose of this approach is to offer a general-purpose environment for the easier development of families of products for different domains: a domain-oriented development environment is suggested, where domain developers and product developers can utilize the environment as a software ecosystem. Thus, genericity is offered through supporting different domains. A domain is populated with feature and process models and microservices in a layered architecture. Feature models drive the product configuration, which affects the process model and the microservice layer. An experimental study was conducted to validate the applicability of the approach and the usability of the development environment. Students from different courses were assigned system modeling projects where they utilized helper tools supporting the provided methodology. Furthermore, professional software developers were consulted about this recommended domain-oriented development environment. Feedback from student projects and remarks of professionals are analyzed and discussed.