İşsizlik Sigortası Sisteminin Bileşen Yönelimli Modellemesi



Benzer belgeler
Bölüm 2 Varlık-İlişki Veri Modeli: Araçlar ve Teknikler. Fundamentals, Design, and Implementation, 9/e

NESNEYE YÖNELİK PROGRAMLAMA Unified Modelling Language (UML) Bütünleşik Modelleme Dili

BLG Sistem Analizi ve Tasarımı. Öğr. Grv. Aybike ŞİMŞEK

Bilişim Sistemleri. Modelleme, Analiz ve Tasarım. Yrd. Doç. Dr. Alper GÖKSU

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

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

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

TÜMLEŞİK MODELLEME DİLİ. UML (Unified Modeling Language)

Nesneye Yönelik Tasarım ve Programlama (COMPE 501) Ders Detayları

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

Bilgi Sistemleri Tasarımı (SE 503) Ders Detayları

Nesneye Dayalı Analiz ve Tasarım (SE 321) Ders Detayları

SiSTEM ANALiZi ve TASARIMI

Eylül 2007 de v1.0 ı yayınlanan SysML sayesinde endüstri mühendislerinin de ihtiyacı karşılanmış oldu.

BM208- Nesneye Dayalı Analiz ve Tasarım. Sunum 7

Yazılım Mühendisliği Bölüm - 2 Yazılım Geliştirme Yaşam Döngüsü. Cengiz GÖK

Model Güdümlü Geliştirme ile Gömülü Kaynakların Yönetimi

SİSTEM VE YAZILIM. o Bilgisayar sistemleri donanım, yazılım ve bunları işletmek üzere gerekli işlemlerden oluşur.

NESNE YÖNELİMLİ PROGRAMLAMA HAFTA # 6. Yrd.Doç.Dr.Hacer Karacan

Maltepe Üniversitesi Bilgisayar Mühendisliği Bölümü Yazılım Mühendisliği II (BIL 306)

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

Bilişim Sistemleri. Modelleme, Analiz ve Tasarım. Yrd. Doç. Dr. Alper GÖKSU

Yazılım Ürün Hatlarında Alana Özgü Bileşenleri Belirleme Yaklaşımı

TEMEL BİLGİSAYAR BİLİMLERİ. Programcılık, problem çözme ve algoritma oluşturma

EĞİTİM-ÖĞRETİM YILI MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ (İNGİLİZCE) BÖLÜMÜ DERS PROGRAMINDA YAPILAN DEĞİŞİKLİKLER

NESNEYE YÖNELİK TASARIM SÜRECİ

1.Yazılım Geliştirme Metotları 1

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

BMH-405 YAZILIM MÜHENDİSLİĞİ

ANKARA ÜNİVERSİTESİ ELMADAĞ MESLEK YÜKSEKOKULU BİLGİSAYAR PROGRAMCILIĞI PROGRAMI DERS İÇERİKLERİ

ÖNSÖZ ŞEKİL LİSTESİ TABLO LİSTESİ

Sistem ve Yazılım Nedir?

YAZILIM MİMARİLERİ DERSİ BİLGİSAYAR PROGRAMCILIĞI

WEB PROJESİ YÖNETİMİ. Belli bir süre içerisinde, belli bir bütçe ile belirlenen hedeflere ulaşmak için uygulanan metodolojik süreçtir.

Fundamentals of Object-Oriented Programming (COMPE 723) Ders Detayları

İleri Yazılım Mimarisi (SE 658) Ders Detayları

FEN BİLİMLERİ DERSİ ÖĞRETİM PROGRAMI (3, 4, 5, 6, 7 VE 8. SıNıF) TANITIMI. Öğretim Programı Tanıtım Sunusu

Yazılım Mühendisliği 1

MONTAJ MODELLEME ( ASSEMBLY MODELING)

NX Motion Simulation:

Sinirsel Benzetim ve NSL. İlker Kalaycı 06, 2008

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

Yazılım Örüntüleri (SE 461) Ders Detayları

