Bilişim Sistemleri Modelleme, Analiz ve Tasarım Yrd. Doç. Dr. Alper GÖKSU Ders Akışı Hafta 10-11. Nesneye Yönelik Sistem Analizi Haftanın Amacı Bilişim sistemleri geliştirmede nesneye yönelik sistem analizi detaylı olarak açıklanmaktadır. Giriş Bilişim sistemi geliştirme sürecinde nesneye yönelik sistem analizi geleneksel yaklaşıma benzer şekildedir. Planlama, analiz, tasarım, gerçekleştirme aşamaları ve faaliyetleri de aynı şekildedir. Nesneye yönelik yaklaşımın temel farklılığı nesneler ve aralarındaki etkileşimlerin dikkate alınmasıdır. Geleneksel yaklaşımda veri akış diyagramları kullanılırken nesneye yönelik yaklaşımda etkileşim diyagramları hazırlanmaktadır. Aynı şekilde, varlık ilişki diyagramları yerine sınıf diyagramları kullanılmaktadır. Nesneye Yönelik Sistem Analizi Bu yaklaşımda prototip oluşturma oldukça kolay ve detay kapsamında gösterilebilmektedir. Özet olarak, sistem faaliyetlerini göstermek için kullanılan diyagramlar temel farklılığı ve diyagram çeşitliliğinin olmasıdır. Nesneye Yönelik Sistem Analizi Bu yaklaşımda uygulama ihtiyaçlarını tanımlama için ilişkili ve bağımsız iki diyagramdan yararlanılmaktadır. Sınıf diyagramı ve kullanım senaryosu diyagramıdır. Sınıf diyagramında sınıf tanımlamaları ve ilişkileri, kullanım senaryosu diyagramında ise bilişim sistemindeki kullanımları, senaryoların belirlenmesi için hazırlanmaktadır. Bu şekilde sistemin gerçekleştirilmesi sırasında senaryoları belirlenmiş olmaktadır. Nesneye Yönelik Sistem Analizi Bilişim sistemi tasarımında gerçekleştirilecek olan analizin birincil amacı; karşılanması düşünülen ihtiyacın mantıklı, kolay anlaşılır ve kontrol ( test ) edilmesine olanak sağlayan modelin oluşturulmasıdır. İhtiyacın karşılanması analiz aşaması içerisinde gerçekleştirilmez. Bu aşamada hedeflenen ihtiyacın tam olarak anlaşılmasını sağlayabilmektir. Gerçek dünyanın modellenmesi için kavramsal sınıfları belirlenmektedir. Yazılımda bulunması gerekli nesneleri ve detayları ile bu aşamada ele alınmamaktadır. Kullanım Senaryosu Modelleme Davranış, dış olaylara karşı verilen tepkidir. Bilişim sisteminde sistem dışından ve kontrol edilebilen davranışlarını kullanım senaryoları ile gösterilmektedir. Buradaki senaryolarda aktör ile bilişim sistemi arasındaki gerçekleşen olaylar dikkate alınmaktadır. Kullanım Senaryosu Modelleme Bu modellemede; aktörler ve senaryoları, ek tanımlamaları, şartları birlikte görsel hale getirilmektedir. Bu diyagram olarak tanımlamak yetersizdir. Aynı zamanda bilişim sisteminin beklenen davranışını açıklayan bir model olduğu ifade edilmektedir. Geliştirilen bilişim sisteminin ihtiyaçları, talepleri karşılamaya uygunluğunu senaryolar ile kontrol (test) edilmektedir. Kullanım Senaryosu Modelleme Bu modellemede; aktörler ve senaryoları, ek tanımlamaları, şartları birlikte görsel hale getirilmektedir. Bu diyagram olarak tanımlamak yetersizdir. Aynı zamanda bilişim sisteminin beklenen davranışını açıklayan bir model olduğu ifade edilmektedir. Geliştirilen bilişim sisteminin ihtiyaçları, talepleri karşılamaya uygunluğunu senaryolar ile kontrol (test) edilmektedir. Özet olarak, Nesneye yönelik sistem analizinin birinci adımıdır. Aktörler Aktörler, UML kullanım senaryosu diyagramında özelliklere ve işlemlere sahip olduğundan bir sınıf şeklinde gösterilebilir. Şematik gösteriminde ise çöp adam olarak görülmektedir. Aktörleri ve senaryoları belirlemek için bilişim sisteminin sınırları belirlenmelidir. Bilişim sisteminin sınırları içerisinde hangi işlemlerin olup olmayacağı aktörlerin ve senaryoların değişmesine neden olur. Sistem akışı adım adım özetlendiğinde aktörleri belirlemek kolaylaşmaktadır. Kullanım Senaryoları Senaryo, bir aktöre fonksiyonel bir değer katmaktadır. Aktörlerin görevlerinin belirlenmesi ile kullanım senaryoları elde edilmektedir. Aynı zamanda, fonksiyonel ihtiyaçların belirlenmesiyle de hazırlanabilmektedir. Fonksiyonel ihtiyaç, birçok durum için senaryo olarak modellenmektedir. Kullanım senaryolarının gösterimi elips şeklindedir. Senaryonun adı elipsin içine veya altına yazılır. Genellikle aktör ve senaryoların etkileşimde olması gerekmektedir. Bir aktörün diğer bir aktörle etkileşimde olmaması gerekmektedir. Kullanım Senaryoları Kullanım senaryoları bulunmaktadır: arasında üç farklı ilişki İçerme : Bir senaryoda kullanılan başka bir senaryo belirtilir. Genişletme : hazırlanmalıdır. Senaryolar Özelleştirme: Sınıflar arası senaryolarda türetilebilir. doğal akışlarına türetme ilişkileri göre gibi Kullanım Senaryoları Senaryo belgesi yapısı değişiklikler göstermesine karşın aşağıdaki şekilde tanımlanmaktadır: adı İlgili aktörler Senaryo ön koşulları Senaryo son koşulları Senaryo temel akışı Özel durumlar için oluşturulacak alternatif akışlar Senaryo Kullanım Senaryosu Sözleşmeleri Kullanım senaryoları, bilişim sisteminin modellenmesinde yeterli olmasına karşın karmaşık işlemleri de bulunmaktadır. Bu durumlarda anlaşılmasını kolaylaştırmak için sözleşme yazılmaktadır. Sözleşme, bilişim sistemi için ön koşulları sağlandığında uygulama nesnelerinin son durumlarını tanımlayan yapılardır. Özet olarak, sözleşmelerle nesnelerdeki değişimlerinde gösterilmektedir. Sınıf Modelleme Nesneye yönelik sistem analizinde sistemin içsel yapısı sınıf modeli ile tanımlanmaktadır. Sınıflar ile birlikte özellikleri, işlemleri, bağlantıları, bütünleşmeleri, birleşimleri, genelleştirilmeleri de bulunmaktadır. Sınıf diyagramının çizilmesiyle bu öğeleri görsel olarak sunulmaktadır. Nesneye yönelik sistem analizinde kullanım senaryosu modelleme ile sınıf modelleme eşzamanlı olarak hazırlanmaktadır. Bu şekilde, her ikisi birbirlerine destek sağlamaktadır. Sınıf Modelleme Nesneye yönelik sistem analizinde sistemin içsel yapısı sınıf modeli ile tanımlanmaktadır. Sınıflar ile birlikte özellikleri, işlemleri, bağlantıları, bütünleşmeleri, birleşimleri, genelleştirilmeleri de bulunmaktadır. Sınıf diyagramının çizilmesiyle bu öğeleri görsel olarak sunulmaktadır. Nesneye yönelik sistem analizinde kullanım senaryosu modelleme ile sınıf modelleme eşzamanlı olarak hazırlanmaktadır. Bu şekilde, her ikisi birbirlerine destek sağlamaktadır. Özellikleri Belirleme Bir sınıfın özellikleri; oluşturulan nesne özgü değerleri alan verilerdir. Bilişim sistemini analiz eden uygulamada kavramsal sınıfları belirlerken kullanım senaryolarını ilgilendiren özellikleri de oluşturmalıdır. Özellikleri basit veri tiplerindendir, daha karmaşık olması durumunda sınıf olmaktadır. Bağlantıları Belirleme Nesnelerin işbirliğinde olduğu ilişkilerin belirlenmesini sağlamaktadır. Bilişim sistemi gerçekleştirildiğinde, sınıflar arasındaki bağlantıları, sınıflardaki belirli özelliklerle gösterilmektedir. Analiz aşamasında, bağlantıları çizgiler ve çoğul oluşturma simgeleri ile çizilmektedir. Bağlantıların belirlenmesi, sınıfların belirlenmesindeki gibi kullanım senaryoları dikkate alınır. Senaryolarda bulunan eylemler olası bağlantılardır. Bilişim sistemi amacı dışındaki bağlantıları gereksiz olmaktadır. Sınıf Diyagramı Kullanım senaryoları ile analizi gerçekleştirilen bilişim sisteminin uygulama modelini göstermektedir. Bu diyagramın yapısı sınıfları, ilişkileri ve sınıfların özellikleri bulunmaktadır. Sınıfların işlemlerinin belirlenmesi tasarım aşamasının ilk adımıdır. Sınıf diyagramına işlemlerin dahil edilmesiyle davranışları da belirlenmiş olmaktadır. Sınıflara ait daha fazla özelliğin eklenmesi sistem analizi ve ihtiyaçların belirlenmesi ile ortaya çıkmaktadır. Kaynakça 1. 2. 3. 4. Arthur M. Langer, “Analysis and Design of Information Systems”, Third Edition , Springer., 2010. Simha R. Magal, Jeffrey Word, “Essentials of Business Processes and Information Systems”, John Wiley & Sons, 2009. Kenneth E. Kendall and Julie E. Kendall,, “Systems Analysis and Design”, 8th Edition), Prentice Hall College Div., 2010. Kalıpsız O., Buharalı A., Biricik G., “Bilgisayar Bilimlerinde Sisten Analizi ve Tasarımı ”,Papatya Yayıncılık, 2006.