← Ünite 2
Sistem Analizi ve Tasarımı

Ünite 2: Bilgi Sistemlerinin Geliştirilmesi

PERT Şemasının Kökeni
PERT şemaları, 1950'lerin sonunda Amerikan Deniz Kuvvetleri tarafından Polaris nükleer denizaltı projesinde geliştirilmiştir. Bu yöntem, proje geliştirme süresinden iki yıl tasarruf sağlamıştır.
Scrum Sprint Süresi
Scrum metodolojisinde sprint adı verilen geliştirme döngüleri, tipik olarak 2 ile 4 hafta arasında değişen sabit zaman aralıklarında gerçekleştirilir.
Çevik Yazılım Manifestosu
Çevik modelin felsefesini belirleyen manifesto, süreçlerden ziyade bireylere, dokümantasyondan ziyade çalışan yazılıma değer verilmesini vurgular.
Sistem Yaşam Döngüsü Fazları
Sistem geliştirme süreci; Kapsam ve Planlama, Gereksinim Analizi, Tasarım, Gerçekleştirme ve Test, Kurulum ve Dağıtım, Operasyon ve Bakım olmak üzere 6 ana fazdan oluşur.

Anahtar Kavramlar

Sistem AnalistiSistem geliştirme sürecinde iş gereksinimlerini analiz eden, tasarlayan ve proje yönetim süreçlerini yürüten tecrübeli uzmandır. Örneğin; sistem analisti, mevcut iş süreçlerini inceleyerek 'kim, ne, nerede' sorularına cevap arar.
Mantıksal Tasarımİş gereksinimlerinin donanım ve yazılım platformundan bağımsız olarak modellere (diyagramlara) dönüştürülmesidir. Örneğin; veritabanı gereksinimlerinden mantıksal veri modelleri oluşturulması bu aşamadır.
Fiziksel TasarımMantıksal tasarımların belirli bir donanım ve yazılım platformuna uygun teknik özelliklere dönüştürülmesidir. Örneğin; kullanılacak programlama dili, işletim sistemi ve ağ mimarisinin belirlenmesi bu aşamada yapılır.
İterasyonSistem geliştirme sürecinde bir fazın veya döngünün birden fazla kez tekrarlanarak ürünün iyileştirilmesidir. Örneğin; prototip modelde müşteri gereksinimleri netleşene kadar döngü devam eder.
CASE AraçlarıSistem geliştirme faaliyetlerini otomatize eden, kaliteyi ve üretkenliği artıran yazılım mühendisliği araçlarıdır. Örneğin; UML tasarım araçları veya kod üreten yazılımlar birer CASE aracıdır.
SprintScrum metodolojisinde 2-4 hafta süren, belirli özelliklerin geliştirildiği sabit zaman aralıklı döngülerdir. Örneğin; her sprint sonunda tamamlanan sürüm paydaşlara sunulur.
İşlevsel Olmayan GereksinimlerSistemin çalışma ortamı, güvenliği ve kullanıcı dostu olması gibi teknik özellikleridir. Örneğin; 'sistemin kanunlara uygun ve güvenilir olması' bir işlevsel olmayan gereksinimdir.
Prototip ModelMüşteri isteklerinin tam net olmadığı durumlarda, sistemin hızlı bir taslağının oluşturulması yöntemidir. Örneğin; kullanıcıların sistemin nasıl görüneceğini anlaması için hızlı bir arayüz tasarımı yapılır.
Artımlı ModelSistemin bir bütün olarak değil, küçük parçalar (sürümler) halinde geliştirilip kullanıcıya sunulmasıdır. Örneğin; bir kelime işlemcinin önce dosya yönetimi, sonra gramer kontrolü eklenerek geliştirilmesi.
Spiral ModelRisk analizi odaklı, iteratif ve sistematik bir geliştirme modelidir. Örneğin; her turda planlama, risk analizi ve mühendislik çalışmaları yapılarak proje geliştirilir.
Bileşen Tabanlı GeliştirmeDaha önce geliştirilmiş hazır yazılım bileşenlerinin (nesnelerin) kütüphanelerden alınıp yeni sistemde kullanılmasıdır. Örneğin; bir kütüphaneden alınan 'ödeme modülü' bileşeninin yeni projeye entegre edilmesi.
Kritik Yol Metodu (CPM)Projenin tamamlanması için gereken en uzun süreli görevler dizisini belirleyen yönetim tekniğidir. Örneğin; projenin bitiş tarihini belirleyen en kritik görevlerin analizi yapılır.
Sistem ModeliSistemin soyut yapısının grafiklerle (diyagramlarla) gösterilmesidir. Örneğin; sistemin işleyişini anlatan kullanım durum (use-case) diyagramları birer sistem modelidir.
Veritabanı Kurtarma NoktasıVeritabanında hata oluştuğunda sistemin en son sağlıklı haline geri döndürülmesini sağlayan yedekleme noktasıdır. Örneğin; sistem çöktüğünde verilerin son yedekten geri yüklenmesi.
Doğrusal Ardışık ModelTüm fazların bir kez ve sırayla uygulandığı, 'Şelale' olarak da bilinen modeldir. Örneğin; gereksinim analizi bitmeden tasarım fazına geçilmez.

Diğer Önemli Bilgiler

İş ve Teknoloji Sebepli Değişiklikler

Sistem ömrünün sonuna yaklaşıldığında, performans düşüklüğü ve işletme ihtiyaçlarının değişmesi nedeniyle büyük değişiklikler yapılması gerekir; bu bölge sistemin yenilenme zamanının geldiğini gösterir.

Bankacılık Sistemleri ve Güvenlik

Bankacılık sistemleri gibi yüksek güvenlik gerektiren projelerde, gereksinimlerin en başta tam tanımlanması gerektiği için Doğrusal Ardışık Model tercih edilir.

Sanal Gerçeklik Sistemleri

İnteraktif işlemlerin yoğun olduğu sanal gerçeklik sistemlerinde, hızlı cevap verme ve kullanışlılık ön planda olduğu için iteratif modeller tercih edilir.

CASE Deposu (Repository)

CASE araçlarının mimarisinin merkezinde yer alan, geliştiricilerin tüm verilerinin ve modellerinin saklandığı merkezi veritabanıdır.

Çevik Modelin Uygulanmadığı Durumlar

Hata payının çok düşük olduğu kritik sistemlerde ve tüm gereksinimlerin önceden kesinleşmesi gereken durumlarda çevik yaklaşımlar kullanılmamalıdır.

Proje Yönetiminde İnsan Unsuru

Etkin bir proje yönetimi; insan, ürün, süreç ve proje olmak üzere dört ana unsura odaklanır. İnsan unsuru göz ardı edilen projelerin başarısız olma ihtimali yüksektir.

Sınavda Dikkat Et

  • SGYD fazlarının sırasını mutlaka ezberleyin; sınavda fazların yerini değiştiren sorular sıkça çıkar.
  • Doğrusal Ardışık (Şelale) modelin 'belge güdümlü' olduğunu unutmayın; bu modelde iterasyona izin verilmez.
  • Çevik modellerin hangi durumlarda (kritik sistemler) kullanılmaması gerektiğini iyi kavrayın.
  • Fizibilite türlerini (Teknik, Operasyonel, Ekonomik, Zamanlama, Risk) karıştırmayın; 'Ekip fizibilitesi' gibi çeldiricilere dikkat edin.
  • CASE araçlarının sadece çizim değil, analiz ve test süreçlerini de kapsadığını unutmayın.
  • Scrum'daki 'Sprint' kavramının 2-4 haftalık döngüler olduğunu not edin.