Yazılım Gereksinimlerinin Görsel Çözümlemeleri: UML (UnifiedModeling Language) Birleştirilmiş Modelleme Dili

Yazılım Mühendisliğinde İleri Konular (SE 650) Ders Detayları

Bir yazılım geliştirme metodolojisi aşağıdaki adımlardan meydana gelir; Yazılım geliştirme sürecine destek verecek araçlar, modeller ve yöntemler.

Orion Bina Tasarım Sistemi Modelleme Teknikleri Prota Yazılım Ltd.Şti.

YAZILIM KAVRAMINA BİR BAKIŞ. Gürcan Banger Elektrik Yük. Müh. ESOGÜ - 9 Nisan 2007

Elbistan Meslek Yüksek Okulu Güz Yarıyılı

Hızlı Uygulama Geliştirme (Rapid Application Development - Rad Model)

Bilgisayar Oyunları ve Simulasyon (COMPE 376) Ders Detayları

TÜRKİYE'DEKİ İŞÇİ SAĞLIĞIve İŞ GÜVENLİĞİ(İSİG) SORUNUNUN GENİŞ ÖLÇEKTEKİ ÇÖZÜMÜNE YÖNELİK GRAFİKSEL MODEL

YAZILIM MÜHENDİSLİĞİNİN TEMELLERİ 9.Hafta. Bakım

DGridSim Gerçek Zamanlı Veri Grid Simülatörü. Yazılım Tasarımı Dokümanı v Mustafa Atanak Sefai Tandoğan Doç. Dr.

VERI TABANLARıNDA BILGI KEŞFI

O P C S T A N D A R D I

Yıldız Teknik Üniversitesi Bilgi Sistemi AutoCAD Map İle Gerçekleştirilen Bir Uygulama

END3061 SİSTEM ANALİZİ VE MÜHENDİSLİĞİ

08225 AĞ TEMELLERĠ. Elbistan Meslek Yüksek Okulu GÜZ Yarıyılı. Öğr. Gör. Murat KEÇECĠOĞLU. 20 EKi Salı, Çarşamba

BAŞVURU FORMU ÖRNEK DÖKÜMAN

BİLGİSAYAR DESTEKLİ TASARIM AUTOCAD DERSİ. 1. HAFTA Öğr. Gör. Serkan ÖREN

Giriş: Temel Adımlar YAZILIM GELİŞTİRME YAŞAM DÖNGÜSÜ. Belirtim Yöntemleri. Belirtim Yöntemleri

Asp.Net Veritabanı İşlemleri

BİLİŞİM TEKNOLOJİLERİ NESNEYE DAYALI PROGRAMLAMA C# GELİŞTİRME VE UYUM EĞİTİMİ MODÜLER PROGRAMI (YETERLİĞE DAYALI)

Sistem Geliştirme Yaşam Döngüsü (The Systems Development Life Cycle) (SDLC)

BİLİŞİM TEKNOLOJİLERİ GÖRSEL PROGRAMLAMA MODÜLER PROGRAMI (YETERLİĞE DAYALI)

Programlama Dillerinde Kullanılan Veri Tipleri

<Ekip Adı> <Proje Adı> Yazılım Gereksinimlerine İlişkin Belirtimler. Sürüm <1.0>

Mobil Uygulama Geliştirmeye Giriş (ISE 407) Ders Detayları

İnternet Programcılığı

Mekatroniğe Giriş Dersi

KULLANILABİLİRLİK TESTLERİ VE UYGULAMALARI

AVRUPA BİRLİĞİ HAYAT BOYU ÖĞRENME İÇİN KİLİT YETKİNLİKLER

Nesneye Dayalı Programlama

Chapter 5 Sistem Modelleme. Lecture 1. Chapter 5 System modeling

Öğretim planındaki AKTS Ulusal Kredi

Veritabanı ve Yönetim Sistemleri

YAZILIM ÜRÜN HATTINDA YETENEK MODELİNDEN ÜRÜN KONFİGÜRASYONUNUN OLUŞTURULMASI

