Elektronik Seyir Sistemleri Yazılım Ürün Ailesi İçin Analiz ve Tasarım Süreci

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

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

Geleneksel Yazılım Mühendisliğinden Alana Özel Yazılım Mühendisliğine Doğru

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

SİSTEM ANALİZİ VE TASARIMI

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

Olay Tabanlı Bir Yazılım Mimarisinde Bağımlılık İletimi ve Bileşen Gerçekleştirimi

Büyük Ölçekli bir Gömülü Yazılımın Geliştirme ve Otomatik Test Deneyimi

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


Enterprise Architecture(EA) KURUMSAL MİMARİ

Deniz Savunma Sistemleri Alanında Sistematik Yazılım Yeniden Kullanım Yaklaşımı

Yazılım Geliştirme Sürecinde Değer Akış Haritalama Yöntemi Uygulama Çalışması

T.C. DOKUZ EYLÜL ÜNİVERSİTESİ FEN FAKÜLTESİ BİLGİSAYAR BİLİMLERİ BÖLÜMÜ. BİL4007 Bitirme Projesi Uygulama Planı

Yazılım Mühendisliği 1

System Storage DS3200, DS3300 ve DS3400 Hızlı Kuruluş Kılavuzu

SU KAÇAKLARININ COĞRAFĐ BĐLGĐ SĐSTEMĐ TABANLI TESPĐTĐ: ANTALYA SU VE ATIKSU GENEL MÜDÜRLÜĞÜ UYGULAMALARI

2013/101 (Y) BTYK nın 25. Toplantısı. Üstün Yetenekli Bireyler Stratejisi nin İzlenmesi [2013/101] KARAR

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

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

Otomasyon Sistemi. Dünya CBS Günü Zirve ve Sergi Etkinliği Kasım 2015 / Ankara

PROJE TEKLİF FORMU FİZİBİLİTE RAPORU HAZIRLANMASI GEREKMEYEN KAMU YATIRIM PROJESİ TEKLİFLERİ İÇİN

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

Sade ve tam ekran masaüstü kullanımının temel çıkış noktası, aranılan özelliğe çabuk erişimi sağlayan yenilikçi kullanıcı deneyimidir.

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

DEMİRYOLU SİNYALİZASYONUNDA YERLİ ADIMLAR

ArcGIS ile Su Yönetimi Eğitimi

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

Yazılım Geliştirme Projelerinde Kontrolörlük / Müşavirlik Hizmetleri. Y.Müh. Kadriye ÖZBAŞ ÇAĞLAYAN, PMP Y.Müh. Ahmet DİKİCİ, PMP

Dijitalleşme Yolunda ERP Dönüşümü

Veritabanı Destekli Kurumsal Bir Eğitim Uygulaması

Acil Durum Yönetim Sistemi ICS NFPA 1600

KÖYDES PROJESİ COĞRAFİ BİLGİ SİSTEMİ REHBERİ TEMMUZ-2012

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

Atış Kontrol Yazılımlarında Ürün Hattı Yaklaşımının Uygulanması

Yazılım Mühendisliği Bölüm - 3 Planlama. Cengiz GÖK

ESİS Projesi. Kaynaklar Bakanlığı

SİSTEMLER SİSTEMİ MÜHENDİSLİĞİ YÖNETİMİ YAKLAŞIMI

DENİZ PLATFORMLARINDA LOJİSTİK DESTEK UYGULAMALARI. 28 Şubat 2012

Yönetim Sistemleri Kurulumu

100 % Özel Türk Şirketi

Sürecin başlama ve bitiş koşulları,

Avlanmaya Açık ve Kapalı Alanlara İlişkin Coğrafi Bilgi Sistemi Projesi

SİSTEM MÜHENDİSLİĞİ TASARIMIN SENTEZLENMESİ II

TÜRKİYE ULUSAL HİDROLOJİ KOMİSYONU YÜRÜTME KURULU TOPLANTISI ve ÇALIŞTAYI ŞUBAT 2014

