This three-day seminar provides in-depth, hands-on coverage of developing and documenting model-based functional requirements as part of a Model-Driven Architecture (MDA) software development approach. The software requirements are documented using a subset of the Unified Modeling Language (UML) instead of in a Natural Language like English. Model-based requirements are more complete, concise, less ambiguous than Natural Language requirements and lead to developing higher quality software with less cost and shorter schedules. No prior knowledge of object-oriented development, UML, or MDA is required. A companion seminar, Model-Based Design, explains how to complete the MDA process and create code that satisfies these requirements.

3-day seminar


You'll gain an in-depth understanding of how to significantly improve your project's requirements while practicing techniques that you can apply to their own projects.

Who Should Attend

This workshop will be useful to developers, technical leads, business analysts, and domain experts.

Certification Information

 PDU Reporting Instructions


All of our public classes are held at the Construx Training Center



  • Why model?
  • Software methods and models
  • Introduction to UML

Fundamental Principles

  • Importance of complexity
  • Abstraction
  • Cohesion and coupling
  • Design to invariants

Analysis vs. Design

  • Requirements vs. non-requirements
  • Functional requirements vs. non-functional requirements
  • How to separate
  • Why to separate
  • Definitions of analysis and design

Object Orientation

  • Concepts and terminology of object-orientation

Use Case Modeling

  • Actors
  • Use cases
  • Particpates
  • Includes & extends
  • Generalizations

Class Modeling

  • Classes
  • Attributes
  • Domains
  • Associations
  • Multiplicity
  • Generalization

Interaction Modeling

  • Sequence
  • Communication

State Modeling

  • States
  • Events
  • Transitions
  • Actions

Summary of OOA Modeling

  • Cross-model consistency
  • Stimulating models

Scaling Up

  • Recursivedesign/domain separation
  • Decomposing domains into subsystems

Overview of Designing from an OOA


Steve Tockey

Steve Tockey is the Principal Consultant at Construx Software. During more than three and a half decades in the software industry, he has worked as a programmer, ...