Training
Download Profile

OOAD, UML And Design Patterns

This course will familiarize you with all phases of Object-Oriented Analysis and Design (OOAD) using the Unified Modeling Language (UML). You will learn how to consider any subject matter and identify all its concepts and relationships to express and model them using UML Analysis, and then design them in preparation for the programming phase.

Furthermore, you will learn advanced Analysis and Design strategies based upon the most important Object-Oriented Patterns. This course will set you up to master the fundamental aspects of Analysis and Design a developer needs to succeed.


Course Objectives :

At the end of the course, students will be able to:

  • Become familiar with all phases of Object-Oriented Analysis and Design (OOAD)
  • Master the main features of the Unified Modeling Language (UML)
  • Understand how UML supports the entire OOAD process
  • Master the main concepts of Object Technologies and how to apply them at work
  • Develop the ability to analyze and solve challenging Problem Domains
  • Learn the Object Design Principles and understand how to apply them towards implementation
  • Discover and learn how to use the most fundamental OO Analysis Patterns and Design Patterns
  • Understand how to implement any Object Design with OO
  • Programming Languages like Java, C++ or others.

Target Audience :

IT Developers, Senior Designers, Programming Team Leaders, Programmers.


Syllabus Overview:

OOAD Overview


OO Business Analysis

  • Overview
  • Stakeholders Viewpoint
  • IT Viewpoint
  • Bridging the Viewpoints

Business Concept Modeling (BCM)

  • Overview
  • Model Elements; Theory, Syntax, Examples and Exercises for:
    • Business Concepts
    • Class
    • Business Concept Relationships
    • Inheritance
    • Composition
    • Association
    • Association Role
    • Association Class

The OO Design Propagation Pattern

  • Overview of Propagation Sequence
  • The 5 OO Design Principles:
    • Specialization
    • Self-sufficiency
    • Interface
    • Delegation
    • Propagation
  • Code Example
  • UML Sequence Diagrams
  • UML Communication Diagrams
  • Propagation Pattern Exercise

The Composite Pattern

  • Motivation
  • Solution
  • Meta-model
  • A Manufacturing Framework Example
  • The Product Composite Case
  • Typical code implementation

Application Architecture

  • Layering of an Enterprise Application
  • Enterprise Architecture
  • UML Deployment Diagrams
  • UML Component Diagrams

OO Design Fundamentals

  • OO Principles
  • JSTL format library
  • Encapsulation
  • Specialization
  • Self-Sufficiency
  • Interface
  • Instantiation
  • Abstraction
  • Inheritance
  • Polymorphism
  • Encapsulation & Specialization
  • Inheritance & Polymorphism
  • Polymorphism Strategies:
    • Replacement Method Pattern
    • Extension Method Pattern
    • Template Method Pattern
    • Strategy Pattern

The OO Design Visitor Pattern

  • Overview
  • Visitor Case Example
  • Propagation Pattern Drawbacks
  • Visitor Code Example
  • Visitor Lab

State Modeling

  • Modeling Business rules and policies with states and their transitions
  • State Definition
  • State
  • State Notation
    • State Structure
    • Entry and Exit Effects
    • Internal Transitions
    • Deferred Events
    • do Activities
  • State Modeling Exercise 1
  • State Transitions
  • State Modeling Exercise 2
  • Substates

The OO Design State Pattern

  • States as Objects
  • The State Model
  • State Pattern Metamodel
  • State Programming Lab

Corporate Case Study (optional)

  • Problem statement and glossary of terms
  • Use case analysis and activity diagrams
  • Class and object models
  • Object design: creating class methods and sequence diagrams



Contact Us

Call us at 949-732-3105

Email us at training@ssinfotek.com