Object-Oriented Analysis and Design (OOAD) Training with UML

  4.7 out of 5 - Read Testimonials

This Object-Orientated Analysis and Design (OOAD) with UML training course teaches students how to use object-oriented techniques from requirements gathering to implementation. Learn how to analyze and design classes and their relationships to each other in order to build a model of the business requirements. All the UML diagrams are covered in this OOAD class to identify the most suitable diagram suite for your organization. An emphasis is placed on Use Cases to capture and manage requirements and form the basis for test scenarios. Class relationships, through the use of Design Patterns, are leverage to enforce OO concepts that will produce a reusable structural design for your system that adapts well to change. Activity and Sequence diagrams are explored in some detail to model the dynamic aspects of your system. This is a hands-on OOAD class. Students will apply their new OOAD and UML skills obtained in the course to model prospective application solutions.


Public Classes: Delivered live online via WebEx and guaranteed to run . Join from anywhere!

Private Classes: Delivered at your offices , or any other location of your choice.

  1. To understand requirements, analysis and design workflow
  2. To learn to identify classes
  3. To learn to use diagram notation for use cases, class and object representation, links and associations, inheritance and object messages
  4. To gain a working knowledge of UML 2.0
  5. To understand the advantages of Design patterns
  1. Introduction to Analysis and Design
    1. Why is Programming Hard?
    2. The Tasks of Software Development
    3. Modules
    4. Models
    5. Modeling
    6. Perspective
    7. Objects
    8. Change
    9. New Paradigms
  2. Objects
    1. Encapsulation
    2. Abstraction
    3. Objects
    4. Classes
    5. Responsibilities
    6. Attributes
    7. Composite Classes
    8. Operations and Methods
    9. Visibility
    10. Inheritance
    11. Protected and Package Visibility
    12. Scope
    13. Class Scope
  3. Advanced Objects
    1. Constructors & Destructors
    2. Instance Creation
    3. Abstract Classes
    4. Polymorphism
    5. Multiple Inheritance
    6. Solving Multiple Inheritance Problems
    7. Interfaces
    8. Interfaces with Ball and Socket Notation
    9. Templates
  4. Classes and Their Relationships
    1. Class Models
    2. Associations
    3. Multiplicity
    4. Qualified Associations
    5. Roles
    6. Association Classes
    7. Composition and Aggregation
    8. Dependencies
    9. Using Class Models
  5. Sequence Diagrams
    1. Sequence Diagrams
    2. Interaction Frames
    3. Decisions
    4. Loops
    5. Creating and Destroying Objects
    6. Activation
    7. Synchronous & Asynchronous
    8. The Objects Drive the Interactions
    9. Evaluating Sequence Diagrams
    10. Using Sequence Diagrams
  6. Communication Diagrams
    1. Communication Diagrams
    2. Communication and Class Diagrams
    3. Evaluating Communication Diagrams
    4. Using Communication Diagrams
  7. State Machine Diagrams
    1. What is State?
    2. Object-Oriented Analysis & Design
    3. Using the Unified Modeling Language
    4. State Notation
    5. Transitions and Guards
    6. Registers and Actions
    7. More Actions
    8. Internal Transitions
    9. Superstates and Substates
    10. Concurrent States
    11. Using State Machines
    12. Implementation
  8. Activity Diagrams
    1. Activity Notation
    2. Decisions and Merges
    3. Forks and Joins
    4. Drilling Down
    5. Iteration
    6. Partitions
    7. Signals
    8. Parameters and Pins
    9. Expansion Regions
    10. Using Activity Diagrams
  9. Package, Component, and Deployment Diagrams
    1. Modeling Groups of Elements - Package
    2. Diagrams
    3. Visibility and Importing
    4. Structural Diagrams
    5. Components and Interfaces
    6. Deployment Diagram
    7. Composite Structure Diagrams
    8. Timing Diagrams
    9. Interaction Overview Diagrams
  10. Use Cases
    1. Use Cases
    2. Use Case Diagram Components
    3. Actor Generalization
    4. Include
    5. Extend
    6. Specialize
    7. Other Systems
    8. Narrative
    9. Template for Use Case Narrative
    10. Using Use Cases
  11. Process
    1. Process
    2. Risk Management
    3. Test
    4. Reviews
    5. Refactoring
    6. History
    7. The Unified Process
    8. Agile Processes
  12. The Project
    1. Inception
    2. Elaboration
    3. Elaboration II
    4. Construction Iterations
    5. Construction Iterations - The Other Stuff
  13. Domain Analysis
    1. Top View - The Domain Perspective
    2. Data Dictionary
    3. Finding the Objects
    4. Responsibilities, Collaborators, and Attributes
    5. CRC Cards
    6. Class Models
    7. Use Case Models
    8. Other Models
    9. Judging the Domain Model
  14. Requirements and Specification
    1. The Goals
    2. Understand the Problem
    3. Specify a Solution
    4. Prototyping
    5. The Complex User
    6. Other Models
    7. Judging the Requirements Model
  15. Design of Objects
    1. Design
    2. Factoring
    3. Design of Software Objects
    4. Features
    5. Methods
    6. Cohesion of Objects
    7. Coupling between Objects
    8. Coupling and Visibility
    9. Inheritance
  16. System Design
    1. Design
    2. A Few Rules
    3. Object Creation
    4. Class Models
    5. Interaction Diagrams
    6. Printing the Catalog
    7. Printing the Catalog II
    8. Printing the Catalog III
    9. Object Links
    10. Associations
  17. Refactoring
    1. Refactoring
    2. Clues and Cues
    3. How to Refactor
    4. A Few Refactoring Patterns
  18. Appendix A - UML Syntax
  19. Appendix B - Design by Contract
    1. Contracts
    2. Enforcing Contracts
    3. Inheritance and Contract
  20. Appendix C - University Summary
  21. Appendix D - Implementations
    1. C++
    2. Java
    3. C#
Class Materials

Each student in our Live Online and our Onsite classes receives a comprehensive set of materials, including course notes and all the class examples.

Training for Yourself

$2,875.00 or 5 vouchers

Upcoming Live Online Classes

  • See More Classes

Please select a class.

Training for your Team

Length: 5 Days
  • Private Class for your Team
  • Online or On-location
  • Customizable
  • Expert Instructors

What people say about our training

The instructor's insight and corporate experience were key in my satisfaction with the course. Excellent facilitator.
Rick Lentz
Great Courses, Great Instructors.
Erika Martinez-Burns
Agriculture Financial Services Corportation
Well worth the money! Learned more than expected!
Nick Piscopio
LifeScan, Inc.
The class was excellent! The instructor was very knowledgeable and I was able to learn new skills that I can use in the workplace. This was well worth the time and money. Best of all, I did not have to leave home.
Heather Abbott
USA Cycling

No cancelation for low enrollment

Certified Microsoft Partner

Registered Education Provider (R.E.P.)

GSA schedule pricing


Students who have taken Instructor-led Training


Organizations who trust Webucator for their Instructor-led training needs


Satisfaction guarantee and retake option


Students rated our Object-Oriented Analysis and Design (OOAD) Training with UML trainers 9.32 out of 10 based on 13 reviews

Contact Us or call 1-877-932-8228