1. Systems Modelling Temelleri
İlk bölüm, sistem modellemenin neden gerekli olduğunu ve modellerin Systems Development Lifecycle içerisindeki yerini açıklar.
- Modellemeye duyulan ihtiyaç
- Modelling standards
- Seçilen modelleme yaklaşımının gerekçeleri
- Modelling yaklaşımı ile Systems Development Lifecycle ilişkisi
- Modellerin geliştirme yaşam döngüsündeki yeri
- Sistemin farklı perspektiflerden modellenmesi
- Farklı modeller arasındaki etkileşim
- Model validation ve verification
2. Systems Modelling'in İş ve Geliştirme Bağlamı
Modelleme çalışmasının yalnızca teknik bir dokümantasyon faaliyeti olmadığı, business objectives ve system requirements ile sürekli ilişkilendirilmesi gerektiği ele alınır.
- Analizin business objectives doğrultusunda izlenmesi
- System requirements ile modeller arasındaki uyum
- Modellerin tasarıma geçişteki rolü
- Software package selection çalışmalarında modellerin kullanımı
- Sistem geliştirme faaliyetlerine geçiş
3. Use Case Modelling
Bu bölümde sistemin kullanıcı perspektifinden modellenmesine odaklanılır.
- User requirements'ın modellenmesi
- Use case kavramı
- Actors
- System boundary
- Use Case Diagrams
- Actors ve use case'lerin generalisation ilişkileri
- Use case associations
- Use case descriptions
- Use case description template
- Pre-conditions ve post-conditions
- Main flows
- Alternative flows
Katılımcılar böylece kullanıcıların sistemden ne beklediğini ve sistemle nasıl etkileşim kurduğunu yapılandırılmış şekilde ifade etmeyi öğrenir.
4. Activity Diagrams
Activity Diagram'ların süreçlerin ve use case davranışlarının modellenmesinde nasıl kullanılabileceği incelenir.
- Process modelling
- Activity Diagram yapısı
- Use case description'ların Activity Diagram ile gösterilmesi
- Süreç akışlarının modellenmesi
- Aktivite ve karar noktalarının temsil edilmesi
5. Static Modelling of Data
Sistemin statik yapısının UML modelleriyle temsil edilmesine odaklanılır.
- Analysis class modelling yaklaşımının amacı
- Objects ve classes
- Classes'ın gösterimi
- Encapsulation
- Attributes'ın tanımlanması
- Associations
- Generalisation
- Inheritance
- Abstraction
- Class Diagrams
- Object Diagrams
Bu bölüm, sistem içerisindeki temel veri ve nesne yapılarının ve bunların birbirleriyle ilişkilerinin modellenmesini sağlar.
6. Dynamic Modelling
Statik yapıların yanında sistemin zaman içerisinde nasıl davrandığını göstermek için kullanılan dinamik modelleme teknikleri ele alınır.
- State Machine Diagrams
- Event-driven davranışların modellenmesi
- Use case realisation
- Communication Diagrams'a giriş
- Sequence Diagrams
- Nesneler arasındaki etkileşimlerin modellenmesi
7. Modeller Arasındaki Etkileşim
UML modellerinin birbirinden bağımsız çıktılar olmadığı, aynı sistemin farklı perspektiflerini temsil ettiği üzerinde durulur.
Özellikle şu ilişkiler incelenir:
- Activity Diagram ve Use Cases
- Use Cases ve Class Model
- State Machine Diagram ve Use Cases
- Objects ve Activity Diagrams
Bu yaklaşım sayesinde katılımcılar modeller arasındaki tutarlılığı kontrol edebilir ve sistem gereksinimlerinin farklı modellerde doğru şekilde temsil edilmesini sağlayabilir.
8. Case Study ve Uygulamalar
Eğitim boyunca devam eden bir case study, katılımcıların farklı UML tekniklerini uygulamalı olarak kullanmasını sağlar.
Katılımcılar aynı sistem üzerinde farklı modeller oluşturarak:
- Gereksinimleri analiz eder,
- Uygun modelleme tekniğini seçer,
- Modeller oluşturur,
- Farklı modeller arasındaki bağlantıları inceler,
- Modellerin tutarlılığını değerlendirir.
Bu çalışma, tekniklerin ayrı ayrı öğrenilmesinden ziyade bütünleşik bir sistem analizi yaklaşımı geliştirilmesine yardımcı olur.