Bilgisayar Mühendisliği. Bilgisayar Mühendisliğine Giriş 1

Veri Tabanı Yönetim Sistemleri Bölüm - 3

Akdeniz Üniversitesi

1. Medisoft ile ETS arasındaki bütünle ik yapı : hatasız ve hızlı ETS hastane otomasyonu için neden çok önemlidir :

YARIM GÜN ÇALIŞMA İSMMMO SMMM DR GÜLSÜM ÖKSÜZÖMER YILMAZ İŞ VE SOSYAL GÜVENLİK DANIŞMANI

Yapısal Analiz Programı SAP2000 Bilgi Aktarımı ve Kullanımı. Doç.Dr. Bilge Doran

Veritabanı Yönetim Sistemleri (Veritabanı Kavramı) İş Kuralları ve Veri Modelleri

GÜN IŞIĞI KULLANILARAK İÇ MEKANLARIN AYDINLATILMASI

YAZILIM MODELLEME VE TASARIM

CELAL BAYAR ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ STAJ YÖNERGESİ

İNSANSIZ HAVA ARACI PERVANELERİNİN TASARIM, ANALİZ VE TEST YETENEKLERİNİN GELİŞTİRİLMESİ

BİT in Temel Bileşenleri (Yazılım-1)

Hızlı Uygulama Geliştirme (SE 340) Ders Detayları

MerSis. Bilgi Teknolojileri Yönetimi Danışmanlık Hizmetleri

NESNE YÖNELİMLİ PROGRAMLAMA HAFTA # 10. Yrd.Doç.Dr.Hacer Karacan

9.DERS Yazılım Geliştirme Modelleri

BİLİŞİM TEKNOLOJİLERİ WEB PROGRAMCISI MODÜLER PROGRAMI (YETERLİĞE DAYALI)

BENZETİM. Prof.Dr.Berna Dengiz. 4. Ders Modelleme yaklaşımları Benzetim yazılımlarında aranan özellikler M/M/1 Kuyruk Sistemi benzetimi

4. Sunum: AC Kalıcı Durum Analizi. Kaynak: Temel Mühendislik Devre Analizi, J. David IRWIN-R. Mark NELMS, Nobel Akademik Yayıncılık

Sistem Analizi Ders Notları Bölüm 2

İşsizlik sigortası nedir, nasıl alınır?

SENTEZ TABANLI YAZILIM MİMARİSİ TASARIM YAKLAŞIMININ ESSENCE ÇERÇEVESİYLE MODELLENMESİ

Transkript:

