Model güdümlü geliştirme yaklaşımı ile otomatik kod üretimi araçlarının karşılaştırılması
Comparison of automatic code generation tools with model driven approach
Yazar: BÜŞRA İÇÖZ
Danışman: PROF. DR. OYA KALIPSIZ
Yıldız Teknik Üniversitesi / Fen Bilimleri Enstitüsü / Bilgisayar Mühendisliği Ana Bilim Dalı / Bilgisayar Mühendisliği Bilim Dalı
Derece: Yüksek Lisans, 2021
Konu: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol = Computer Engineering and Computer Science and Control

Özet:
Model Güdümlü Yazılım Geliştirme (MGYG) bir yazılım projesinin hızlı, verimli, yüksek kalitede, minimum maliyet ve zamanda geliştirilmesi için kullanılan bir yazılım geliştirme yaklaşımıdır. Model güdümlü yazılım geliştirme yaklaşımında, yazılım geliştirme işlemine model oluşturularak başlanır. Oluşturulan model ile yazılımın kaynak kodlarının, birim testlerinin ve fonksiyonel test senaryolarının tamamının ya da büyük bir kısmının yazılım kaynak kodu üretme aracı kullanılarak otomatik olarak oluşturulması amaçlanır. Bu sayede, doğrudan yazılım projesinin
geliştirilmesi sırasında zaman ve maliyetten kazanç elde edilmesi hedeflenir. Bu tez çalışmasında model güdümlü yazılım geliştirme üzerinde durulmuş ve model güdümlü yazılım geliştirme yaklaşımının en önemli aşamalarından biri olan yazılım kaynak kodlarının otomatik olarak üretilmesi aşamasında kullanılan otomatik yazılım kaynak kodu üretme araçları karşılaştırılmıştır. Otomatik yazılım kaynak kodu üreten araçlar için birtakım kalite ölçütleri tanımlanmış ve bu kalite ölçütleri için gereksinimler belirlenmiştir. Belirlenen gereksinimler doğrultusunda açık kaynak kodlu ve ücretsiz olan otomatik yazılım kaynak kodu üretme araçları karşılaştırılmıştır. Araçların karşılaştırılması sonucunda, kalite ölçütleri için belirlenen gereksinimleri en çok karşılayan araç olan Telosys aracı ile mikroservis
mimari yapısında RESTful bir web servisin geliştirilmesi sırasında yazılım geliştirme yaşam döngüsünde model güdümlü yaklaşımdan yararlanarak örnek bir uygulama çalışması yapılmıştır. Ayrıca, yapılan uygulama çalışması üzerinden
model güdümlü geliştirme yaklaşımının mikroservis mimarisi için uygulanabilirliği değerlendirilmiştir.

Abstract:
Model Driven Software Development (MDSD) is a software development approach used for a fast, efficient, high quality, minimum cost and time process of a software project. In the model-driven software development approach, the software development process is started by creating a model. With the created model and software source code generation tool, it is aimed to automatically generate software source code for all or most of the source codes, unit tests and functional test scenarios. In this way, it is aimed to directly save time and cost during the
development of the software project. In this thesis, model-driven software development is emphasized and the automatic software source code generation tools used in the automatic generation of software source codes, which is one of the most important stages of the model-driven software development approach, have been compared. A number of quality criteria have been defined for the automatic software source code generating tools and the requirements have been determined for these quality criteria. In line with the specified requirements, open source and free automatic software source code generation tools were compared. As a result of the comparison of the tools, a sample
case study was carried out using the model-driven approach in the software development life cycle during the development of a RESTful web service in the microservice architecture structure with the Telosys tool, which is the tool that meets the requirements for quality criteria the most. In addition, the applicability of the model-driven development approach for microservice architecture was evaluated through the case study.