Object-Oriented Analysis and Design with UML: Analyzing the System

This course is included in our On-demand training solution.


To show how to specify object interaction in the UML and to identify associations and inheritance between classes

Target Audience

Web developers


Knowledge of object-oriented programming concepts, such as encapsulation and inheritance, and of software engineering principles

Expected Duration

300 min.

Course Objectives

Object-Oriented Analysis and Design with UML: Analyzing the System

  • differentiate between sequence and collaboration diagrams and list the ways in which interaction diagrams can be used to define classes’ responsibilities.
  • use the correct conventions in a UML sequence diagram and show how focus of control is handled by the three different message types available in UML.
  • correctly label objects and messages in a UML sequence diagram.
  • use the correct conventions for classes, objects, messages, multiobjects, and conditions in a UML collaboration diagram.
  • complete a collaboration diagram in UML.
  • create associations in UML class diagrams, correctly name an association, and identify relationships between classes in sequence and collaboration diagrams.
  • distinguish between aggregations and associations and determine which to use when modeling a relationship.
  • select appropriate multiplicity for a given relationship and use the correct UML notation for different multiplicity indicators.
  • select appropriate relationships between classes, select a role name for a class, name an association, and estimate multiplicity for relationships between classes in a UML class diagram.
  • identify situations where the use of reflexive associations, qualified associations, constraints, or association classes is appropriate.
  • show how structure, behavior, and relationships can be inherited; link the concepts abstract and concrete classes, and polymorphism to inheritance; and list some guidelines for good inheritance.
  • list the steps involved in the generalization and specialization methods of finding inheritance.
  • give examples of and list the best practices for multiple inheritance.
  • choose between using inheritance and aggregation to model a particular scenario, and choose an appropriate method of modeling for metamorphosis in UML.
  • identify appropriate inheritance and aggregation relationships between classes in a UML class diagram.