COĞRAFİ BİLGİ SİSTEMLERİ ARCGIS GİRİŞ EĞİTİMİ

Nüfus ve Vatandaşlık İşleri Genel Müdürlüğü

MIS 325T Bilişim Sistemleri için Strateji, Yönetim ve Kazanım Hafta 3

T.C. MALİYE BAKANLIĞI Bütçe ve Mali Kontrol Genel Müdürlüğü SAYI: B.07.0.BMK / /02/2009 KONU: Kamu İç Kontrol Standartları

TMS YORUM - 32 MADDİ OLMAYAN DURAN VARLIKLAR - İNTERNET SİTESİ MALİYETLERİ

BİLGİ SİSTEMLERİNİN GELİŞTİRİLMESİ

MerSis. Bilgi Teknolojileri Bağımsız Denetim Hizmetleri

ARGUS Plus Version ERP Sistemi

TS EN ISO/IEC Kullanılabilir Arayüz Sertifikası Verilmesi Süreci

Bölüm 2 Yazılım Süreçleri. Ders 1

Kullanım Durumu Diyagramları (Use-case Diyagramları)

COĞRAFİ BİLGİ SİSTEMLERİ İLERİ SEVİYE EĞİTİMLERİ BUILDING GEODATABASE EĞİTİMİ

Gayrimenkul Değerleme ve Kentsel Dönüşüm Uygulamaları

TARBİL Kapsamında Uydu ve Yersel Veri Tespit, Kayıtçı İşlem Yönetim Sistemi Geliştirilmesi

Sistem ve Yazılım Nedir?

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

Yazılım Gereksinimleri Mühendisliği (SE 221) Ders Detayları

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

COĞRAFİ BİLGİ SİSTEMLERİ İLERİ SEVİYE EĞİTİMLERİ BUILDING GEODATABASE EĞİTİMİ

COĞRAFİ BİLGİ SİSTEMLERİ ŞUBE MÜDÜRLÜĞÜ FAALİYET VE PROJELERİ

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

Önemli Not unuz varsa, buraya yazınız. Versiyon: [Gün Ay Yıl] [İletişim Bilgileri]

Kalite Kontrol Yenilikler

Kurumsal bilgiye hızlı ve kolay erişim Bütünleşik Belge Yönetimi ve İş Akış Sistemi içinde belgeler, Türkçe ve İngilizce metin arama desteği ile içeri

BTB Proje Yönetimi ve Mühendislik Ltd. Şti.

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

Türk Telekom Portali Nasıl Değişti?

DSİ kapsamında oluşturulan dağınık durumdaki verilerinin düzenlenmesi, yeniden tasarlanarak tek bir coğrafi veri tabanı ortamında toplanması,

NESNEYE YÖNELİK TASARIM SÜRECİ

NESNEYE YÖNELİK ÇÖZÜMLEME SÜRECİ

Kurumsal Yönetim Sistemleri Sistemleri

E-DEVLET ÜSTYAPISI ÇALIŞTAY

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

DRG Projesi Maliyetlendirme Kısmı

Türk Telekom e-devlet Kapısı

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.

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

T.C. M.S.B. Savunma Sanayii Müsteşarlığı

Film Arşiv Sistemi. Yazılım Tasarım Belgesi

MAYIS 2010 ÖZGÜR DOĞAN İŞ GELİŞTİRME YÖNETİCİSİ KAMU SEKTÖRÜ

Kurumsal İçerik ve Bilgi Yönetimi Kapsamında Web 2.0 Teknolojileri: Enterprise 2.0

Tehlikeli Atık Beyan Sistemi (TABS) TABS İzleme ve Kontrol Modülü Ahmet GÖKTAŞ Çevre ve Şehircilik Uzmanı

Türkiye Klinik Kalite Programı

Siber Güvenlik Risklerinin Tanımlanması / Siber Güvenlik Yönetişimi

Endüstri Ürünleri Tasarımında Mezuniyet Projesi (EUT402) Ders Detayları

BULUŞ BİLDİRİM FORMU / YÖNTEM

