ETMEN PROGRAMLAMADA CEPHE TABANLI PROGRAMLAMA BAKIŞI


HOCAOĞLU M. F.

USMOS 2013, Ankara, Türkiye, 01 Haziran 2013, ss.415-424

  • Basıldığı Şehir: Ankara
  • Basıldığı Ülke: Türkiye
  • Sayfa Sayıları: ss.415-424

Özet

Etmen tabanlı simülasyon sistemi, EtSiS, bildirimsel betik simülasyon ve etmen programlama dili sunar. Genişletilmiş durum grafiği diyagramlarının işletimi ile uygulama geliştirilmesine imkan veren betik yapının paradigma arkaplanında çoklu programlama paradigmaları ile tümleştirilmiş durum tabanlı programlama paradigması vardır. Cephe tabanlı programlama paradigması durum tabanlı programlama ile tümleştirilen paradigmalar arasında, saçılmış kodları enazlayan, saçılmış isterlere ve kümelenmiş isterlere çözüm geliştirilmesine ilişkin paradigma arka planını sunar. 

Nesne yönelimli tasarım düşey derinlikte bir yazılım tasarımı sunarken, cephe tabanlı programlama, düşey eksende derinleşen nesne yönelimli tasarımlara yatay eksende bir ilişkilendirme sağlar. Bu ilişkilendirme ile saçılmış ve çapraz kesen isterleri (cross-cutting requirements) ve kümelenmiş isterleri sağlayan tasarımlar elde edilir. EtSiS’in durum tabanlı programlama paradigmasının bileşeni olan cephe programlama paradigması, zayıf yazılım bağımlı betik tanımlamalar ile bu isterlere cevap verir. Bu amaçla, saçılmış isterleri sağlayan durum tanımlarının davranışlara ve davranış tanımlarının davranış listelerine dağıtımı, yazılım bağımlılığı oluşturulmaksızın, gerçekleştirilir. Çözüm bunların ötesinde, simülasyon ve etmen programlama dünyasında farklı kavramsal dünya tasvirleri için işletim zamanında şartlara bağlı olarak, modelleme cephesi değiştirerek, farklı modelleme isterlerine veya farklı ister kümelerine çözüm üretir.   

Geliştirilen çözüm, cephe programlama paradigmasını, yazılım tasarımından işletim zamanına, dinamik olarak yönetilen bir yapı olarak sunar ve esnek, zayıf-bağımlılığa ve yüksek tutarlılığa sahip tasarım sağlar.

Agent driven Simulation Framework, AdSiF provides a declarative scripting agent programming language. State oriented programming paradigm combined with multi-programming paradigms is at the background of script, which allows programming by extended state charts. Aspect oriented programming paradigm draws a solution background related with scattered codes, scattered requirements and tangled requirements.

While object oriented programming paradigm gives a vertical software design, aspect orientation enhances this vertically deep design by horizontal association. By the association, software design that satisfies cross-cutting requirements and tangled requirements is got. Aspect oriented programming paradigm, which is one of the components of AdSiF’s state oriented programming paradigm, provides a solution by a loosely-coupled script description to the problems mentioned. For this purpose, state descriptions to behaviors and behaviors to behavior containers satisfying scattered requirements are distributed without arising any software dependency. Furthermore, in simulation and agent programming world, the solution provides a solution by shifting modeling aspects conditionally for conceptually different modeling requirements and tangled requirements.

The solution carries aspect oriented programming from design time to execution time and provides a dynamically manageable, and flexible, loosely coupled and high coherent design.