İşsizlik Sigortası Sisteminin Bileşen Yönelimli Modellemesi Hüseyin Cahit Ekiz 1, Ali Hikmet Doğru 2, Halit Oğuztüzün 3 1,2,3 Bilgisayar Mühendisliği Bölümü Orta Doğu Teknik Üniversitesi 06531 Ankara 1 cahitekiz@ada.anet.tr 2, dogru@metu.edu.tr, 3 oguztuzn@metu.edu.tr Özet. Bu tebliğde COSEML modelleme dili kullanılarak İşsizlik Sigortası Sisteminin Bileşen Yönelimli Modellemesi içerilmektedir. 1999 yılı Eylül ayında çıkan İşsizlik Sigortası Kanununun 2000 yılı Haziran ayında başlayan uygulamasının otomasyonu için geliştirilmiş bir yazılım sisteminin, grafik araç ile modellemesi sunulmaktadır. COSEML ve işsizlik sigortası konuları özetlendikten sonra modelin değişik görünüşlerine yer verilmektedir. 1 Giriş Bu çalışma İşsizlik Sigortası uygulamalarını destekleyen bir yazılım sisteminin COSEML (Component Oriented Software Engineering Modeling Language) ile bileşen (component) tabanlı olarak geliştirilen modelini sunmaktadır. COSEML henüz yeni gekiştirilmiş bir dildir [1]. Bu dil aslında daha geniş bir perspektiften bakılacak olursa, kod yazma yerine tümleştirme yolu ile sistem geliştirme anlayışını desteklemektedir. Bileşen tabanlı teknolojiler olgunlaşmış, ama bunların gizledikleri kabiliyetlerinden yararlanacak mühendislik yaklaşımları henüz yeterli düzeye ulaşmamıştır [2]. Bu olgu, nesne yönelimli (Object Oriented) dillerin önce ortaya çıkması ve nesne yönelimli metodolojilerin daha sonra bulunması gibidir. COSEML, bileşen teknolojilerinin kolaylaştıracağı tümleştirmeye yönelik yaklaşımı gerçekleştirecek bir metodoloji çalışmasının ara ürünüdür. Diğer taraftan, İşsizlik Sigortası devlet tarafından tesis edilmiş bir sigorta sistemidir. İşini kaybeden bir işçinin ya da ailesinin kısmen de olsa gelir edinebilmesi amacıyla ortaya çıkarılmıştır. Bir mukavele ile kanunun kapsadığı bir işyerinde çalışan bir işci, çalışmaya isteği, kabiliyeti ve elverişli sıhhatine rağmen kendi isteği dışında işini kaybederse ve çalıştığı sürece işsizlik sigortası ödemelerini de yapmışsa, devlete çalışma isteği ile başvurduğunda sözkonusu gelir için hak kazanmaktadır. Yazılımın üç ana birimi vardır: Kayıt, Uygunluk ve Ödeme. Ayrıca daha önceden mevcut olan ve İnsan Kaynakları sistemi ile İş Müracaat ve Yönlendirme sistemlerinin parçası olan İnsan Kaynakları ve Müracaatcı birimleri de geliştirilen İşsizlik Sigortası yazılımının bir parçası gibi çalışacaklardır [3]. Bu yazılımın grafiksel modellemesi, akademik prototip düzeyinde geliştirilmiş COSECASE aracı [4] ile yapılmıştır. 1

2 Bileşen Yönelimi Yazılım sahası, değişik tekniklerin önce ortaya çıktığı ve bu teknikleri kullanan mühendislik yaklaşımlarının sonradan geliştiği bir tarihçe sergilemektedir. Nesne yönelimli dillerin yaygınlaşmasını izleyen bir kaç yıl içinde nesne yönelimli metodolojiler ortaya çıkmıştır. Günümüzde bileşen teknolojileri yaygınca kullanılır hale gelmiş, ancak metodolojileri henüz olgunlaşmamıştır. Bileşenler günümüzde değişik araçların desteğini almış ve çoğu ortam onları en azından nesne yönelimli metodolojiler içerisinde uygunca temsil edilebilecekleri bir şekilde uyarlamıştır. Yönelimli ya da tabanlı nitelemesiyle araç ve yöntemler, bileşen teknolojisini bir şekilde mühendislik düzeyinde kullanma çabasındadırlar. Çoğu yaklaşım da bu yeni teknolojinin temelinde gizli olan büyük gücü göremeyip bileşenleri ancak dışlamamak üzere yapılandırılmıştır. Bazı nesne yönelimli ortamların (diller ve derleyiciler) tam yönelimleri olmadığı halde bu isimlendirmeyi kullanmaya çalıştıkları olmuştur, ancak nesne tabanlı isimlendirmesi bu ortamlar için daha uygun bulunmuştur. Günümüzde bileşen yönelimli yerine bileşen tabanlı, hatta bileşen uyumlu denebilecek ortamlar söz konusudur. Aslında yeni teknolojinin sunduğu görünen yararların yanında, temelden bir anlayış değişimini destekleme olanağı da ortaya çıkmıştır. Artık sahanın özellikle büyük projelerde alışılmış olan başarısızlıklarla dolu tarihi, belki de sıfırdan geliştirme külfetinden kurtularak aşılabilecektir. Geleneksel mühendislik disiplinlerinin çoktan farkettiği bileşen temelli yaklaşımların yazılım sahasında da olgunlaşması beklenmekteydi. Saha bileşen yönelimi kazandıkça, mevcut kod parçaları bileşen mimarilerine uyarlanacak ve değişik sahaların bileşen kümeleri standartlaşıp tanınır duruma gelecektir. İstenen yönelim, yaşam döngüsünün tümü boyunca kod geliştirmeyi hedeflemeyen, ancak sistemi mevcut bileşenleri bulup birleştirerek ortaya çıkarmayı amaçlayan görevlerle edinilebilecektir. Tümleştirme zor bir çaba türüdür. Ancak sözügeçen tümleştirme yolu ile geliştirme anlayışı (paradigması) bu konuda ek bir zorluk getirmemektedir. Aksine yönelim uygun olduğu için daha ayrıştırma evresinde tümleştirmenin belirtimi yapılmalı, arayüz (interface) tanımları ortaya çıkmalıdır. Bu şekilde yapısallaştırılmış bir ayrıştırma ve sonunda birleştirme, tümleştirme karmaşıklığını azaltabilecektir. Ayrıca, risk taşıyan yeni kod geliştirme çabasından hemen hemen tamamı ile kurtulunmak hedeflenmektedir. Doğal olarak her zaman tam istenen bir bileşenin hazır olarak bulunamayacağı durumlar ortaya çıkacaktır: bu bileşenler yine de kod geliştirerek edinilebilir. Bu tür geliştirmeler için günümüze kadar gelmiş herhangi bir yaklaşım kullanılabilir. Bileşen tabanlı yazılım mühendisliği konuları genellikle bileşenlerin oluşturulması ve sonra da birleştirilmesi şeklinde iki ayrı çaba türü altında sınıflandırılabilir. Bu tebliğde savunulan yaklaşım, bileşenlerin nasıl geliştirildiği ile ilgili değildir. Esas zorluğu oluşturan büyük bir sistem tanımı verildiğinde çözümün üretilmesidir. Bu yüzden önerilen yaklaşım tümleştirme ile ilgilidir. Alt-çözüm parçacıklarının daha önce üretildiği, üretilmemişse bile yeniden geliştirilmesinin esas problem yanında basit olacağı varsayılmaktadır. 2