Tasarım Raporu. - Projemizde detaylı bir şekilde ulaşmak istediğimiz amaçların belirlenmesi,

Yrd. Doç. Dr. Ayça Tarhan. Hacettepe Üniversitesi Bilgisayar Mühendisliği Bölümü

Tüm personel kendi KEP hesapları üzerinden mevcut ve önceki maaş bordrolarını görüntüleyebilecektir.

Varlık davranış modeli: Bu aşama her entity ye etki eden durumların tanımlandığı, modellendiği ve dokümante edildiği süreçtir.

TORPİDO ATIŞ KONTROL SİSTEMİ (TORAKS)

Yazılım profesyonelleri için önemli olan yetkinlikler anketi Survey

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

Yazılım Ürün Hattı Projelerinde Kalite Maliyeti ve Hata Yoğunluğu Ölçüm Yaklaşımı

Konfigürasyon Yönetimi

Transkript:

Elektronik Seyir Sistemleri Yazılım Ürün Ailesi İçin Analiz ve Tasarım Süreci Selçuk BOZCAN 1, Ahmet Erdinç YILMAZ 2 Aselsan A.Ş. SST-KKYTM, P.K. 1 06172, Yenimahalle, Ankara sbozcan@aselsan.com.tr 1 aeyilmaz@aselsan.com.tr 2 Özetçe. Yetenek yönelimli olarak modellenen bir yazılım ürün ailesindeki farklı yazılım ürünleri tarafından ortak olarak kullanılan yazılım yapıtaşlarının belirlenmesi büyük önem taşımaktadır. Yazılım yapıtaşlarının; ürün ailesine ait belirli bir fonksiyonel yeteneği gerçekler, birbirleri aralarındaki bağımlılıkların en aza indirilmiş, birbirinden bağımsız olarak geliştirilebilecek ve idame ettirilebilecek şekilde belirlenmesi, hem yazılımın ölçeklenebilirliği hem de idame edilebilirliği açısından çok önemlidir. Proje kapsamında alt yüklenicilerle çalışılması ihtiyacı doğduğunda, yazılım yapıtaşlarının belirlenmesinin önemi daha da artmaktadır. Bu çalışmada, Elektronik Seyir Sistemleri projesi kapsamında geliştirilecek yazılım ürün ailesi için, yetenek tabanlı modellemeden, alt yüklenicilere verilebilecek yazılım yapıtaşlarının belirlenmesine kadar yapılan çalışmalara değinilecek ve bu kapsamda önerilen referans yazılım sistem mimarisi sunulacaktır. Anahtar Kelimeler: Yazılım Ürün Ailesi, Yazılım Mimarisi, Yetenek Yönelimli Alan Analizi 1 Giriş Denizcilik terminolojisinde seyir, bir gemi veya deniz aracının bir konumdan gidilmesi istenilen diğer bir konuma emniyetle götürülmesi işi olarak tarif edilmektedir [1]. Geçmişte kâğıt haritalar ve çeşitli denizcilik araçları kullanılarak gerçekleştirilen seyir yöntemleri, artık günümüzde yerini elektronik sensör ve sistemlerin kullanıldığı elektronik seyre bırakmıştır. Elektronik Seyir Sistemi (ESS), gemi üzerindeki çeşitli sensörlerden aldığı verileri kullanarak oluşturduğu durum bilgisi üzerinden sürekli olarak tehlikeli durum analizi yapar ve bunu sergiler. Farklı büyüklük ve nitelikteki gemiler, farklı özellikleri ön plana çıkan ESS lere ihtiyaç duymaktadırlar. Bu nedenle günümüzde, ESS olarak isimlendirilen ürün ailesinin içerisinde, farklı yeteneklerin ön plana çıktığı ürünler yer almaktadır. Örneğin; büyük gemilerde daha büyük ekranlı ve çok daha fazla sensör bilgisinin sergilendiği ESS ler kullanılırken, daha küçük gemilerde ise daha az yeteneği barındıran ESS ler tercih edilmektedir. İlave olarak, askeri gemiler ve denizaltılarda ise askeri deniz haritalarının görüntülenmesi, su altına özel seyir tekniklerinin uygulanması gibi daha farklı yeteneklere sahip ESS ler kullanılmaktadır. 179

