VERİ DAĞITIM SERVİSİ TABANLI SİSTEMLERDE ENİNE KESEN İLGİLER İÇİN İLGİYE YÖNELIK PROGRAMLAMA YAKLAŞIMI
Dağıtık sistemlerin geliştirilmesinde, veri dağıtım servisi arakatmanı yaygın olarak kullanılmaktadır. Pek çok sektörde kullanımı hızla artan DDS arakatmanı, veri merkezli yayınla-abone ol tabanlı haberleşme mekanizması ve ön tanımlı servis kalitesi parametreleriyle ölçeklenebilir ve güçlü sistemler geliştirmek için idealdir. Ancak, veri dağıtım sistemindeki ilgilerin, tek bir modül içinde toplanamayacak şekilde dağıtık olması yeniden kullanılabilirlik, program bakımı ve yönetimi ve benzeri yazılım kalite faktörleri için problem oluşturmaktadır. Bu makalede, DDS tabanlı sistemlerdeki enine kesen ilgi problemlerine, ilgiye yönelik programlama yaklaşımı ile çözüm bulunması konusu incelenmiştir. Örnek çalışma kapsamında geliştirdiğimiz mini komuta kontrol sistemi üzerinde kodladığımız ilgilerin DDS tabanlı sistemlerin geliştirilmesinde ne gibi faydalar sağlayacağı, geliştirme ve test sürelerini nasıl kısaltacağı tartışılmıştır
ASPECT ORIENTED APPROACH FOR HANDLING CROSS‐CUTTING CONCERNS IN DATA DISTRIBUTION SERVICE BASED SYSTEMS
Data Distribution Service (DDS) is being widely used in developing distributed systems. The use of DDS middleware is being spread-out in many domains. With its data-centric publishsubscribe communication scheme and predefined Quality-ofService parameters, DDS is ideal to develop scalable and robust distributed systems. On the other hand, cross-cutting concerns in DDS are hard to localize within a single software module causing maintenance, management and reusability problems. In this paper, we have discussed handling cross-cutting concerns in DDS based systems with Aspect-Oriented Programming (AOP) approach. As the case study, having implemented a mini command and control system and developing sample aspects on it, we have discussed the benefits of using AOP approach and how it shortens the development and test phases in the development of DDS based systems
___
- [1] Castellote G.P., Farabaugh B. 2005.
An Introduction to DDS and DataCentric
Communications: Teknik
Rapor, Real Time Innovations.
- [2] Köksal Ö. 2008. DDS Arakatmanı
Nedir?: Teknik Rapor, ASELSAN.
- [3] Köksal Ö., Bozkurt A. 2009. DDS
Arakatmanı Çalışma Prensipleri:
Teknik Rapor, ASELSAN.
- [4] OpenDDS. http://www.opendds.org
(Erişim Tarihi: 01.08.2016).
- [5] AspectJ: http://eclipse.org/aspectj
(Erişim Tarihi: 01.08.2016).
- [6] AspectJ Programlama Klavuzu:
http://www.eclipse.org/aspectj/do
c/released/progguide/index.html
(Erişim Tarihi: 01.08.2016).
- [7] Eclipse: http://eclipse.org
(Erişim Tarihi: 01.08.2016).
- [8] Schmidt D.C., Corsaro A. ve Hag H.V.
2008. Addressing the Challenges of
Tactical Information Management
in Net-Centric Systems with DDS:
The Journal of Defense Software
Engineering, S. 24-29.
- [9] Corsaro A. 2012. Quality of Service
in Publish/Subscribe Middleware: Emerging Communication, Cilt. 8, s.
79-97.
- [10] Ryll M., Ratchev S. 2008.
Towards a publish / subscribe
control architecture for precision
assembly with the Data Distribution
Service: IFIP International
Federation for Information
Processing, Cilt. 260, s. 359-369.
- [11] Buschmann, F., Meunier R.,
Rohnert, H., Sommerlad, P. ve Stal,
M. 1996. Pattern-Oriented Software
Architecture: A System of Patterns,
Cilt. 1, s. : 476.
- [12] Object Management Group:
http://www.omg.org
(Erişim Tarihi: 01.08.2016).
- [13] Data Distribution Service:
http://www.omg.org/spec/DDS
(Erişim Tarihi: 01.08.2016).
- [14] MilSOFT DDS,
http://dds.milsoft.com.tr
(Erişim Tarihi: 01.08.2016).
- [15] Real Time Innovations DDS,
https://www.rti.com/products
(Erişim Tarihi: 01.08.2016).
- [16] PrismTech,
http://www.prismtech.com/vortex
(Erişim Tarihi: 01.08.2016).
- [17] Arayüz Tanımlama Dili
(Interface Definition Language-IDL),
http://www.omg.org/gettingstarte
d/omg_idl.htm
(Erişim Tarihi: 01.08.2016).
- [18] Gamma E., Helm R., Johnson R.
E., ve Vlissides J. M. 1993. Design
Patterns: Abstraction and Reuse of
Object-Oriented Design:
Proceedings of the 7th European
Conference on Object Oriented
Programming, s. 406-431.
- [19] Kiczales G. 1996. Aspect
Oriented Programming: ACM
Computing Surveys, Cilt. 154, s. 28.
- [20] Object Computing INC,
http://www.ociweb.com
(Erişim Tarihi: 01.08.2016).
- [21] Köksal Ö. ve Akyüz M. 2011.
Aspect Oriented Development Tool
To Support Implementation of DDS
Based Systems: Sunum, Fifth
Turkish Aspect-Oriented Software
Development Workshop.
- [22] Common Object Request Broker
Architecture (CORBA):
http://www.omg.org/spec/CORBA
(Erişim Tarihi: 01.08.2016).