HLA Tabanlı Bileenler ile Otomatik Uygulama Gelitirme



Benzer belgeler
WEB SERVS TABANLI GELTRLEN MOBL UYGULAMALAR: ODTÜ MOBL ÖRENC LER BLG SSTEM (MOBS)

Java Tabanlı Akıı Sisteminin Gelitirilmesi

Bileen Tümletirmesine Dayalı Otomatik Uygulama Gelitirimi

Bileen Yönelimli Yazılım Gelitirme çin Süreç Modeli

,$( -./(,$( 0$0$ (,$(

HLA Uyumlu Benzetim Sistemlerinin Ardıl-lem Çizenekleriyle Sınanması

Femsoft, kolay kullanımı ve genileyebilen esnek yapısı ile ilerinizi çok kolaylatıracak!

#$% &'#(# Konular. Bits of Information. Binary Özellikler Superimposed Coding Signature Formation Deerlendirme

ASP.NET Web Uygulamalarında Güvenlik

BURSA DA GÖREV YAPAN MÜZK ÖRETMENLERNN ULUDA ÜNVERSTES ETM FAKÜLTES GÜZEL SANATLAR ETM BÖLÜMÜ MÜZK ETM ANABLM DALI LE LETM VE ETKLEM

Çok Katmanlı Veritabanı Uygulamaları çin Esnek Bir Vb.Net Kodu Üreticisi: Code Generator

Yaz.Müh.Ders Notları #6 1

1. Satı ve Daıtım lemleri " # $ "!!

BYS. T.C. Ulatırma Bakanlıı Biliim Belge Yönetim Sistemi Çözümü

ETK LKELER BANKACILIK ETK LKELER

TÜLN OTBÇER. Seminer Raporu Olarak Hazırlanmıtır.

EL PARMAKLARINA DEERLER VEREREK KOLAY YOLDAN ÇARPMA ÖRETM YÖNTEMYLE ZHN ENGELL ÖRENCLERE ÇARPIM TABLOSU ÖRETM UYGULAMASI

BSM 532 KABLOSUZ AĞLARIN MODELLEMESİ VE ANALİZİ OPNET MODELER

YAKMA YÖNETM VE BRÜLÖR KONTROL SSTEMLER

Vakum teknolojisi. Sistem kılavuzu

Internet Robot Sistemi: Web tabanlı veriler, uygulamalar ve servisler için bir entegrasyon aracı

Vakko Tekstil ve Hazır Giyim Sanayi letmeleri A Tarihi tibarıyla Sona Eren Hesap Dönemine likin Yönetim Kurulu Yıllık Faaliyet Raporu

IP Aları Üzerinden Telefon Hizmetlerinde Gecikme Latency

Yazılım Mimari Tasarımından Yazılım Geliştirme Çatısının Üretilmesinde Model Güdümlü Bir Yaklaşım

Dousan Boru Sanayi ve Ticaret A Tarihli Faaliyet Raporu. irket Merkezi Erzincan Sivas Karayolu 14 Km Pk 74 Erzincan

2. Bölgesel Kalkınma ve Yönetiim Sempozyumu Ekim 2007, zmir

Tarihli Mikro R/J/F/ Müşavir 02a Sürümü

E-Beyanname* *connectedthinking

Servis Tabanlı Kurumsal Yazılım Gelitirilmesinde XP Kullanımı ve Eletirisi

Sosyo-Ekonomik Gelimilik Aratırması

WINDESKCONCENTO. sıgnum. Kurumsal İş Süreçleri Uygulamaları. windesk.com.tr

CENG 302 Yazılım Mühendisliği Yazılım Mimarisi - Devam. Alper UĞUR

03. En Muhtemel Sayı (EMS) Yöntemi (5 li EMS) EMS Yönteminde Dilüsyon Kavramı

Amaç ve Kapsam. Yetki ve Sorumluluk

! " # $ % & '( ) *' ' +, -. / $ 2 (.- 3( 3 4. (

Kullanım kılavuzunuz ESET MOBILE ANTIVIRUS

Sınıf Diyagramları Amaç: Sınıf Diyagramları Nasıl Çizilir?

Proje #2 - Lojik Devre Benzetimi

AX5000 KONTROL PANELLER

2005 yılı sonu itibarı ile 76,760 adet geçerli alan adı bulunmaktadır. Alt alan adı uzantılarına göre sayısal bilgi aaıda yer almaktadır.

BELEDYELERDE NORM KADRO ÇALIMASI ESASLARI

Mobil Ortamlar çin Anlamsal Eleme Tabanlı ve Konuma Duyarlı Bir Servis Arama Sistemi

HLA Uyumlu Taktik TASNİF DIŞI

Bu model ile çalımayı öngören kuruluların (servis ve içerik salayıcılar),.nic.tr sistemi ile uyumlu, XML tabanlı yazılım gelitirmeleri gerekmektedir.

TMMOB Harita ve Kadastro Mühendisleri Bursa ubesi olarak;

stanbul Depreme Nasıl Hazırlanıyor?

ISO Laboratuar Akreditasyonu Temel Prensipler

ISSN : ercelebi@baskent.edu.tr Ankara-Turkey

Femsoft, kolay kullanımı ve genileyebilen esnek yapısı ile ilerinizi çok kolaylatıracak!

Yüksek Lisans Çalımalarının Yürütülmesinde Aday Örencinin Sorumlulukları

#$% &'#(# Konular. Binary Tree Structures. Binary Search Trees AVL Trees Internal Path Reduction Trees Deerlendirme

INTOSAI KAMU KES M Ç KONTROL STANDARTLARI REHBER. Özet Çeviri Baran Özeren Sayı tay Uzman Denetiçisi

OTSTK BR OLGUNUN DUYGULARI ANLAMA VE FADE ETME BECERSNN KAZANDIRILMASINA YÖNELK DÜZENLENEN KISA SÜREL BR E TM PROGRAMININ NCELENMES

SANAL MOBL EBEKE HZMET MOBILE VIRTUAL NETWORK SERVICES

LKÖRETM KNC KADEME (2005) TÜRKÇE DERS ÖRETM PROGRAMINDA GENEL AMAÇLAR - HEDEF/KAZANIMLAR

Java Programlama (COMPE 438) Ders Detayları

#$% &'#(# Konular. Direct File Organization. Computed Chaining Comparison of Collision Resolution Methods Perfect Hashing Cichelli s Algorithm

! " # $ % & '( ) *' ' +, $ $ - $ (. $- $ ( / $ % / $ 0 -( 1( $ (2- -(

ASP.NET Web Formları ile Çalımak. Microsoft ASP.NET Web Formları ile Çalımak

Begüm KIZILTEPE Aykut ÇELİK Hatice ŞAHİN Kemal ÖZTÜRK

6. MOS ANALOG ÇARPMA DEVRELER

BÖLÜM 1 YAZILIM TASARIMINA GİRİŞ YZM211 YAZILIM TASARIMI. Yrd. Doç. Dr. Volkan TUNALI Mühendislik ve Doğa Bilimleri Fakültesi / Maltepe Üniversitesi

YZM 2108 Yazılım Mimarisi ve Tasarımı

Nesne Tabanlı Programlama (COMPE 225) Ders Detayları

! " # $ % & '( ) *' ' +, -. /) /) 0 # /) %, %, 1 2

Yazılım Takımlarında Baarı

ARDIŞIL DİYAGRAM YAPI DİYAGRAMI. Sistem Analizi ve Tasarımı Dersi

BLG SSTEMLERNN GÜVENLNE LKN OECD REHBER LKELER- GÜVENLK KÜLTÜRÜNE DORU

Yazılım Mühendisliğine Giriş (SE 112) Ders Detayları

NX Motion Simulation:

Son Kullanıcı Tabanlı Yazılım Geliştirme Aracı

#$% &'#(# Konular. Direct File Organization. Progressive Overflow Buckets Linear Quotient Brent s Method Binary Tree

AMER KA B RLE K DEVLETLER SAYI TAYI

BOYASAN TEKSTL SANAY VE TCARET ANONM RKET Sayfa No: 1 SER:XI NO:29 SAYILI TEBLE STNADEN HAZIRLANMI YÖNETM KURULU FAALYET RAPORU 31 MART 2010 TBARYLE

TÜBTAK UEKAE Gebze/KOCAEL,

Yazılım Yapılandırma Teknikleri: Temizer Sistemi

Lecture 11: Generics

3. 27 I C C' C C (V B ' C ') C DC. EM1 Modeli I B C E (V B ' E ') E' r E ' I E

Çok Katmanlı WEB Tabanlı Uygulamalarda Yetkilendirme Problemi

Taıt alımlarının ette tüketim endeksi kapsamında izlenmesi hakkında bilgi notu

Synergi Gas. Gelişmiş Hidrolik Modelleme. Doğalgaz dağıtım şebekeleri için optimizasyon ve simülasyon yazılımı ARCUMSOFT

Bilgi Servisleri (IS)

II. KURUMSAL YÖNETM LKELER UYUM RAPORU

Yazılım Mühendislii Dersi çin Proje Aırlıklı ve Problem Çözmeye Dayanan Yeni Bir Yaklaım

C# ile NJ Simulatöre Bağlanmak

RFID OKUYUCU / YAZICI

Cadem CATIA Kitabı Cadem CAD/CAM Destek Merkezi A.. nin sertifikalı CATIA uzmanları tarafından hazırlanmıtır.

OMNET Ağ Benzetim Yazılımı (Network Simulation Framework) BİL 372 Bilgisayar Ağları. GYTE - Bilgisayar Mühendisliği Bölümü

TMMOB ELEKTRK MÜHENDSLER ODASI MESLEK DENETM UYGULAMA ESASLARI YÖNETMEL

Örneğin bir önceki soruda verilen rüzgâr santralinin kapasite faktörünü bulmak istersek

Programlama Dillerinde Kullanılan Veri Tipleri

BRSA BRDGESTONE SABANCI LASTK SANAY VE TCARET A. BLGLENDRME POLTKASI

OTSTK ÇOCUKLARDA TEACCH PROGRAMININ GELMSEL DÜZEYE ETKS: OLGU SUNUMU

II. Ara tırmanın Amacı III. Ara tırmanın Önemi

Bilgi lem Müdürlüü Görev ve Çalıma Yönetmelii

ICS TÜRK STANDARDI TS EN OHSAS 18001/Mart 2001

S R K Ü L E R : 2007 / 4 9

Dağıtık Benzetim Sistemleri İçin Entegrasyon ve Test Yaklaşımları

Kullanım kılavuzunuz BLACKBERRY MAIL

tarafından hazırlanan bu iyeri yönetmelii tüm irket çalıanları için geçerlidir.

Transkript:

HLA Tabanlı Bileenler ile Otomatik Uygulama Gelitirme Cengiz TOAY Bilgisayar Mühendislii Bölümü Orta Dou Teknik Üniversitesi e-posta: ctogay@ceng.metu.edu.tr Özet Bu çalıma, belirli bir alanda birbirlerinin ihtiyacı olan fonksiyonaliteyi salayacak bileenlerin bulunması ve beraber çalımalarındaki engellerin giderilmesi için bir altyapı sunmaktadır. Bileen teknolojileri için gelitirilen yaklaımlar bu çalımada uygulama alanı olarak seçilen High Level Architecture (HLA) ortamına uygulanmıtır. Benzetimlerin oluturulması sırasında HLA federeleri arasında ortaya çıkacak uyumsuzlukların giderilmesine yönelik mekanizmalar tasarlanmıtır. Abstract This research proposes an infrastructure to inhibit obstacles for locating the components that require functionalities from each other and their collaboration, within a certain domain. The approaches are developed for general component technologies and applied to the High Level Architecture (HLA) medium. Mechanisms are designed to resolve the incompatibilities among the HLA federates. 1. Giri Gelitirme maliyeti ve süresine olan olumlu yansımasından dolayı Bileenlere Dayalı Yaklaımlar (Component Oriented Approaches) zamanla önem kazanmaktadır. Ancak uygun bileenin bulunması ve sisteme dahil edilmesinde problemler yaanmaktadır. u anda, gelitiricinin bileen satmakta olan sitelerden isim ve bir kaç anahtar kelime ile bileenleri bulması ve bileenin üreticisi ile balantı kurup iine yarayıp yaramayacaını test etmesi gerekmektedir. Bileen sayısının artması, gelitiricinin sistemi ile uyumlu bileen bulma olasılıını arttırırken test etmesi gereken bileen sayısını da arttırmaktadır. Bileenlerin sadece isim, iletim sistemi gibi bilgiler ile tanımlanması otomatik bileen bulma ve balama açısından yeterli deildir. Bileenlerin arayüzleri ile sunduklarının yanısıra ihtiyaçlarının da bilinmesi gerekmektedir. Biz bileen olarak sadece hizmet veren birimler deil, aynı zamanda bir yada daha fazla bileenden hizmet alan birimleri de algılamaktayız. Çünkü amacımız seçilen ve uygun çalıması salanan bileenler ile gelitiricinin ya hiç kod yazmadan ya da minimum kod ile uygulama kurabilmesini salıyabilmektir. Bu dorultuda uygulama alanı olarak Yüksek Sevyeli mimari (High Level Architecture(HLA)) tabanlı benzetimler seçilmitir. HLA tabanlı benzetimde, bileenler yani federe ler birbirlerinin ihtiyaçlarını karılayacak ekilde tasarlanmaktadırlar. HLA standartlarının IEEE tarafından belirlenmesi, üretici ve tüketici arasında ortak bir dilin olumasına katkıda bulunmaktadır. Böylece bileenin sadece adı ve arayüz tanımlamaları gibi belirli bir kaç bilginin yanısıra kullanılan ve paylaılan etkileim ve özelliklerin salanması, yarı otomatik sistemlerin kurulmasına imkan vermektedir. Bu çalımada önerilen mekanizmalar ile son kullanıcının, bir alan modeli üzerinde yapacaı seçimler ııında uygun bileenlerin bulunması ve onlardan çalıan bir uygulamanın kurulması için gerekli altyapı salanmaktadır. Çalımada, son kullanıcının mümkün olduunca soyut düzeyde

kalması salanmaya çalıılmıtır. Bileenler ile ilgili ayrıntılı bilgiler sadece mekanizma ve bileen gelitirici arasında yer almaktadır. Bu bildiride kisaca calismanin temelini oluturan sirasi ile HLA, Nitelik Modeli ve Alan Tanımlama Modelin(ATM) den bahsedilmektedir. Calisma bölümünde ise mevcut ATM nin otomatik birleimindeki engellerin ortadan kaldırılması için yapılan eklentiler yer almakta ve bildiri sonuc ve kaynaklar ile son bulmaktadir. 2. Yüksek Sevyeli Mimari (HLA) HLA, benzetimlerin birlikte çalıabilirliini salamak amacıyla 1997 yılında Amerikan Savunma Bakanlıı tarafından gelitirilmi bir standarttır. HLA yi kurallar[1], arayüz tanımlamaları[2] ve Nesne Model Kalıbı (Object Model Template (OMT))[3,4] kavramları oluturmaktadır. Kurallar, daıtık benzetim (federasyon) ve onu oluturan daıtık bileenlerin(federe) birbirleri ile olan davranılarını belirlemektedir. HLA da yer alan federeleri biz bileen olarak düünmekteyiz. Arayüz tanımlamaları federeler ile Koum Zamanı Altyapısı (Runtime Infrastructure ()) arasındaki standartları tanımlamaktadır. ekil 1 den de görülecei üzere, benzetimdeki tüm iletiimi, bir dier ifade ile federe ve federasyonlar arası egüdümü salamakla görevlidir. Tüm iletiim kutuphanesı üzerinden yapıldıı için federelerin hangi programlama dili ıle hazırlandıkları(java, Microsoft VC++) önemini yitirmektedir. ekil 1. üzerinden yapılan HLA bileenlerinin haberlemesi lerin birbirleri ile dorudan iletiim kurmaması gerekmektedir. OMT, federelerin ve federasyonların tanımlanması için bir çatı salamaktadır. HLA nın OMT si federelerinin tekrar kullanılabilirliini salayan en önemli kavramıdır. lerin tanımlanması için Benzetim Nesne Modeli (Simulation Object Model (SOM)) kullanılır. Bu modelde sadece ilgili federenin dı ortam ile paylatıı sınıflar, özellikler, etkileimler, veri yapilari, veri tipleri gibi bilgiler yer almaktadır. Federasyonların tanımlanması için ise Federasyon Nesne Modeli (Fedaration Object Model (FOM)) kullanılır. SOM dan farklı olarak federasyonu oluturan tüm federelerin kullandıı ortak bilgiler yer alır. Federasyona dahil olan her federe bu yapıları kullanmak zorundadır. SOM ve FOM da yer alan tablolardan bazıları tablo 1 de yer almaktadır. SOM da yer alan 13 tablodan federenin paylatıı ya da ihtiyaç duyduu tüm etkileim ve özellikleri, veri tipleri ile birlikte elde edilebilmektedir. Tablo 1. OMT tabloları Nesne Model Tanımlama Tablosu Nesne Sınıf Yapı Tablosu Etkileim Sınıf Yapı Tablosu Özellik Tablosu Parametre Tablosu Veri Tipleri Tablosu

ler arasında FOM da belirtilen etkileim ve özelliklerin kullanımı yayın/kayıt (publish/subscribe) yöntemi ile gerçeklemektedir. Dier federelere kullandırılmak istenen etkileim yada özellik yayın lanır. Hizmeti almak isteyen federe ise ilgili etkileim yada özellie kayıt olur. ler uygulamaya dahil olduklarında yayın/kayıt ilemleri ile sisteme ihtiyaç ve hizmetlerini sunarlar. Ancak bir özellik yada etkileime kayıt olmak için onun daha önceden yayın lanmı olması gerekmektedir. 3. Nitelik Modeli Nitelik Modeli, Feature Oriented Design Analysis(FODA)[5] ve onun gelimi versiyonu olan Feature Oriented Reuse Modeling (FORM)[6] in alan hakkındaki bilgilerin saklanması amacıyla kullandıkları grafik modeldir. ekil 2 de örnek olarak araba alanı için tanımlanmı bilgileri ifade eden bir nitelik diyagramı yer almaktadır. Diyagramda klima opsiyonel bir niteliktir ve seçilebilmesi için 100 beygirlik motor gücüne ihtiyaç duyulmaktadır. Vites ise Otomatik yada Düz olabilir. Araba Vites Beygir_Gücü Klima Otomatik Düz Birleme Kuralı: Klima için Beygir_Gücü >100 olmalıdır. Açıklama : Düz vites daha az yakıt harcar. ekil 2. Örnek Feature Diyagram [5] 4. Alan Tanımlama Modeli Bu çalımada Alan Tanımlama Modeli (ATM) gelitirilerek, olgunlamı bir alandaki bilgilerin ve bu bilgilerin birbirleriyle olan ilikilerinin tek bir çatı altında temsil edilmesi mümkün olmaktadır. ATM, ekil 3 de görülücei üzere Nitelik Modeli ve OMT yi içermektedir. Nitelik Modeli[5,6] ile alan bilgileri grafiksel olarak ifade edilmektedir. çerilen bilgiler hem grafiksel olarak hem de metin tabanlı yöntemlerle saklanmaktadır. Böylece anlaılabilirlik ve otomasyon kabiliyetleri desteklenmektedir[7,8].

Nitelik M odeli ATM Object M odel Templates Yazım sal gösterim Sözlük Depo ekil 3. Alan Tanımlama Modeli ve Deposu Bileenlerin tanımlanmasında nitelik modelindeki alan bilgilerinin yanı sıra bileenlerin bir anlamda arayüzlerini ifade eden OMT, tamamlayıcı bilgi olarak kullanılmaktadır. ATM nin tasarlanmasındaki amaç son kullanıcının soyut düzeyde yapacaı seçimler sonucunda tanımlamasını yaptıı uygulamayı gerçekletirecek bileenlere ulamasıdır. Benzetim Hava Aracı Kara Aracı Çevre Uçak Helikopter Car Tank Rüzgar Nem F4 F16 M60 Leopard Seçimsel Nitelik Hızlan Manevra Hızlan Manevra Zorunlu Nitelik Alternatif Nitelikler ekil 4. Askeri araçlar için bir Nitelik Modeli örnei ekil 4 de ki örnek alan tanımında Nitelik Modeli ile son kullanıcının bir benzetim uygulaması yapması için gerekli alan bilgisi yer almaktadır. Son kullanıcı bu model üzerinden yapacaı seçimler ile uygulamayı tasarlamı olmaktadır. Seçimler sırasında grafikte görülmeyen ancak Nitelik Modelin yazımsal gösteriminde yer alan sınırlamalar, ilikiler vb. kullanıcıyı doru seçimler yapması konusunda yönlendirmektedir.

F16 Hızlan S Manevra S P Gerekli Nesne Model ablon etkileim ve özellikleri Saga Dön Rüzgar_hızı_al Koordinate_XYZ ekil 5. OMT ve Nitelik Model ilikisi ekil 5 de mevcut bileenlerden birinin manevra yeteneini gerçekletirmek için ihtiyaç duyduu etkileim ve özelliklerin bazıları görülmektedir. Dolayısı ile F16 yı ve onun yetenek nitelii olan manevrayı seçmi olan kullanıcı bileenin ihtiyacı olan Koordinat_XYZ özelliini salıyan bir baka bileeni daha seçmesi için yönlendirilmektedir. 5. Çalıma Daha önce yapmı olduumuz çalımalarda[7,8] ATM nin içerii oluturulmutu. ATM ile federasyon gelitiricisine belirli bir alanda nitelik modeli üzerinde yapacaı seçimler dorultusunda ihtiyacı olacak federelerin belirlenmesi salanmıtır. Ancak, ATM federelerin bulunmasının yanı sıra bazı uyum problemlerinin aılmasına yönelik bazı hizmetler ve imkanlar vermektedir. Eer seçilen federelerin kaynak kodları var ise mevcut yaklaımlar ile kodlarda yapılacak deiiklikler, saran(wrapper) kodlar ile uyum problemleri giderilebilir. Ancak gerek daha ucuz olacaı, gerek daha önceden alınmı olması gibi gerekçeler yüzünden kaynak kodları olmayan federelerin çalıtırılması ihtiyacı, çözülmesi gereken problemler dourmaktadır. Bahsedilen uyum problemlerden bazıları unlardır: 1- Kullanılacak olan federelerin SOM larındaki farklı sınıf yapıları. 2- Sınıf, özellik, parametre ve etkileimlerdeki isim farklılıkları (Örnein, aynı etkileim birinde getwind, dierinde getw eklinde tanımlanmı olabilir.) 3- Özellik ve parametrelerdeki tip farklılıkları (Örnein, bir özellik birinde integer, dierinde float tanımlanmı olabilir) 4- Etkileimlerdeki parametre sayılarının farklılıkları ( Örnein, aynı ii yapan etkileim dierine göre farklı parametre sayısına sahip olabilir) 5- Bir federenin ihtiyaç duyduu etkileim, bir dier federede birden fazla etkileimin çarılması eklinde olabilecei gibi sonrasında da yapılması gereken ilemlere ihtiyaç olabilir. (Örnein, get_kmh etkileimine ihtiyaç duyan bir federenin, mil ile çalıan bir baka federe ile çalıması gerekiyor ise get_milh etkileiminin ardından mili km ye çevirilmesi ve sonucun get_kmh olarak döndürülmesi gerekir) 6- Bazı federelerin çalıtırılması için bazı özelliklerin balangıçta kurulması gerekebilir.

gereksinimler Alan Tanımlama Modeli Alan Bilgisi Federasyon Gelitiricisi Gelitiricisi Komutlar Federasyon Deposu SOM+federe SOMs + likiler Fed & Kural Dosya Üreticisi Kurallar Dosyası Fed Dosyası FOM ekil 6. Yapiya Genel Baki Yapıya eklenen yeni moduller ile yukarıda bahsedilen uyum problemlerinin çözümüne yönelik ATM den salanan bilgilere ve otomatik ürünlere ek olarak federasyon gelitiricisinin de katılımı salanmıtır. ekil 6 da görülecei üzere ve HLA standartları korunmutur. Daha önceki yapıya 3 yeni modül eklenmitir. Bunlar Fed ve kural dosya üreticisi,, ve Kurallar dosyasıdır. 5.1 Fed ve Kural Dosya Üreticisi ekil 6 dan de görülecei üzere bu modülün girdileri federasyon gelitiricisinden gelen komutlar, deposundan gelen SOM bilgileri ile seçilen federeler arasındaki sınırlama ve ilikileri gösteren bilgilerdir. Uyuma yönelik tüm çalımalar bu modülde gerçeklemektedir. Yukarıda bahsedilen uyum problemlerine yönelik çözüm önerileri unlardır:

A a1 a2 a3 B b1 b2 b32 B b1 b2 b31 A a1 a2 a3 1 2 ekil 7. Örnek OMT 1- OMT uyumsuzlukları ekil 7 de en basit uyumsuzluklardan biri gösterilmektedir. 1 de b1 e ulamak için A.B.b1 eklinde tanımlanmıken 2 için B.b1 eklinde tanımlanmıtır. Dolayısı ile isim, tip gibi dier uyumların salansa bile bu iki federenin beraber çalımasına imkan yoktur. Bu nedenle 1 ile 2 arasında çevirme ilemine ihtiyaç duyulmaktadır. Bunun için Kural dosyasına çevirmen modülnün bu ii yapması için A.B.b1 = B.b1 tir kuralı yazılır. Fed dosyasına ise ihtiyaca göre A.B.b1, B.b1 yada c gibi bir baka tanımlama yapılabilir(bu durumda kurala =c eklenmelidir). Önemli olan federelerin özellik yada etkileim ihtiyaçlarında uygun ileyicinin(handler) salanabilmesidir. 2- sim farklılıkları Farklı firmalar farklı kelimeler ile aynı özellik veya etkileimi ifade edebilirler bu neden ile OMT uyumsuzluklarında olduu gibi b31 = b32 eklindeki kurallar ile çevirmen modulu bilgilendirilir. Kelimeler arasındaki uyumsuzlukların giderilmesi amacı ile ATM içerisinde yer alan sözlükten faydalanılır. Federasyon gelitiricisinin elemeyi yapması beklenmektedir. Bu kısmın otomatik olarak yapılması gelecek çalıma olarak bırakılmıtır. 3- Tip farklılıkları SOM dosyaları federelerin özellik, etkileim ve parametreler için kullandıkları tipleri göstermektedir. Dolayısı ile 1 in b1 özellii integer iken federe 2 nin b1 i string ise bu durumda 1 nolu çözümde uygulanan yönteme göre çevirme kuralı hazırlanır. Örnein, Fed dosyasına A.B.b1 yazılmı ise, sadece 2 nin b1 isteklerinde integer dan string e çevirme ilemi gerekecektir. Bu durumda kural 2 cast integer B.b1 olmalıdır. 4- Parametre sayı farklılıı lerin aynı amaçla kullandıkları etkileimlerin parametre sayıları farklı olabilir. Ancak parametre sayılarının eksik yada fazla olması durumlarında çevirmenin federasyon gelitiricisinin belirtecei kurallara balı olarak ilem yapar. Örnein, gereksiz parametrenin bo bırakılması, bir baka etkileimin sonucu yada bir özellik ile doldurulması salanabilir. 5- Birden fazla etkileim yada özellik ile dier bir federenin ihtiyacını karılama Bazen bir federenin ihtiyaç duyduu bir özellik bir baka federe de birden fazla özellik ile tutuluyor olabilir. Örnein, bir federe kompleks veri tipi olarak x, y ve z koordinatlarını

kullanırken dieri ayrı ayrı kullanıyor olabilir. Dolayısı ile deiikliklerin x de yapılan bir deiiklik dierine bildirilirken kompleks veri tipine uygun ekilde bildirilir. Bununla ilgili kural yine kurallar dosyasına yazılır. Eer federe1 in get_kmh etkileimine ihtiyacı varsa ve federe2 get_milh etkileimini yayınlıyor ise federe1 get_kmh = (call get_kmh ) * 1.609344 eklinde kural yazilabilir. 6- lk deer atama Uyum için gerekli balangıç deerlerinin atanması gerekebilir. Bu deerler de yine federasyon gelitiricisi tarafından belirtilir ve Kurallar dosyasına yazılır. 5.2 modulu fedarasyon gelitiricisinin istek ve önerileri dorultusunda hazırlanan kuralları gerçekletiren moduldur. Bu modülü 3 ekilde gerçekletirmek mümkündür. Kodu (a) (b) ekil 8. Yapının Gerçekletirim Alternatifleri (c) ekil 8.a da çevirmen saran(wrapper) kod olarak tasarlanmıtır. kodu orjinal sınıfları yerine dan türemi olan çevirmen sınıflarını kullanmaktadır. Bu yaklaımda federe kodlarına ihtiyaç bulunmaktadır. ekil 8.b, üreticilerinin modülünü ya eklemesi eklindeki gerçekletirimidir. ekil 7.c de, çevirmen bazı özellik ve etkileimler için hiç bir ey yapmadan ya eriime izin verirken, kurallar çerçevesinde bazılarında ilem yapmaktadır. Bunun için orjinal DLL dosyalarının hazırlanacak yeni DLL ile bazı fonksiyonları direk orjinal DLL den çarılırken bazıları ise kurallar çerçevesindeki ilemlerin ardından orjinal dan çarılması eklinde gerçekletirilir. Biz 3. yaklaımın federe ve kodunda deiiklik içermemesi nedeni ile daha esnek bulmaktayız. 5.3 Kurallar Dosyası Bölüm 4.1 de bahsedilen çözüm önerilerine(kurallara) uygun olarak Kurallar Dosyası ATM den salanan bilgiler ııında doldurulmaktadir. Problemin türüne balı olarak bazı kısımları otomatik olarak doldurulurken, bazı kısımları ise federasyon gelitiricisi tarafından doldurulmaktadir. Yapıda kullanılacak olan araçlar ile federasyon gelitirici yönlendirilecektir.

6. Sonuç Önerilen yapı ile bileenlerden otomatik uygulama gelitirmeye bir adım daha yaklaılmıtır. Uygulama alanı olarak HLA ǹın seçilmesinin nedeni salamı olduu standartlar ile bileenlerin kendilerini ifade etmelerinde arayüzlere oranla daha fazla bilgi ihtiva etmesidir. Bileenlerin ortam ile paylatıkları özellik ve metodların önceden bilinmesi otomatik birletirmede ilikili bileenlerin bulunmasını salar. Tüm iletiimin tarafından salanıyor olması farklı programlama dillerinde ve iletim sistemlerinde hazirlanmı olan federelerin beraber çalıması mümkün olmaktadır. ATM son kullanıcının, bileenlerin uyum problemlerı haricinde, soyut düzeyde kalmasını salar. ATM aynı zamanda bileen gelitiricisi için kaynak olmaktadır. Üretici ATM'den alacaı OMT'ler ile sistemdeki dier bileenler ile uyumlu bileen üretmesi mümkün olmaktadır. Yapida yer alan Çevırmen Modulu federeler arsında birleime yönelik uyum problemlerinin çözülmesinde kullanılmaktadır. 7. Kaynaklar [1] Department of Defense (DoD),1996. High Level Architecture Rules, Verison 1.0, dated 15 August 1996. [2] Department of Defense (DoD),1997. High Level Architecture Interface Specification, Verison 1.2 [3] Department of Defense (DoD),1996. High Level Architecture Object Model Template, Verison 1.1, dated 12 March 1997. [4] IEEE Standart for Modeling and Simulation (M&S) High Level Architecture (HLA)- Object Model Template (OMT) Specification, IEEE std 1516.2-2000, 2000. [5] Kang, K. C., Cohen, S. G., Hess, J. A., Nowak, W. E.,Peterson, A.S., Feauture Oriented Domain Analysis(FODA) Feasiblity Study, CMU/SEI-90-TR-21, ADA 235785, Software Engineering Institute, Carnegie Mellon Univesty, Pittsburg, PA, 1990. [6] Kang, K.,Kim, S., Lee, J., Kim, K., Shin, E., Huh, M., FORM : A Feature Oriented Reuse Method with Domain-Specific Reference Architectures, Annals of Software Engineering, Volume 5, J. C. Baltzer AG Science Publishers, Red Bank, NJ, USA,1998, pp. 143-168. [7] Togay, C., Dogru, A., Federasyonların HLA Tabanlı Benzetimlere Tümletirilme Otomasyonu için bir Mekanizma, 1. Ulusal Savunma Uygulamaları Modelleme Simülasyon Konferansı, 2005. [8] Togay, C., Dogru, A., Infrastructure Design for HLA Based Automated Federation Development, Integrated Design and Process Technology,2005