ASELSAN da sürmekte olan ESS Projesi kapsamında farklı nitelikte su üstü ve su altı platformlarda kullanılmak üzere çeşitli yeteneklerde ESS lerin bir ürün ailesi olarak geliştirilmesi planlanmıştır. Proje kapsamında geliştirilecek olan ve aynı yazılım ürün ailesi [2] kapsamında yer alan ESS yazılımlarının geliştirilmesi için yetenek yönelimli alan analizi [3] yöntemi tercih edilmiştir. Proje kapsamında öncelikle, ESS ürün ailesinde farklılaşan yeteneklerin belirlenmesi için, yetenek yönelimli alan analizi yöntemi kullanılarak sistem seviyesi gereksinim analizi gerçekleştirilmiştir. Ardından, proje kapsamında önemli ölçüde yazılım alt yüklenicisinin de kullanılacağı göz önünde bulundurularak, farklı yeteneklerin birbirinden bağımsız olarak geliştirilebilmesini sağlayan bir sistem tasarımı gerçekleştirilmiş ve ortaya bir Referans Sistem Yazılım Mimarisi (RSYM) konulmuştur. Ortaya konulan bu RSYM nin doğrulanması amacıyla bir konsept uygulama sistem tasarımı aşamasında geliştirilmiştir. Sonrasında, ayrıntılı senaryolar ve kullanıcı arayüzü taslakları hazırlanarak yazılım gereksinim analizi aşaması tamamlanmıştır. Son olarak da, ortaya konan RSYM ye uygun olarak yazılım tasarımı gerçekleştirilmiştir. Bu makalede, ESS projesi kapsamında sistem gereksinimlerinin belirlenmesinden yazılım tasarımının gerçekleştirilmesine kadar geçen süreçte izlenen yöntem ve edinilen tecrübeler aktarılmaktadır. 2 Yapılan Çalışma ESS Ürün Ailesi Projesi kapsamında gerçekleştirilen tüm analiz ve tasarım süreci Şekil 1 de verilmiştir. Aşağıda sürecin her adımında gerçekleştirilen faaliyetler detaylı olarak açıklanmaktadır. Şekil 1. Analiz ve Tasarım Süreci 2.1 Sistem Analizi ESS alanında, farklı üreticiler tarafından geliştirilen ürünler arasında belirli bir standardı sağlamak amacıyla, IMO (International Maritime Organization) ve IHO (Interna- 180

tional Hydrographic Organization) gibi kuruluşlar tarafından yayınlanan standartlar bulunmaktadır. Bu standartlarda, ESS alanında yer alan ürünlerin temel işlevlerini ve sağlaması gereken temel özellikleri tariflenmektedir. Sistem analizi aşamasına bu alandaki mevcut standartlar incelenerek başlanmıştır. Standartlar incelenerek alan bilgisinin edinilmesi sonrasında bu alanda yer alan ürünlerin hangi yeteneklere sahip olacağını tarifleyen sistem seviyesi senaryolar hazırlanmıştır. Hazırlanan bu senaryolar, sistem gereklerinin hazırlanmasına temel teşkil etmiştir. Sistem seviyesi senaryolar ile beraber bu alandaki ürünlerin yeteneklerini kapsayan bir yetenek ağacı [4] hazırlanmıştır. ESS Projesi kapsamında farklı nitelikteki gemilerin ihtiyaçlarını karşılamak adına belirlenen ürünler için yetenek ağacından farklı yetenek kümeleri seçilerek bu ürünlerin yapılandırmaları oluşturulmuştur. Şekil 2 de yetenek ağacından farklı ürün yapılandırmalarının oluşturulması örneklenmektedir. Şekil 2. Yetenek Ağacı ve Farklı Ürün Yapılandırmaları Sistem analizi aşamasında hazırlanan sistem seviyesi senaryolar ve yetenek ağacı kullanılarak proje kapsamında geliştirilecek olan her bir ürün için sistem gereksinimleri hazırlanmıştır. 2.2 Sistem Tasarımı Sistem analizi aşamasından sonra ASELSAN süreçlerine uygun olarak sistem tasarımı aşamasına geçilmiştir. Bu aşamada gerçekleştirilen çalışmalar sırasıyla aşağıdaki alt başlıklarda verilmiştir: RSYM nin Belirlenmesi. Ürün ailesi yetenek ağacındaki yeteneklerin yazılım konfigürasyon birimlerine eşlenmesi ve sonradan belirlenecek yeni yeteneklerin sisteme nasıl ekleneceğinin ortaya konması amacıyla bir RSYM belirlenmiştir. Proje kapsamında önemli ölçüde yazılım alt yüklenici işçiliğinin kullanılması planlandığından, RSYM belirlenirken aşağıdaki kıstaslar göz önünde bulundurulmuştur: 1. Ürünlerin yetenekleri birbirinden bağımsız olarak geliştirilebilmelidir. 181

