Sistem Analizi ve Tasarımı
Bu ünitede sistem geliştirme yaşam döngüsünün analiz ve tasarım aşamalarından bahsedilmiştir. Sistem analizi, en temelde problemi ortaya koyma ve sınırlarını belirlemeyi hedeflemektedir. Sistem tasarımı aşaması ise probleme yönelik çözümlerin belirlendiği aşamadır.
Bu aşamalarda hem sistemin ihtiyaçları hem de bunlara yönelik çözümler modellenmektedir. Model, bir sistemin soyut olarak gösterimini ifade etmektedir.
Sistem Analizi
Sistem analizi aşamasında problemin niteliğine ve tipine göre; bağlam şemaları, veri akış diyagramları, kullanıcı senaryoları, durum makineleri gibi sistemi modellemek için birtakım araçlar kullanılmaktadır.
Jackson bağlam şeması: Sistemin çevre ile olan sınırlarının belirlenmesi için gereksinim belirleme aşamasında da kullanılabilen bir araçtır. Buradaki bağlam kelimesi genel bakış olarak da değerlendirilebilir. Jakson bağlam şemasının notasyonu oldukça basittir ve etki alanlarının (sistemin etkileşimde olduğu ana bileşenler) belirlenmesini içerir. Sistemin kendisini de bir etki alanı alarak görür. Etki alanlarının her biri bir dikdörtgenle ifade edilir. Bunlar arasındaki ilişkiler düz çizgi ile gösterilir.
Veri akış diyagramları: Özellikle bilişim sistemleri için sistem içerisinde veri akışının nasıl olduğunun göstermek için kullanılan tekniklerdir. Bu diyagramlar mantıksal ilişkileri veri akışına göre göstermektedir.
Kullanıcı senaryoları: Sistemin kullanıcı bakış açısından işleyişini belgelendirmek için kullanılan bir yöntemdir. Kullanıcı senaryoları, gereksinimlerin analiz edilebilmesi için senaryo tabanlı yaklaşıma izin verir. Daha teknik bir tanımla kullanıcı senaryoları, sistem modellemek için kullanılan bileşik modelleme dili (UML) içerisinde aktör ile sistem arasındaki etkileşim diyaloğunu ortaya koyan senaryo topluluğudur.
Durum makineleri: Durum makineleri genelde bir varlığın veya nesnenin bütün durumlarında nasıl davrandığının şematik gösterimidir. Sistem analizi aşamasında özellikle geliştirilen sistem açık, beklemede, kapalı, uykuda gibi durumlar içeriyorsa etkili bir araç olarak kullanılabilir.
Sistem Tasarımı
Sistem tasarımı aşamasında; analiz aşamasında belirlenen problemin nasıl çözüleceğine yönelik cevaplar aranmaktadır. Burada detaylı olarak veri akış diyagramları, sınıf diyagramları, sıra diyagramları, varlık bağıntı modelleri gibi yöntemler kullanılmaktadır.
Sistem tasarımı aşamasının en önemli adımlarından biri problemin çözümünü kolaylaştırmak için problemi parçalara ayırmaktır. Burada birtakım kurallar veya prensiplerden yararlanılır. Bunlardan en önemlisi oluşturulacak her bir modülün işlevsel bağımsızlığının sağlanmasıdır. Ayrıca iyi bir tasarım için modüller arasında yüksek kohezyon düşük eşleşme olmalıdır. Bu kurallar özellikle olası bir hatanın sistemin tamamına değil bir modüle etki etmesini ve bakımının da sistemi topyekün etkilemeden yapılmasını sağlamaktadır.
İşletmelerin günümüzde iş süreçlerini bilişim sistemleri üzerinden yürüttüğü düşünüldüğünde, neye ihtiyaç olduğunun ve çözümün nasıl olması gerektiğinin cevabı bu yöntemler kullanılarak bulunabilir.
Veri akış diyagramları, daha önce belirtildiği gibi sistemlerin modellenmesinde verinin sistem içerisindeki hareketini gösteren araçlar olarak kullanılmaktadır. Verilerin, sistem içerisinde işlevler/fonksiyonlar arasında nasıl hareket ettiğini görmenin yanında sistemin fiziksel bileşenleri arasında da hareketini VAD’lar sayesinde gösterebiliriz.
Verilerin sistem içerisinde hareketini VAD’lar sayesinde görebilirken verilerin birbirleri ile olan ilişkilerini de varlık bağıntı diyagramları yardımı ile modelleyebiliriz. Varlık bağıntı diyagramları, tasarım aşamasında sistemin veri tabanı tasarımında da kullanılmaktadır.