Course Search:

Request more details:


Object Oriented Analysis & Design with the Unified Modeling Language (UML)

Description:
A good understanding of object-oriented analysis and design is important in designing effective systems using modern software engineering languages and frameworks such as C++, .NET and Java. This five-day course teaches you how to use object-oriented techniques to analyze real-world requirements and to design solutions that are ready to code. The course employs Unified Modeling Language, using UML 2.0 notation. The course contains a case study of an object-oriented system. Progressive labs go through the analysis and design of this system, which is documented in UML notation. Implementations are provided of the case study in C++, Java and C#.
  • Cost: Price on application
  • Duration: 5 Days
  • This course is not available as part of our public schedule but can be provided on a customised client specific basis.
Prerequisites:
Some exposure to the problems of analysis and design. Experience with structured analysis and design and object-oriented programming would be helpful.
Course Introduction:
Course Objectives
Overview
Suggested References
Introduction to Analysis and Design:
Why is Programming Hard?
The Tasks of Software Development
Modules
Models
Modeling
Perspective
Objects
Change
New Paradigms
Objects:
Encapsulation
Abstraction
Objects
Classes
Responsibilities
Attributes
Composite Classes
Operations and Methods
Visibility
Inheritance
Inheritance Example
Protected and Package Visibility
Scope
Class Scope
Advanced Objects:
Constructors & Destructors
Instance Creation
Abstract Classes
Polymorphism
Polymorphism Example
Multiple Inheritance
Solving Multiple Inheritance Problems
Interfaces
Interfaces with Ball and Socket Notation
Templates
Classes and Their Relationships:
Class Models
Associations
Multiplicity
Qualified Associations
Roles
Association Classes
Composition and Aggregation
Using Class Models
Sequence Diagrams:
Sequence Diagrams
Interaction Frames
Decisions
Loops
Creating and Destroying Objects
Activation - 2.0
Synchronous & Asynchronous
The Objects Drive the Interactions
Evaluating Sequence Diagrams
Using Sequence Diagrams
Communication Diagrams:
Communication Diagrams
Communication and Class Diagrams
Evaluating Communication Diagrams
Using Communication Diagrams
State Machine Diagrams:
What is State?
State Notation
Transitions and Guards
Registers and Actions
More Actions
Internal Transitions
Superstates and Substates
Concurrent States
Using State Machines
Implementation
Activity Diagrams:
Activity Notation
Decisions and Merges
Synchronization
Drilling Down
Iteration
Partitions
Parameters and Pins
Expansion Regions
Using Activity Diagrams
Package, Component, and Deployment Diagrams:
Modeling Groups of Elements - Package Diagrams
Visibility and Importing
Structural Diagrams
Components and Interfaces
Deployment Diagram
New Models in UML 2.0:
New to UML 2.0
Composite Structure Diagrams
Timing Diagrams
Interaction Overview Diagrams
Use Cases:
Use Cases
Use Case Diagram Components
Use Case Diagram
Actor Generalization
Include and Extend
Other Systems
Narrative
Template for Use Case Narrative
Using Use Cases
Process:
Process
Risk Management
Test
Reviews
Refactoring
History
The Unified Process
Agile Processes
The Project:
Inception
Elaboration
Elaboration II
Construction Iterations
Construction Iterations - The Other Stuff
Domain Analysis:
Top View - The Domain Perspective
Data Dictionary
Finding the Objects
Responsibilities, Collaborators, and Attributes
CRC Cards
Class Models
Use Case Models
Other Models
Judging the Domain Model
Requirements and Specification:
The Goals
Understand the Problem
Specify a Solution
Prototyping
The Complex User
Other Models
Judging the Requirements Model
Design of Objects:
Design
Factoring
Design of Software Objects
Features
Methods
Cohesion of Objects
Coupling between Objects
Coupling and Visibility
Inheritance
System Design:
Design
A Few Rules
Object Creation
Class Models
Interaction Diagrams
Printing the Catalog
Printing the Catalog II
Printing the Catalog III
Object Links
Associations
Refactoring:
Refactoring
Clues and Cues
How to Refactor
A Few Refactoring Patterns


Dublin: 01 6627700 - Cork: 021 4319010 - Limerick: 061 311982

© Professional Training Solutions Limited 1996-2012
CRO No. 252390 - Unit 22, Westland Square, Pearse Street, Dublin 2, Ireland.