2. Ürünlere kolaylıkla yeni yetenek eklenebilmeli veya var olan bir yetenek çıkartılabilmelidir. 3. Ürünün idame sürecinde alt yüklenici bağımlılığı en az seviyede olmalıdır. Ortaya konan RSYM de ürünler, yapıtaşı adı verilen yazılım birimlerinden oluşmaktadır. Yapıtaşı, bir veya daha fazla yeteneği sunan, birbirinden bağımsız yazılım birimleridir. RSYM de sundukları yeteneklere göre özelleşmiş (İş, Grafiksel Kullanıcı Arayüzü (GKA), Taktik Resim (TR) vb.) yapıtaşları tanımlanmıştır. ESS Ürün Ailesi için ortaya konan RSYM Şekil 3 te verilmiştir. Şekil 3. Referans Sistem Yazılım Mimarisi ESS RSYM de yer alan yapıtaşı tipleri aşağıda verildiği gibidir: Model: Yapıtaşları arasında değişilecek olan ESS alanına özgü veri tanımlamalarını içeren altyapı yapıtaşıdır. Çatı: Yapıtaşlarının çalışma ortamını oluşturan ve yapıtaşlarının birbirleri ile iletişimini sağlayan altyapı yapıtaşıdır. TR-A: TR Ana Yapıtaşı, taktik resmin oluşturulmasını ve görüntülenmesini sağlayan Coğrafi Bilgi Sistemi (CBS) altyapısını içeren yapıtaşıdır. TR-PRC: TR Parça Yapıtaşları, TR-A yapıtaşına eklenerek, farklı CBS içeriklerinin TR üzerinde görüntülenmesini sağlayan yapıtaşlarıdır. GKA-A: GKA Ana Yapıtaşı, GKA altyapısını içeren yapıtaşıdır. GKA-PRC: GKA Parça yapıtaşları, GKA-A yapıtaşına eklenerek, farklı GKA öğelerinin görüntülenmesini sağlayan yapıtaşlarıdır. SY-A: Sensör Yönetimi Ana Yapıtaşı, sensör altyapılarını oluşturan yapıtaşıdır. SY-PRC: SY Parça Yapıtaşı, SY-A Yapıtaşına eklenerek, farklı iletişim protokollerine sahip sensörler ile iletişim kurulabilmesini sağlayan yapıtaşlarıdır. VK-A: Veri Kayıt Ana Yapıtaşı, veri kayıt altyapısını içeren yapıtaşıdır. VK-PRC: VK Parça Yapıtaşları, VK-A yapıtaşına eklenerek, farklı verilerin istenilen şekilde kayıt edilmesini sağlayan yapıtaşlarıdır. IS: İş Yapıtaşları, iş mantıklarını ve algoritmaları içeren yapıtaşlarıdır. DELTA: Ürün Ailesi kapsamında tanımlanan ürünün yapıtaşı yapılandırmasıdır. Konsept Uygulamanın Geliştirilmesi. ESS Ürün Ailesi için bir RSYM tanımlandıktan sonra, bu mimarinin gerçeklenebilirliğinin doğrulanabilmesi için bir konsept uygulama tanımlanmış ve geliştirilmiştir. Konsept uygulamanın geliştirilmesi esnasında ise RSYM ile ilgili teknik sorunlar adreslenmiş ve bu sorunlara çözümler aranmıştır. 182

