← Ünite 7
Sistem Analizi ve Tasarımı

Ünite 7: UML ile Nesne Yönelimli Analiz ve Modelleme

UML 2.5 Standartları
UML 2.5 sürümü, sistem modelleme için toplam 15 farklı diyagram tekniği sunmaktadır. Bu teknikler yapısal ve davranışsal olarak iki ana kategoriye ayrılarak sistemin hem statik hem dinamik yapısını kapsar.
Nesne Tanımı
Nesne, sözlük anlamıyla görülebilen, dokunulabilen veya farklı şekillerde algılanabilen her şeydir. Sistem analizinde bu, insan, yer, olay veya bilgi tutan herhangi bir varlık olabilir.
Erişim Belirleyiciler
Sınıf diyagramlarında public (+), protected (#) ve private (-) olarak üç farklı erişim düzeyi tanımlanır. Bu belirleyiciler, verilerin diğer sınıflar tarafından ne ölçüde görülebileceğini kontrol eder.
Bağlam Diyagramı
Sistem genelinde özet bilgi sağlayan ilk veri akış diyagramıdır. Sistemin sınırlarını ve dış dünya ile olan etkileşimini belirlemek için kullanılır.

Anahtar Kavramlar

NesneGörülebilen, dokunulabilen veya soyut olarak algılanabilen, kendine has nitelikleri ve davranışları olan varlıktır. Örneğin, bir 'Hasta' nesnesi, isim ve soyisim gibi özniteliklere sahip bir varlıktır.
SınıfBenzer öznitelik ve davranışlara sahip nesneleri tanımlamak için kullanılan genel bir şablondur. Örneğin, 'Hasta' sınıfı tüm hastaların sahip olması gereken ortak özellikleri barındıran bir yapıdır.
ÖznitelikBir nesnenin sahip olduğu özellikleri belirten verilerdir. Örneğin, bir hasta nesnesinin 'doğum tarihi' veya 'sigorta kurumu' bilgileri özniteliktir.
DavranışBir nesnenin yapabildiği işlevleri belirten ve fonksiyonlar olarak gerçeklenen eylemlerdir. Örneğin, bir kapı nesnesinin 'açılma' veya 'kilitlenme' eylemleri birer davranıştır.
KapsüllemeVerilerin ve bu veriler üzerinde işlem yapan fonksiyonların bir varlık içerisinde birleştirilmesidir. Bu sayede veriler dış etkilerden korunur ve sistemin yönetimi kolaylaşır.
MirasBir nesnenin sahip olduğu verilerin ve fonksiyonların başka bir nesne tarafından devralınmasıdır. Örneğin, 'Birey' üst sınıfından türetilen 'Doktor' sınıfı, bireyin tüm özelliklerini miras alır.
Çok BiçimlilikFarklı nesnelerin aynı mesaja farklı şekillerde yanıt vermesidir. Örneğin, 'Çiz' mesajı gönderildiğinde 'Kare' nesnesi kare çizerken, 'Daire' nesnesi daire çizer.
Çarpan (Multiplicity)Bir sınıfa ait nesnenin diğer sınıfa ait kaç nesne ile ilişkilendirileceğini belirten değerdir. Örneğin, bir bölümün 1 müdürü olması gibi.
ToplanmaBir nesnenin diğer nesneleri içermesini belirten, parçanın bütün olmadan da var olabildiği gevşek bir ilişkidir. Örneğin, bilgisayar ve klavye ilişkisi.
BileşimParçanın bütüne sıkı sıkıya bağlı olduğu, bütün yok olduğunda parçanın da anlamını yitirdiği ilişkidir. Örneğin, masa ve masa ayakları.
AktörSistem ile etkileşimde bulunan kullanıcı veya başka bir sistemdir. Kullanım durum diyagramlarında çöp adam figürü ile gösterilir.
DengelemeVeri akış diyagramlarında bir sürecin alt düzeye ayrıştırılması sırasında girdi ve çıktıların korunması ilkesidir.
Yaşam ÇizgisiDizge diyagramlarında nesnelerin zaman içindeki varlığını gösteren dikey kesikli çizgilerdir.

Diğer Önemli Bilgiler

Karar Ağacı Yapısı

En solda kök (root) ile başlayan, koşullara göre dallanan ve en sağda eylemi belirten yaprak (leaf) yapıları ile sonuçlanan bir mantıksal modelleme yöntemidir.

Süreç Modelleme Araçları

Süreçlerin mantıksal modellenmesinde en çok başvurulan üç yöntem yapısal dil, karar tabloları ve karar ağaçlarıdır. Bu yöntemler karmaşık iş mantıklarını netleştirir.

Mirasın Faydası

Miras ilişkisi sayesinde ortak özellikler üst sınıfta bir kez tanımlanır. Bu teknik, kod tekrarını önleyerek hata payını düşürür ve geliştirme süresinden tasarruf sağlar.

Dizge Diyagramı Katılımcıları

Dizge diyagramlarında nesneler üst üste iki nokta (::) kullanılarak belirtilir. Nesnenin adı sol tarafta, sınıfı ise sağ tarafta yer alır.

Etkinlik Diyagramı Düğümleri

Etkinlik diyagramlarında başlangıç, karar, birleşim ve bitiş olmak üzere dört temel düğüm türü bulunur. Bu düğümler iş akışının yönünü ve sonlanma noktalarını belirler.

Sınavda Dikkat Et

  • Yapısal ve davranışsal diyagramları birbirinden ayırın; sınavda hangisinin hangi gruba ait olduğu sıkça sorulur.
  • Miras ve çok biçimlilik kavramlarını karıştırmayın; miras kod tekrarını önler, çok biçimlilik ise aynı mesajın farklı yorumlanmasını sağlar.
  • Erişim belirleyicilerin (+, #, -) hangi sembolle ifade edildiğini ezberleyin, sınıf diyagramı sorularında hayat kurtarır.
  • Toplanma ve bileşim arasındaki farka dikkat edin; 'bütün yok olduğunda parça da yok oluyorsa' bu bileşimdir.
  • Dizge diyagramlarında nesne isminin üst üste iki nokta (::) ile ayrıldığını unutmayın.
  • Veri akış diyagramları ile UML diyagramlarını birbirine karıştırmayın; VAD süreç modelleme, UML ise nesne modellemedir.