Son Kullanıcı Geliştirme için Otomatik Kod Üretim Aracının Tasarımı ve Gerçeklenmesi


Akbulut A., Patlar Akbulut F., KÖSEOKUR H., ÇATAL Ç.

Dokuz Eylül Üniversitesi Mühendislik Fakültesi Fen ve Mühendislik Dergisi, cilt.19, sa.55.1., ss.76-88, 2017 (Hakemli Dergi) identifier

Özet

Son kullanıcı geliştirme yaklaşımları; yazılım mühendisi olmayan oluşturabileceği, değiştirebileceği ve uyarlayabileceği teknolojiler ve yöntemlere odaklanmaktadır. Bu amaçla; birleştirme teknolojileri, örnek ile programlama, görsel programlama, model tabanlı yaklaşımlar, servis yönelimli mimariler ve otomatik kod üretimi kullanılabilmektedir. Bu çalışmada, görsel programlama ile birlikte otomatik kod üretimi tercih edilmiş ve bir son kullanıcı geliştirme aracı gerçeklenmiştir. Seçilen uygulama alanı olan rezervasyon sistemleri için otomatik kod üretimi sağlanmıştır. Bu sürecin temel faydası; geliştirme zamanın kısaltılması, son kullanıcıların geliştirmesini yapabilmesi ve sistem tasarımı ile üretilen uygulama arasındaki farklılıkların en aza indirgenerek, tutarlılığın sağlanmasıdır. Farklı rezervasyon sistemleri için kullanılması amaçlanan bu sistem, kullanıcıların iş modellerini görsel ara yüzler ile tanımlamalarına ve bu tasarımdan web tabanlı uygulamanın çalışması için gerekli tüm dosyaların üretilmesine imkan tanımaktadır. Son kullanıcılarda web teknolojilerine ait herhangi bir geliştirme tecrübesi aranmayıp, uygulamanın çalışması için gerekli ara yüzler, stil ve tasarım dosyaları, veritabanının oluşturulması otomatik kod üretimi ile gerçekleştirilmiştir. Bu çalışmada; son kullanıcı geliştirme için görsel programlama ve otomatik kod üretimi tekniklerinin, alana özel uygulanması gerektiği, jenerik yaklaşımların etkin olmayacağı sonucuna varılmıştır
Enduserdevelopment(EUD)approachesfocuson technologies and methods, which can help end users who are not softwareengineers,tocreate,change,andadapttheirown software artifacts. For this purpose, compositiontechnologies, instance-based programming, visual programming, model based approaches, service oriented architectures, and automatic code generationtechniquescanbeused.Inthisstudy,visual programming in conjunction with automatic code generation was opted and an end-user development tool was implemented. As the casestudy,automaticcodegenerationwasperformedfor reservation systems. The main aims of this process are to shorten the development time, let the end users develop their own tools, and create theconsistency between system design and generated application. This system, which is aimed to be used in different reservation applications, lets users define their business models with graphical objects, and generate all the necessary files from this design for a web-based application. It is not required by the end-userstoknowwebtechnologiesandinadditiontothe database,interfaces,styleanddesignfilesaregenerated automatically. In this study, it is shown that visual programming in conjunction with automatic code generation must be applied for the specific domain instead of a generic purpose implementation and this is a more efficient approach from end-user development perspective.