RSYM ye Uygun Yapıtaşı Listesinin Belirlenmesi. Sistem analizi aşamasında belirlenen sistem yetenekleri esas alınarak, RSYM ye uygun yapıtaşları belirlenmiştir. Yapıtaşlarının belirlenmesi için gerçekleştirilen bu ilk çalışmada 80 kadar yapıtaşı belirlenmiştir. İlerleyen aşamalarda gerçekleştirilen çalışmalarla ortaya konan bu ilk yapıtaşı listesi güncellenmiş ve yapıtaşı sayısı 60 a indirilmiştir. Senaryoların Ayrıntılandırılması. Sistem analizi aşamasında hazırlanan sistem seviyesi senaryolar, RSYM nin ortaya konmasından sonra bu aşamada detaylandırılmıştır. Sistem seviyesi senaryolar için herhangi bir şablon kullanılmamışken, sistem tasarımı seviyesi senaryoların detaylandırılması aşamasında bir senaryo şablonuna ihtiyaç duyulduğu anlaşılmış ve bir senaryo şablonu hazırlanmıştır. Kullanım durumu senaryolarının dokümante yöntemi ile ilgili bilgi [5] te mevcuttur. Yazılım analizi aşamasında hazırlanacak olan yazılım gereklerinin kolaylıkla belirlenebilmesi için bu aşamada ayrıntılı senaryolar yazılım yapıtaşları detaylarını içerecek şekilde yazılmıştır. Uygulanan bu senaryo yazım yöntemi, sistem tasarımı aşamasını uzatmasına rağmen, yazılım gereksinimlerinin daha kolay belirlenmesini sağlamış ve toplam analiz ve tasarım sürecini kısaltmıştır. Senaryo ayrıntılandırma aşamasında senaryoların anlaşılırlığının artırılması için senaryolarla birlikte kullanıcı arayüzü taslakları da hazırlanmıştır. Kullanıcı arayüzü taslakları, senaryoların daha iyi anlaşılmasında önemli rol oynamaktadır. Bu aşamada gerek hız kazanmak, gerekse detaylı kullanıcı arayüzü taslaklarına henüz ihtiyaç olmaması sebebiyle, kullanıcı arayüzü taslakları kâğıt ve kalem kullanılarak hazırlanmıştır. Sistem tasarımı aşamasında operasyonel ve operasyonel olmayan yetenekler ile ilişkili toplam 370 ayrıntılı senaryo hazırlanmıştır. Ayrıntılı senaryoların ve beraberinde kullanıcı arayüzü taslaklarının hazırlanması ile sistem gereksinimlerin netleşmesi sağlanmıştır. Bu nedenle, sistem analizi aşamasında hazırlanan gereksinimler ve belirlenen yapıtaşları bu aşamada güncellenmiştir. 2.3 Yazılım Analizi Sistem tasarımı aşamasından sonra ASELSAN süreçlerine uygun olarak yazılım analizi aşamasına geçilmiştir. Bu aşamada, sistem tasarımı aşamasında hazırlanan ayrıntılı senaryolar kullanılarak her bir yapıtaşı için gereksinimler belirlenmiştir. Sistem tasarımı aşamasında hazırlanan taslak grafiksel kullanıcı arayüzleri, bu aşamada ayrıntılandırılmıştır. Taslak kullanıcı arayüzlerinin hazırlanmasında kâğıt ve kalem kullanılmasına karşın, detaylı kullanıcı arayüzlerinin hazırlanması için çizim uygulamaları kullanılmıştır. Bu aşamada detaylı kullanıcı arayüzlerinin hazırlanması gereksinimlerin netleştirilmesine önemli katkı sağlamıştır. Sistem tasarımı aşamasında hazırlanan 370 detaylı senaryodan toplamda 3500 yazılım gereksinimi hazırlanmıştır. 183

