Object Oriented Analysis & Design Part 2


This course allows participants to know the key concepts and methodologies required to perform quality object-oriented software engineering, with particular attention to practical techniques such as use-case, UML diagramming, and patterns.


The course is intended for any professional who needs to design object-oriented software solutions.


Before attending this course, participants must have attended the Unified Modeling Language (UML) Foundations course or have equivalent knowledge.

At course completion

After completing this course, participants will be able to:

  • Use an efficient method for IT design
  • Use iterative, Use Case and architecture centric model
  • Use UML to represent the model
  • Use objects paradigms (abstraction, encapsulation, inheritance, ...)


This course does not prepare to any exam.

Course outline

Module 1: Identify Design Elements

  • Lesson 1: Identify classes and subsystems
  • Lesson 2: Identify subsystem interfaces
  • Lesson 3: Update the organization of the Design Model

Module 2: Identify Design Mechanisms

  • Lesson 1: Categorize clients of analysis mechanisms
  • Lesson 2: Document architectural mechanisms

Module 3: Distribution

  • Lesson 1: Define the network configuration
  • Lesson 2: Allocate processes to nodes
  • Lesson 3: Define the distribution mechanism

Module 4: Use Case Design

  • Lesson 1: Describe interaction among design objects
  • Lesson 2: Simplify sequence diagrams using subsystems
  • Lesson 3: Describe persistence-related behavior
  • Lesson 4: Refine the flow of events description
  • Lesson 5: Unify classes and subsystems

Module 4: Subsystem Design

  • Lesson 1: Distribute subsystem behavior to subsystem elements
  • Lesson 2: Document subsystem elements
  • Lesson 3: Describe subsystem dependencies

Module 5: Class Design

  • Lesson 1: Create Initial Design Classes
  • Lesson 2: Define Operations
  • Lesson 3: Define Methods
  • Lesson 4: Define States
  • Lesson 5: Define Attributes
  • Lesson 6: Define Dependencies
  • Lesson 7: Define Associations
  • Lesson 8: Define Internal Structure
  • Lesson 9: Define Generalizations
  • Lesson 10: Resolve Use-Case Collisions
  • Lesson 11: Handle Nonfunctional Requirements in General



Cursus de certification

There is no certification.


During the course participants are encouraged to actively participate in the learning experience by running example files during lectures and performing design challenges during labs. Each lab session allows you to compare your solution to the instructor's.

Formations complémentaires

Course: OOAD1, UML, UML Adv