Model Driven Development of Composite Content Applications
Model Güdümlü Mühendislik ("Model Driven Engineering")
amaçlarını gerçekleştirmek için farklı yaklaşımlar kullanır. Bu
yöntemlerden birisi, Alana Özgü Dil ("Domain Specific Language")
(DSL) geliştirmedir. DSL'ler belirli bir uygulama alanına ait
kavram ve terminolojileri (bazı notasyonlar şeklinde) inceler ve
çalışma alanına dair gereksinimleri sağlar. DSL son kullanıcılar
için (alan uzmanları) alana ("domain") özgü bir sorun alanı ile
ilgili soyutlamalar sayesinde bir problemin özünü tanımlamak için
imkan sağlar. Günümüzde, bir alana özgü dil geliştirirken,
beraberinde dilin üstmodeline dair dokümantasyonu ya da
spesifikasyonu proje boyunca güncel tutmak oldukça zordur.
Bu çalışma ile herhangi bir üst-modelin web tabanlı
dokümantasyonunu otomatik olarak üretmek için bir araç
geliştirilmiştir. "Üstmodel Spesifikasyonu Üretme" aracı Eclipse
EMF tabanlı model güdümlü geliştirme yöntemleri kullanılan tüm
projelerde rahatlıkla kullanılabilecek düzeydedir. EMF ("Eclipse
Modeling Framework") projesi, yapılandırılmış bir veri modeline
dayalı gerekli araçları ve diğer uygulamaları oluşturmaya yarayan
otomatik araç üretim servisi ve modelleme çatısıdır. Araç,
üstmodel dokümantasyonunun proje boyunca güncel kalmasını
sağlamaktadır.
Araç en gelişkin kod üretme tekniklerinden biri olan Xpand dili
kullanılarak gerçekleştirilmiştir. Somut sözdizimi olarak ise EMF
("Eclipse Modeling Project") Ecore editörünün "Properties"
görünümündeki "gen model documentation" ismindeki "extended
attribute" metin giriş alanı kullanılmıştır.
Söz konusu çalışmalar 1501-TÜBİTAK Sanayi Ar-Ge Projeleri
Desktekleme Programı tarafından desteklenen 3110712 no'lu proje
kapsamında yan ürün olarak geliştirilmiştir. Bu araç yardımı ile
herhangi bir geliştirme çevrimi sonunda ve proje sonunda tüm
spesifikasyonlar otomatik olarak güncel tutulmuştur.
Modeling, Validation and Verification of Process Flow Diagram for Petroleum Refineries
Rafineri süreçlerinde uygulanan operasyonel koşullar, işlenen
ham petrol türüne ve ürün arz/talep dengesine göre değişkenlik
göstermektedir. Bu değişikliklere hızlı cevap verebilmek ve
optimum işletme koşullarını belirleyebilmek için rafineri süreç
modellerinin bilgisayar ortamında oluşturulmasına ve farklı
modeller üzerinde çeşitli senaryo analizlilerinin yapılmasına
ihtiyaç vardır.
Bu proje petrol rafinerilerinde proses mühendisleri tarafından
yaygın olarak kullanılan Süreç Akış Diagramlarının ("Process Flow
Diagrams") (PFD) görsel ve metinsel bir modelleme aracı yardımıyla
tasarlanmasını; aynı zamanda bu modellerin üzerinde otomatik
doğrulama ve sağlama ("Verification and Validation") yapılabilmesini
olanaklı kılan bir çatının geliştirilmesi hedeflenmektedir.
Projenin literatür araştırması ve fizibilite çalışması devam
etmekte olup Türkiye'nin önde gelen bir sanayi kuruluşu ile ortak
bir Ar-Ge projesi olarak geçekleştirilmesi ve 1501-TÜBİTAK Sanayi
Ar-Ge Projeleri Destekleme Programına başvurusu söz konusudur.
Metamodel Specification Generator for Domain Specific Modeling Languages
Model Güdümlü Mühendislik ("Model Driven Engineering")
amaçlarını gerçekleştirmek için farklı yaklaşımlar kullanır. Bu
yöntemlerden birisi, Alana Özgü Dil ("Domain Specific Language")
(DSL) geliştirmedir. DSL'ler belirli bir uygulama alanına ait
kavram ve terminolojileri (bazı notasyonlar şeklinde) inceler ve
çalışma alanına dair gereksinimleri sağlar. DSL son kullanıcılar
için (alan uzmanları) alana ("domain") özgü bir sorun alanı ile
ilgili soyutlamalar sayesinde bir problemin özünü tanımlamak için
imkan sağlar. Günümüzde, bir alana özgü dil geliştirirken,
beraberinde dilin üstmodeline dair dokümantasyonu ya da
spesifikasyonu proje boyunca güncel tutmak oldukça zordur.
Bu çalışma ile herhangi bir üst-modelin web tabanlı
dokümantasyonunu otomatik olarak üretmek için bir araç
geliştirilmiştir. "Üstmodel Spesifikasyonu Üretme" aracı Eclipse
EMF tabanlı model güdümlü geliştirme yöntemleri kullanılan tüm
projelerde rahatlıkla kullanılabilecek düzeydedir. EMF ("Eclipse
Modeling Framework") projesi, yapılandırılmış bir veri modeline
dayalı gerekli araçları ve diğer uygulamaları oluşturmaya yarayan
otomatik araç üretim servisi ve modelleme çatısıdır. Araç,
üstmodel dokümantasyonunun proje boyunca güncel kalmasını
sağlamaktadır.
Araç en gelişkin kod üretme tekniklerinden biri olan Xpand dili
kullanılarak gerçekleştirilmiştir. Somut sözdizimi olarak ise EMF
("Eclipse Modeling Project") Ecore editörünün "Properties"
görünümündeki "gen model documentation" ismindeki "extended
attribute" metin giriş alanı kullanılmıştır.
Söz konusu çalışmalar 1501-TÜBİTAK Sanayi Ar-Ge Projeleri
Desktekleme Programı tarafından desteklenen 3110712 no'lu proje
kapsamında yan ürün olarak geliştirilmiştir. Bu araç yardımı ile
herhangi bir geliştirme çevrimi sonunda ve proje sonunda tüm
spesifikasyonlar otomatik olarak güncel tutulmuştur.
Feature Model and Metamodel Sychronization Tool for Software Product Lines
Yazılım ürün hattı ("Software Product Line") sürecinde, ilk önce
alan analizi gerçekleştirilmektedir. Bu analiz sonucunda alan
içerisindeki ortaklıklar ve değişkenlikler belirlenmekte ve
genellikle bir yetenek modeli ("Feature Model") ile ifade
edilmektedir. Yetenek modelleme çalışmasının çıktısı ise
genellikle yeteneklerin kavramsal gruplamasını, yetenekler
arasındaki ilişkileri ve bağımlılıkları tanımlayan bir çizelgedir.
Yazılım ürün hattı yetenekleri, tanımlandıktan ve gerçekleştirimi
yapıldıktan sonra yetenek kısıtları ve bağımlılıkları dikkate
alınarak bu yeteneklerin ihtiyaca göre bir alt kümesi seçilir ve
seçilen yeteneklere sahip yeni bir yazılım elde edilir.
Öte yandan yazılım ürün hatta mühendisliği süreçlerinde yeniden
kullanılabilir bir platform ve ürün hattı mimarisinin
geliştirildiği bir alan mühendisliği ile alan mühendisliği süreci
sonucunda elde edilen varlıklardan ürünlerin geliştirildiği bir
uygulama mühendisliği süreci yer alır. Alan ve Uygulama
Mühendisliğinde, Model Güdümlü Mühendislik ("Model Driven
Engineering") teknikleri sıklıkla kullanılmakta ve özellikle Alana
Özgü Diller ("Domain Specific Languages") geliştirilmektedir.
Endüstride bu alanda yaygın olarak kullanılan ve açık kaynak kodlu
gelişkin çatılardan biri Eclipse EMF ("Eclipse Modeling
Framework") teknolojisidir.
Endüstride kullanılan açık kaynak kodlu çoğu Yetenek Modelleme
araçlarına ait yetenekler kısıtlı iken ticari olanlarınının ise
lisans maliyetleri oldukça yüksektir. Aralarında açık kaynak kodlu
ve gelişkin bir yetenek modelleme dili olan Clafer öne
çıkmaktadır. Ancak Clafer aracının Eclipse EMF teknolojileri ile
entegrasyonu yoktur ve Eclipse Modelleme alt yapısı ile
geliştirilmemiştir. Bu sebeple bu araç ile geliştirilen
yeteneklerin alana özgü dil geliştirme çalışmasından biri olan
üstmodelleme aktivitesine geçişte izlenebilirliği kaybolmaktadır.
Bu ihtiyaçtan yola çıkarak, Yetenek Modelleri ("Feature Models")
ile Üstmodeller ("Metamodels") arasında senkronizasyon sağlayan
bir araç geliştirilmiştir. Clafer ile üretilen modeller ile Ecore
üst-modelleri arasında iki yönlü dönüşümü otomatik olarak
gerçekleştirebilmektedir. Araç, Eclipse EMF tabanlı model güdümlü
geliştirme yöntemleri kullanılan tüm projelerde rahatlıkla
kullanılabilecek düzeydedir.
Söz konusu çalışmalar 1501-TÜBİTAK Sanayi Ar-Ge Projeleri
Desktekleme Programı tarafından desteklenen 3110712 no'lu proje
kapsamında yan ürün olarak geliştirilmiştir.