230 likes | 548 Views
YAZILIM ETMENLERİ: AÇIK, DİNAMİK VE HETEROJEN ORTAMLARDA YAZILIM GELİŞTİRME İÇİN BİR TEKNOLOJİ. Ayşegül Alaybeyoğlu Rıza Cenk Erdur Ege Üniversitesi Bilgisayar Mühendisliği. İÇERİK. Yazılım Etmenleri Teknolojisi Etmenlerin Genel Özellikleri
E N D
YAZILIM ETMENLERİ: AÇIK, DİNAMİK VE HETEROJEN ORTAMLARDA YAZILIM GELİŞTİRME İÇİN BİR TEKNOLOJİ Ayşegül Alaybeyoğlu Rıza Cenk Erdur Ege Üniversitesi Bilgisayar Mühendisliği
İÇERİK Yazılım Etmenleri Teknolojisi Etmenlerin Genel Özellikleri Etmenler ile Yazılım Bileşenlerinin Karşılaştırılması Etmenlerinin Kullanıldığı Başlıca Uygulama Alanları Etmenlerin Bu Uygulama Alanlarında Kullanımlarının Sağladıkları Avantajlar Araba Aramaya Yönelik Bir Çok Etmenli Sistem Tasarım Uygulaması
YAZILIM ETMENLERİ TEKNOLOJİSİ Açık, dinamik ve heterojen ortamlar İnternet
ETMENLERİN GENEL ÖZELLİKLERİ Birincil Özellikler İkincil Özellikler
ETMENLERİN GENEL ÖZELLİKLERİ Birincil Özellikler Özerklik Karşıt-Eylemlilik Amaç-Yönelimlilik Sosyal Yetenek Kalıcı Süreklilik
ETMENLERİN GENEL ÖZELLİKLERİ İkincil Özellikler Gezicilik Öğrenme Akılcılık Dürüstlük Olumluluk
ETMENLER İLE YAZILIM BİLEŞENLERİNİN KARŞILAŞTIRILMASI İletişim ve Mesaj Ortam ile Etkileşim Durum Etkileşim Mekanizması Çalışma Zamanı
YAZILIM ETMENİ TEKNOLOJİSİNİN BAŞLICA UYGULAMA ALANLARI Bilgi Arama ve Filtreleme Alanı Elektronik Ticaret Telekomünikasyon Ağ yönetimi Telekomünikasyon Servis Yönetimi
YAZILIM ETMENİ TEKNOLOJİSİNİN BAŞLICA UYGULAMA ALANLARI Bilgi Arama ve Filtreleme Kaynaklardan Bilginin Toplanması ve Süzgeçten Geçirilmesi İçerik Tabanlı Filtreleme İşbirlikçi Filtreleme
YAZILIM ETMENİ TEKNOLOJİSİNİN BAŞLICA UYGULAMA ALANLARI Elektronik-Ticaret Etmenlerin bu uygulama alanındaki rolü Özerklik Süreklilik
YAZILIM ETMENİ TEKNOLOJİSİNİN BAŞLICA UYGULAMA ALANLARI Telekomünikasyon Ağ Yönetimi Etmenlerin bu uygulama alanındaki rolü Dağıtık Yapı Özerklik Esneklik İletişim Alarm
YAZILIM ETMENİ TEKNOLOJİSİNİN BAŞLICA UYGULAMA ALANLARI Telekomünikasyon Servis Yönetimi Etmenlerin bu uygulama alanındaki rolü Kompleksliği Azaltma Uyum İstenmeyen Etkileşimleri Engelleme
Uygulama Eclipse, Java uygulama geliştirme ortamında gerçekleştirilmiştir.Gerçekleştirim aşamasında, JADE etmen geliştirme aracından faydalanılmıştır. Ontolojilerin ayrıştırılması ve sorgunun çalıştırılması için Jena kütüphanelerindenyararlanılmaktadır . • Araba satan veya kiralayan şirketlerin bünyesinde çok çeşitli araçlar bulunmaktadır. Bu çalışmada bu tarz şirketlerdeki araçların etmen tabanlı olaraksorgulanabilmesi amaçlanmıştır ve FIPA uyumlu çok etmenli bir sistem geliştirilmiştir. ARABA ARAMAYA YÖNELİK BİR ÇOK ETMENLİ SİSTEM TASARIMI UYGULAMASI
SABPO Metodoloji Adımları • Rollerin Belirlenmesi • Kullanıcı Rolü • Hizmet Sunucu Rolü • Servis Tespit Rolü • 2. Rollerin Etmenlere Eşlenmesi • Kullanıcı Rolü : UserAgent • Hizmet Sunucu Rolü : VehicleFinderAgent • Servis Tespit Rolü : DFAgent ARABA ARAMAYA YÖNELİK BİR ÇOK ETMENLİ SİSTEM TASARIMI UYGULAMASI
ARABA ARAMAYA YÖNELİK BİR ÇOK ETMENLİ SİSTEM TASARIMI UYGULAMASISistem Bileşenleri
ARABA ARAMAYA YÖNELİK BİR ÇOK ETMENLİ SİSTEM TASARIMI UYGULAMASI3. Sistemler Arası Etkileşimlerin Belirlenmesi
E ARABA ARAMAYA YÖNELİK BİR ÇOK ETMENLİ SİSTEM TASARIMI UYGULAMASI4. Senaryolar İçin Planların Tanımlanması
ARABA ARAMAYA YÖNELİK BİR ÇOK ETMENLİ SİSTEM TASARIMI UYGULAMASI4. Senaryolar İçin Planların Tanımlanması
ARABA ARAMAYA YÖNELİK BİR ÇOK ETMENLİ SİSTEM TASARIMI UYGULAMASI5. Ontolojilerin Modellenmesi “Vehicle.owl”, araçların markalarını, ağırlıklarını ve motor büyüklüklerini göstermek amacıyla, Protege ontoloji geliştirme aracı kullanılarak modellenmiş bir OWL ontolojisidir. Ontolojide araçlar kategorilere ayrılmıştır. “MotorVehicle” bütün araç sınıfını belirtir. “MotorVehicle” sınıfına ait “weight” ve “engine_size” nitelikleri üzerinde “1” sayı kısıtı uygulanarak, her aracın sadece 1 tanesinin özelliklerinin belirlenmesi sağlanmıştır.
ARABA ARAMAYA YÖNELİK BİR ÇOK ETMENLİ SİSTEM TASARIMI UYGULAMASI 6. Platform/Framework İle Gerçekleştirim JADE çok etmenli sistem geliştirme platformu seçilmiştir ve gerekli etmenler oluşturulmuştur. 7. Test Sistem örnek senaryolar ile test edilmiştir
Etmenlerin sahip olduğu özerklik, çıkarsama yapabilme, hedefleri doğrultusunda planlar yapıp bunları uygulamaya geçirebilme, ortamı dinleyen ve algılayan yapısıyla gerektiğinde planlarında değişiklik yapabilme gibi akıllı olarak nitelendirilebilecek özellikleri, etmenlerin kullanılma nedenlerinin başında geldiği görülmüştür. • Uygulamalarda etmenlerin kullanımının sağladığı avantajlar incelenerek, ulusal yazılım sektörünün, etmen tabanlı yazılım geliştirmeye doğru bir geçiş yapmasıyla daha iyi, etkin uygulamalar geliştirilebileceği sonucuna varılmıştır. SONUÇLAR
Dinlediğiniz İçin Teşekkür Ederim... Ayşegül Alaybeyoğlu Rıza Cenk Erdur Ege Üniversitesi Bilgisayar Mühendisliği