Object Oriented Analysis and Design with UML and RUP using Rational XDE Training

Course #:WA1195

Object Oriented Analysis and Design with UML and RUP using Rational XDE Training

Learn how to use object-oriented techniques from requirements gathering to implementation. Students learn how to analyze and design classes and their relationships to each other in order to build a model of the business requirements. A strong emphasis is placed on diagram notation for use cases and class relationships, as well as on sequence and state diagramming to capture the dynamic behaviour of the system. Rational XDE Developer Plus for Java is discussed, and examples show how to use the software to create and maintain the various diagrams in the context of the Rational Unified Process.


  • Overview of UML
  • Object-oriented concepts
  • Understanding requirements, analysis and design workflow
  • Identifying classes
  • Object interaction, relationships and behaviour
  • Design patterns
  • System Design and refactoring
  • Using Rational XDE Developer Plus for Java


What you will learn

  • After completing this course, the student should be able to:
  • Approach new complex software development with confidence
  • Use Rational XDE Developer Plus for Java to model applications using UML
  • Implement the software based on the design
  • Establish a software development methodology for in-house development



This course is intended for anyone involved in the production, deployment and maintenance of software.



Familiarity with software development in general is helpful.



Five days.

Outline of Object Oriented Analysis and Design with UML and RUP using Rational XDE Training



1. Overview of OOAD


  • Object-Oriented concepts
  • Object
  • Object relationships
  • Encapsulation
  • Class
  • Inheritance
  • Polymorphism
  • The Unified Object-Oriented Software Development Process
  • Unified Modeling Language and Rational XDE


2. Requirements Workflow


  • Requirements Workflow
  • Requirements
  • Problem Analysis and User Needs
  • Requirements Workshop
  • UML and Requirements Capture


3. Use Case Analysis


  • Use Case Analysis
  • Use Cases and Actors.
  • Use Cases Relationships.
  • Use Case Diagram.
  • Case study.
  • Use Case diagrams in XDE


4. Analysis Workflow


  • The Analysis Workflow
  • Analysis In the Rational Unified Process
  • Class Analysis
  • Use Case Realizations
  • Analysis Packages
  • Post Analysis


5. Class Identification


  • Class identification
  • Class categories: entity, boundary, control
  • Noun/verb analysis
  • CRC cards
  • Class diagrams
  • Class diagrams in XDE
  • Object diagrams


6. Class Relationship Analysis


  • Class relationship analysis
  • Class association
  • Aggregation
  • Composition
  • Qualification
  • Association Classes
  • Relationships in XDE


7. Object State Analysis


  • Object State Analysis
  • Object State
  • State Machine Diagrams
  • Transitions
  • Events
  • Signals
  • Time/Change Events
  • Substates/Superstates
  • Concurrent States
  • State Diagrams in XDE


8. Object Activity Analysis


  • Object Activity Analysis
  • Object Activities
  • Activity Diagrams
  • Nodes
  • Edges, Flows
  • Branches, Merges
  • Tokens
  • Signals
  • Parallel Activity
  • Partitions
  • Pins and Transformations
  • Acitivty Diagrams in XDE
  • Sequence Diagrams
  • Message Notation
  • Creation, condition, iteration, destruction
  • Loops and Conditions
  • Sequence Diagrams in XDE
  • Communication Diagrams


9. Design Workflow


  • Design Workflow
  • Design in RUP
  • Design vs. Analysis
  • Design Workflow
  • Refining Classes and Relationships
  • Refining Use Cases


10. Object Design


  • Object Design
  • Generalization
  • Encapsulation
  • Interface, types and roles
  • Persistent objects
  • Active Objects
  • Template (parameterized) classes


11. System Design


  • System Design
  • Collaborations
  • Packages
  • Systems and subsystems
  • Component diagram
  • Deployment diagram
  • Deployment Diagrams in XDE
  • Modeling different views of a system


12. Other UML Diagrams


  • Other UML Diagrams
  • Composite Structure Diagram
  • Timing Diagrams
  • Interaction Overview Diagram


13. Software Development Process


  • Risk Management
  • Requirements Change
  • Configuration Management
  • Quality Assurance
  • Agile Modeling


14. RUP


  • Software Development Methodologies
  • Waterfall v.s. Iterative
  • Low Ceremony v.s. High Ceremony
  • The Spirit of the Rational Unified Process
  • The Life Cycle of Projects Using the Rational Unified Process


15. Refactoring


  • Refactoring Principles
  • Common anti-patterns that should trigger the refactoring process
  • Some common refactorings


16. Reuse


  • Introduction to Software Reuse
  • What is Software Reuse
  • Why Reuse Software
  • How Software Assets Become Reusable
  • Basic Techniques for Software Reuse
  • Software Reuse in the Lifecycle of Software Development
  • Software Reuse management
  • Domain Engineering - Develop Software for Reuse


17. Design Patterns


  • Patterns
  • Common Design Patterns
  • Factory Method
  • Singleton
  • Command
  • Facade
  • Adapter
  • Proxy
  • Publish-Subscribe
  • Common Architecture Patterns
  • Three-tier Architecture
  • Multi-tier Architecture
  • Model-View-Controller


18. Advanced XDE


  • Team Development
  • Forward Engineering
  • Reverse Engineering


We regularly offer classes in these and other cities. Atlanta, Austin, Baltimore, Calgary, Chicago, Cleveland, Dallas, Denver, Detroit, Houston, Jacksonville, Miami, Montreal, New York City, Orlando, Ottawa, Philadelphia, Phoenix, Pittsburgh, Seattle, Toronto, Vancouver, Washington DC.