2.4 Yazılım Tasarımı Yazılım tasarımı aşamasında, yazılım analizi aşamasında ortaya konan yazılım gerekleri ve detaylı kullanıcı arayüzü taslakları esas alınarak, RSYM ye uygun bir yazılım tasarımı hazırlanmıştır. Bu aşamada, RSYM nin doğrulanması için sistem tasarımı aşamasında geliştirilen konsept uygulamadan önemli faydalar elde edilmiştir. Konsept uygulamanın geliştirilmesi esnasında teknik sorunlara üretilen çözümler, yazılım tasarımının ortaya konulmasında dikkate alınmıştır. Bu aşamada, yazılım analizi aşamasında hazırlanan detaylı kullanıcı arayüzü taslaklarının üzerinden geçilmiş ve güncellemeler gerçekleştirilmiştir. Bu güncellemeler sonrasında ayrıntılı senaryolar da uygun şekilde güncellenmiştir. 3 Değerlendirme ESS ürün ailesi için izlenen analiz ve tasarım sürecinde, yukarıda anlatılan çalışmalar gerçekleştirilmiştir. Proje yönetimi tarafından belirlenen 3 muhtemel ürün için bir yetenek ağacı hazırlanmış, ardından bu yetenekler doğrultusunda sistem seviyesi senaryolar hazırlanmıştır. Sonrasında gerçekleştirilen analiz ve tasarım çalışmalarında toplam 370 ayrıntılı senaryo ve detaylı kullanıcı arayüzü taslağı ve bunlara karşılık olarak toplam 3500 yazılım gereksinimi hazırlanmıştır. Analiz ve tasarım sürecinde yetenek modelleme, RSYM belirleme ve doğrulama, senaryo ve kullanıcı arayüzü taslakları hazırlama yöntemlerinin kullanımı ile analiz ve tasarım süreçlerini daha etkin kılıp, alt yüklenici ile çalışmalardaki riskler azaltılmaya çalışılmıştır. Bu yöntemlerin kullanımı hem gereksinimlerin yeterli ayrıntıda oluşturulmasını mümkün kılmış, hem de alt yükleniciyi yönlendirecek teknik altyapıların oluşturulmasını da sağlamıştır. ESS Projesinde uygulanan yukarıda bahsedilen analiz ve tasarım sürecinin gerek gereksinimlerin belirlenmesinde gerekse yazılım tasarımının ortaya konmasında faydalar sağladığı görülmüştür. ESS alanı için ortaya konan RSYM benzer diğer alanlar için de uyumlandırılarak bu alanlardaki projeler için de kullanılmaya başlanmıştır. Kaynakça 1. Aytaç, Turgay. SGK Denizci Dili Sözlüğü. [Çevrimiçi] 2016. http://www.sgk.tsk.tr/baskanliklar/istihbarat/denizci_dili/dd/denizcidili.htm. 2. Clements, P., Northrop, L. Software Product Lines: Practices and Patterns. Upper Saddle River, NJ : Addison-Wesley, 2002. 3. Kang, K., Cohen, S., Hess, J., Nowak, W., Peterson, S.: Feature-Oriented Domain Analysis (FODA) Feasibility Study, Technical Report CMU/SEI-90-TR-21, Pittsburgh, PA, Software Engineering Institute, Carnegie Mellon Üniversitesi (1990) 4. Riebisch, M.: Towards a more precise definition of feature models. In: Riebisch, M., Coplien, J.O., Streitferdt, D. (eds.) ECOOP 2003, LNCS, vol. 2743, s. 64-76. Springer, Heidelberg (2003) 5. Schneider, Geri ve Winters, Jason P. Applying Use Cases: A Practical Guide. Michigan Ünversitesi: Addison-Wesley, 2001, s. 111-159. 184