2.1 COSEML Önerilen geliştirme yaklaşımı [5], bu amaçla oluşturulmuş bileşen yönelimli yazılım mühendisliği modelleme dili olan COSEML ile desteklenmektedir. Bu grafık dil, soyut seviyede sistem ögelerini tanımlar ve bütün/parça ilişkilerini belirtir. Sistemin sıradüzensel yapısını görsel olarak ön planda tutmayı hedefler. Temelde bir yapı tasarımı aracı olarak algılanabilecek bu ortamda sistem tepeden aşağıya doğru bir sırada parçalarının tanımı ile belirtilir. Ögeler arası arayüzler de tanımlanır. Ayrıştırma, yaklaşımın temel etkinliğidir; her yöntemde tasarımcının yükleneceği yaratıcılık bu etkinlikte kendisini gösterir. Etkin bir ayrıştırma yeteneği deneyimle kazanılacaktır: mantıksal olarak ögelerin sınırlarına karar verirken ileride bu ögelere karşı düşecek bileşenlerin mevcut olması da gözetilmelidir. Soyut düzeyde öge, veri, işlev ve kontrol (package, data, function, control) elemanları tanımlanmıştır. Öge birimleri ile sistemin yapısal parçalanması tanımlanır. Bütün sistem bir ögedir. Her ögenin alt ögeleri olabilir. Aslında ögeler, temsil edebilecekleri bileşenlerin soyut belirtimleri olarak kullanılabilirler. Onlara soyut ya da mantıksal bileşenler de denebilir. Bir öge, diğer ögelere ayrıştırılabileceği gibi, veri, işlev ve kontrol elemanları da içerebilir. Ayrıştırma şeklinde başlayıp gelişen sistem belirtimi, daha sonra alt düzeylerdeki mantıksal elemanların gerçek bileşenlere denk düşürülmesi ile tasarımın ileri aşamalarına ulaşır. Bileşenler ve arayüzleri, COSEML in uygulama düzeyindeki grafik elemanlarıdır. Bir bileşenin birden çok arayüzü olabilir. Sonuç olarak alt düzeyde yeniden kullanılabilir somut bileşenler ve üst düzeyde bunların mantıksal çözümlenişi ortaya çıkmaktadır. Modelin üst düzeyi de etkin olarak yapılandırılabilmişse, tasarım örüntülerinde (Design Patterns) olduğu gibi tekrar kullanılabilecek soyut çözüm parçacıklarına karşılık gelecektir. Bağlantılar (connector) soyut elemanları olduğu gibi uygulama düzeyindeki elemanları da birbirine bağlar. Mesajlar bu bağlantı elemanları içerisinde taşınacaklardır. Bir bağlantı, birden çok mesaj belirtimi içerebilir. Mesajlar işlev çağırır ya da olay bildirirler. Özet olarak yapı boyutunu öne çıkaran bir ayrıştırma ile sistem tanımının modellenmesi istenmektedir. Nesne yönelimli yaklaşımlarda ana boyut veri dir: aslında nesneler, ulaşım metodları ile desteklenmiş veri yapılarıdır. Geleneksel yaklaşımlarda ise modelleme çalışması veri ya da işlev ekseninde başlar, ama sonunda bir işlevler hiyerarşisi şeklinde bütün sistem modellenir. Esas boyut işlevdir. Tasarımın üç temel boyutu olan veri, işlev ve yapı böylece paylaşılmış olur. Yeni gelişen bileşen yönelimli yaklaşımlar, temel boyut olarak yapıya önem verirler. COSEML dilinin geliştirilme nedeni, hem sıradüzen hem de grafik belirtim önceliklerine sahip bileşen yönelimli modelleme dillerinin bulunmamasıdır. Genelde nesneye yönelik bir yaklaşım içerisinde bileşenlerin de temsil edilmesine yönelik bileşen tabanlı ( yönelimli dense bile) teknikler mevcuttur. 3

