Hebley & Associates Logo
About
Services
Training
Papers
Resume
Contact
Links
Blank

Object Oriented Analysis & Design (with the UML)

Audience

This course is targeted towards software developers, architects and technical leaders.

Length of Course

4 days

Course Goals

The goal of the course is to enable the student to create analysis and design artifacts using the UML notation.

By the end of the course the student will understand the reasons for using object technology and learn how to follow an iterative, incremental, use-case-driven process.

The student will be able to develop complete use cases, create domain models, assign responsibilities to objects using patterns, make collaboration diagrams illustrating object interactions and design classes with low coupling and high cohesion.

Course Components

    Object Concepts

  • Class and instance
  • Method and message
  • Polymorphism
  • Encapsulation
  • Containment
  • Inheritance

    Development Process

  • Unified Process
  • Complexity and decomposition
  • Iterative, incremental processes
  • Development cycles
  • Steps in a process

    Use Cases

  • Business processes and use cases
  • High-level versus expanded
  • Essential versus real
  • Include and extend relationships
  • Conversational style

    Domain Models

  • Domain concepts
  • UML type diagrams
  • Attributes
  • Associations
  • Generalization
  • Associative types
  • Roles
  • Multiplicity

    System Behavior

  • System events and operations
  • System sequence diagrams
  • Operation contracts

    Collaboration Diagrams

  • Message labels
  • Instances
  • Context
  • Links

    Responsibilities and GRASP Patterns

  • Responsibilities
  • Expert
  • Creator
  • Controller
  • Low coupling
  • High cohesion
  • Polymorphism

    GoF Patterns

  • Singleton
  • Proxy
  • State
  • Prototype
  • Observer
  • Command
  • Template method

    Design Class Diagrams

  • Software classes
  • Navigability
  • Visibility specifiers

    Architecture Designs

  • Layered architecture
  • Model/view separation
  • Three-tier client-server architecture

    Other UML Notation

  • State diagrams
  • Packages
  • Constraint

Return to Training Overview page

Bottom logo Contact