Realdolmen Education

Details

Unified Modeling Language (UML)

This course is currently not scheduled on the open calendar, but can be organized on request.

Request Course

Duration

2 day(s)

Audience

Business analysts, systems analysts, systems designers, programmers, project managers.

Prerequisites

Having some basic software engineering skills.

Objectives

At the end of the course, participants will have mastered the syntax of the most commonly used UML diagram types and will be able to develop UML models to identify and describe project requirements and to create models for the analysis and design of systems.

Methods

Classroom training with hands-on exercises.

Description

UML has established itself as the de-facto OO analysis and design modeling language. Endorsed by the OMG as the standard approach to modeling, UML offers a homogeneous approach that is enthusiastically embraced by the software development community. As a modeling language, it offers a common syntax that enables communication between collaborating teams, and can be used from analysts to developers during the complete software development lifecycle.

The course offers a complete and pragmatic instruction into the modeling techniques of UML. The exercises will help the participants to reason about the syntax, and give them the necessary experience to use UML in practice. The course covers the most common UML diagrams such as use case, class, activity, state, sequence, communication, package and deployment diagrams.

Contents

  • Unified Modeling Language (UML)
    • Goal
    • Agenda
    • Reference
  • Introduction
    • Introduction
    • Building Blocks
    • Common Mechanisms
    • Architecture
    • UML Diagrams
  • Use Case Diagrams
    • Purpose of Use Cases
    • Use Case Definition
    • Use Case Diagram Symbols
    • SymbolDefinitions
    • System Boundary
    • Use Case Diagram Actors
    • Use Case Specifications
    • Use Case Include
    • Use Case Diagram Example
    • Use Case Extension
    • Use Case Content
    • Defining the Steps
    • Content Additions
    • Defining Extends and Includes
    • Use Case Specification Example
  • Class Diagrams - Analysis
    • Classification
    • Class Diagram Definitions
    • Finding Classes
    • Antipattern: Swiss Army Knife
    • Analysis Classes
    • Class Definition
    • Properties
    • Attributes
    • Association
    • Property Example
    • Multiplicity
    • Reflexive Associations
    • Operations
    • Constructors
    • Destructors
    • Responsibilities
    • Visibility
    • Encapsulation
    • Property Remarks
    • Generalization
    • Substitutability
    • Dependencies
    • Constraints
    • Example Class Diagram
    • When to Use Class Diagrams
  • Class Diagrams - Design
    • From Analysis to Design
    • Viewpoints
    • Inheritance Issues
    • Associations versus Inheritance
    • Aggregation versus Composition
    • Aggregation
    • Composition
    • Abstract Classes and Interfaces
    • Abstract Class and Interface Examples
    • Interfaces
    • The Lollipop Notation
    • Finding Interfaces
    • Disadvantage of Interfaces
  • Class Diagrams - Advanced Concepts
    • Inheritance and Subclassing
    • Polymorphism
    • The Pillars of OO
    • Inheritance versus Interfaces
    • Remarks on Interfaces
    • Static Members
    • Qualified Associations
    • Bidirectional Associations
    • Association Class
    • Multiple Classification
    • Template Classes
  • Activity Diagrams
    • Activity Diagram Definition
    • Transitions
    • Start and End Activities
    • Decisions and Merges
    • Parallel Activities: Fork and Join
    • Swim Lanes
    • Activity Input and Output
    • Transformations
    • Asynchronous Calls
    • Activity Diagram Example
  • State Diagrams
    • State Diagrams
    • Transition Rules
    • Initial and Final States
    • State Diagram Examples
    • Entry and Exit Activities
    • Ongoing Activities
    • Self Transitions
    • State Diagram Advanced Example
    • Composite States
    • Sequential Composite States
    • Orthogonal Composite States
  • Sequence Diagrams
    • Interaction Diagrams
    • Sequence Diagrams
    • Participants and Lifelines
    • Activation Bars
    • Centralized vs Distributed Control
    • Sequence Diagram Control Flow
  • Communication Diagrams
    • Communication Diagrams
    • Links
    • Communication Diagram Example
    • Limits of Interaction Diagrams
  • Package Diagrams
    • Package Diagrams
    • Package Diagrams Examples
    • Selecting Packages
    • Package Dependencies
  • Deployment Diagrams
    • Deployment Diagram
    • Deployment Diagram Example
  • Position and History of UML
    • UML Definition
    • History
    • Sketching and Blueprinting
    • UML as a Programming Language
    • Why Use UML?
    • Methodologies
    • Development Process
    • Predicitive vs Adaptive Planning
    • Retrospective