3 İşsizlik Sigortası İşçilerin ve işyerlerinin, işsizlik sigortası kapsamındaki hak ve sorumlulukları, 2000 yılı itibari ile kanunen başlamıştır. İşyerleri iş kaybı formlarını 3 nüsha olarak hazırlamakla yükümlüdürler. İşveren, 15 gün içerisinde bir nüshayı işçiye, diğer bir kopyayı da İş ve İşçi Bulma Kurumuna göndermelidir. Sigortalı işçi, iş kaybı formu ile Kuruma işin sonlandırılmasından en geç bir ay süre içinde başvurmalıdır. Ödeme süreleri 600 günlük ödenmiş sigorta süresi için 180 gün, 900 gün için 240 gün ve 1080 gün için 300 gündür. Günlük ödemeler, çalışılan son 4 ayda sigorta aidatlarına temel oluşturan gelir üzerinden hesaplanır ve gün başına bu gelirin yarısı olarak ödenir. Her ayın sonunda yapılan ödemeler, uygunluğun oluştuğu ayın sonunda başlatılır. Bu esnada kurum işçiye eski işine benzer işler bulmaya çalışır ve iş eğitimleri temin eder. Ancak yeni bir işin bulunması ya da kurumun önerdiği işin reddedilmesi gibi nedenlerden uygunluk, geçici ya da süresiz olarak ortadan kalkabilir. Sosyal Sigortalar Kurumu na ödeme süresince işsislik sigortasından para aktarımı da sözkonusudur. 4 İşsizlik Sigortası Sistemi Modellemesi Bu bölümde daha önceden mevcut olan tasarım modellerinden alıntılar ile sistemin tanımı desteklenmektedir. Aslında Kayıt, Uygunluk ve Ödeme şeklinde sistemin 3 ana kabiliyeti vardır. Bu kabiliyetler altındaki 23 sistem işlevi, 8 veri tabanı tablosu ile ilişkilendirilmiştir. Tablo 1, bu veri tabanı tabloları ile 5 sistem işlevini ilişkilendirmektedir. Tablo 1. Veritabanı tabloları ile sistem işlevlerinin ilişkileri Veritabanı Tablosu Kayıt Uygunluk Ödeme işsizlik işyeri iş kaybı bildirimi Müracaatçılar X X İşyerleri X X Faal formlar X X X Bildirim formları X X Sigorta kesintileri X Pasif formlar X X Ödemeler X SSK ödemeleri X COSEML modelinde sistem kabiliyetleri alt sistemler olarak (en üst süzeydeki ögeler), üst düzey sistem işlevleri ise bunların altındaki ögeler olarak modellenmiştir. Ayrıca veritabanı tabloları veri elemanları olarak ve daha alt düzeydeki sistem işlevleri ise işlev 4

