Skip to page content Skip to section menu Skip to site-wide navigation About Us | Consultancy | Training | Software | Publications | Open Source | Support | Open Standards | FAQ | Jobs
Site Style Info

Object-Oriented Analysis and Design with UML — A 3-Day Course

Synopsis

A practical introduction to object-oriented analysis and design, and how OOAD can use the Unified Modelling Language.

The course presents UML in the context of OO analysis and design, showing how the various UML diagrams can be applied at different stages. The emphasis is on how UML is used, rather than simply what it is.

In addition, there is a chapter on phased iterative development, as exemplified by the Rational Unified Process. Even if delegates are not going to use the RUP in their own projects, it is useful to see how OOAD and UML can fit into a development methodology.

What The Course Doesn't Cover: OO programming, traditional analysis and design.

Suitable For

Delivery

This course can be presented as a general introduction to OOAD, or it can be slanted more towards the analysis phase (if the delegates are primarily analysts) or the design phase (if the delegates are primarily programmers). If the course is being presented to programmers, topics can be tied in to code examples.

Hardware and software requirements for delivering this course at your site

Publicly scheduled dates, locations, and prices

A schedule of dates for this course is not currently available. Please call 0800 651 0338 or use our contact form to enquire about places and availability.


Contents

OO Concepts

  • What is OO?
  • A brief history
  • Advantages of Object Technology
  • Objects and classes
  • Encapsulation and data hiding
  • Objects and state
  • Polymorphism and inheritance
  • Interfaces

Introduction to UML

  • Origins and purpose of UML
  • A walkthrough of the UML diagram types
  • Using UML diagrams

OO Analysis and Design

  • Analysis versus design
  • The analysis phase
  • Domain modelling
  • Use cases in analysis
  • The design phase
  • Interface versus implementation

Use Cases

  • What use cases do (and don't do!)
  • Constructing use case diagrams
  • Requirements and use cases
  • Documenting use cases
  • Robustness analysis and use cases

Dynamic Modelling

  • Introduction to the UML dynamic modelling diagrams
  • Activity diagrams
  • Sequence diagrams
  • Collaboration diagrams
  • Statechart diagrams

Static Modelling

  • Classes and interfaces
  • Class diagrams
  • Object diagrams
  • Class relationships
  • Association
  • Aggregation and composition
  • Association classes
  • Inheritance
  • Abstract classes and operations
  • Interfaces
  • Stereotypes
  • Constraints
  • Attributes and operations in more detail
  • Design by contract

Patterns

  • What are patterns?
  • The Gang of Four and their patterns
  • Describing patterns
  • Common patterns
  • The MVC pattern for GUI applications
  • Patterns for delegation

OO Development Processes

  • Iterative development processes
  • Overview of the Rational Unified Process
  • Other processes (e.g. Component Based Development)