elemanları olarak modellenmiştir. göstermektedir. Şekil 1, en üst düzeydeki ayrıştırmayı İşsizlik sigortası sistemi personel müracaatçı kayıt uygunluk ödeme Şekil 1. İşsizlik sigortası sisteminin ilk ayrıştırması İlk ayrıştırmadan sonra geliştirilen bölümü oluşturan Kayıt, Uygunluk ve Ödeme birimlerinin ayrıştırılması farklı şekillerde verilecektir. COSEML ile oluşturulan modellerde tek bir diyagram olması gerekmemektedir. Şekil 2 Kayıt ögesinin ayrıştırılmasını göstermektedir. Bu şekilde alt birimler arası bağlantılar da içerilmiştir. kayıt İşsiz kayıt İş kaybı bildirim kayıt İşyeri kayıt Şekil 2. Kayıt biriminin parçaları Modelin bu makalede yansıtılan kısmı, detay düzeylerinde de örnek içerilmek üzere Şekil 2 deki işsiz kayıt ögesinin açılması ile devam etmektedir. Bu açılım Şekil 3 te gösterilmektedir. 5

İşsiz kayıt yeni kayıt müracaatçılar kayıt arama Kayıt güncelleme ekle ara güncelle kayıt ekleme müracaatçılar yeni ekle bilgi ver kimlik no ver kayıt arama müracaatçılar No ile arama İsim ile arama kayıt güncelleme müracaatçılar güncelle (no, kayıt) Şekil 3. Kayıt biriminin parçaları Şekil 3, daha önce tanımlanan mantıksal birimlerin olası bileşenlere denk düşürülmesini de göstermektedir. Kesikli çizgiler, bir mantıksal ögenin tanımladığı işi üstlenen bileşenleri bu ögelere bağlamaktadır. COSEML uyarınca bileşenler dikdörtgen kutular şeklinde çizilip değişik arayüzleri ayrıca gösterilebilmektedir. Ancak tek arayüzü olan bileşenlerin içerisine arayüz ayrıntıları konulabilmektedir. Şekil 3 deki 3 adet bileşen de bu kurala uymaktadır. Birer adet arayüzleri olduğundan arayüzde belirtilmesi gereken özellik, işlev ve olaylar (şekil 3 olay içermemektedir) bileşenlerin içerisine çizilmiş yatay çizgilerle ayrılmış olarak gösterilmektedir. Son olarak, iş kaybı bildirim kayıt paketi ile müracaatçılar arasında bir etkileşimi göstermek üzere iki birimden de elemanları içeren bir diyagram şekil 4 te sunulmaktadır. Değişik bileşenler arası bilgi alışverişini mesajlarla gerçekleştirmek için bu bileşenleri tanımlayan mantıksal ögeler arasında da bağlantılar olması gerekmektedir. Şekil 4 hem bu soyut bağlantıyı hem de gereken mesaj bağlantısını göstermektedir. 6

İşsiz kayıt İş kaybı bildirim kayıt kayıt arama müracaatçı arama müracaatçı ara kayıt arama müracaatçılar No ile arama İsim ile arama aday kaydı aday arama müracaatçı No ile bul İsim ile bul Şekil 4. İşsiz kayıt ve işyeri kayıt birimleri arasında etkileşim örneği Modelin yapısal ayrıştırılması ve birimler arasındaki etkileşime örnek oluşturacak alıntılar bunlardır. Modeldeki elemanlar kullanılarak UML (Unified Modeling Language) diyagramlarından biri olan işbirliği diyagramı da çizilebilir [6]. Nitekim Şekil 4 teki tek mesaj bağlantısında UML mesajlarının biçemine uygun olarak mesajın taşıdığı sonuç parametresi, mesaj oku ile ilişkili ayrı bir ok üzerinde yazılıdır. UML mesajlarının tersine, mesajın adı okun üstünde değil, okun ucunun gösterdiği arayüz işlevinde yazılıdır. Bu mesaj ismi, bir işlev ya da olay ismi olmak durumundadır. 5 Sonuç İşsizlik sigortası sisteminin COSEML dili ile modellemesini açıklayacak nitelikte bu modelin bir alt kümesi sunulmuştur. Yapısal ayrıştırma tabanında model, mantıksal ve fiziksel ögeleri sıradüzen sunumunda düzenlemiş ve birimler arası etkileşimi sağlayan bağlantıları içermiştir. Bu makalede bileşen yönelimli yaklaşım ile karmaşık sistemlerin modellenmesinde anlaşılabilirlik öne çıkarılmaya çalışılmıştır. Yapılan çalışmanın tümü burada gösterilmemekle birlikte, benzer çalışmalarda olumlu tasarımcı izlenimleri kaydedilmiştir. Karşılaşılan zorluklar aracın mevcut versiyonunun yetersizliklerinden kaynaklanmıştır. İşsizlik Sigortası sisteminin daha önce nesne yönelimli modelinin yapılmış olması bileşen yönelimli modeli kurmada tasarımcıya avantaj sağlamış olabilir. Bu ve benzeri çalışmalar, mevcut nesne yönelimli tasarımı bulunan projeler için 7

yapılmıştır. Ayrıca üniversite öğrencileri tarafından ders projeleri COSEML ile yapılmış ve nesne yönelimli modelleri ile bir karşılaştırma çalışması da tamamlanmıştır [7]. Bu çalışma sonucunda yeni yaklaşımın modelleme gücünden ödün vermeden, az da olsa daha kolay anlaşılır olduğu gibi gözlemler edinilmiştir. Bundan sonra gerçek sanayi projelerinden oluşacak pilot çalışmaların COSEML ile başından planlanarak geliştirilmesi ve gerçek uygulama deneyimleri edinilip değerlendirmeleri yapılmalıdır. Ayrıca COSEML dilinı öneren bileşen yönelimli yaklaşım için metodolojik düzeylerde daha fazla yönlendirici bilgilerin de oluşturulması, gerçek projelerde kullanım için yararlı olacaktır. Kaynakça 1. Doğru, A.H., Component-Oriented Software Engineering Modeling Language: COSEML, 1999 Technical Report TR-99-3, Computer Engineering Department, Middle East Technical University, Ankara Turkey. 2. Szyperski, C. Component Software: Beyond Object-Oriented Programming, 1998, Addison Wesley, New York. 3. Kara A. A Graphical Editor for Component Oriented Modeling, Master s Thesis, Department of Computer Engineering, METU, Ankara, Nisan 2001. 4. Ekiz, H.C. Component-oriented modeling of the Unemployment Insurance System using COSEML, Master s Thesis, Department of Computer Engineering, METU, Ankara, Aralık 2001. 5. Dogru A.H. and Tanik M.M. A Process Model for Component-Oriented Software Engineering, IEEE Software, Mart-Nisan 2003, Cilt. 20 No. 2, s. 34-41. 6. Booch, G., Rumbaugh, J., Jacobson, I. The Unified Modeling Language User Guide, 1999, Addison-Wesley. 7. Altıntaş, I. A Comparative Study for Component Oriented Design Modeling. Master s Thesis, Computer Engineering Department, Middle East Technical University, Ankara Mayıs, 2001. 8