UML Foundation


The Unified Modeling Language (UML) is the market standard used to represent a software system in its various aspects. It is a powerful way to model, specify and communicate the needs and requirements that a desired system must meet, as well as the structure and dynamics of the proposed solution. This course covers the main conceptual diagrams of UML. The theory is reinforced by practical exercises based on a case study.


This course is mainly dedicated to professionals involved in the definition of a system, ranging from business analysts to architects, designers to developers of a solution. It is also intended for users who wish to actively participate in the development of their requirements or simply want to correctly understand the diagrams.


This course does not require any prior knowledge.

At course completion

After participating in this course, participants will : 
  • Understand the basics of UML
  • Develop diagrams (use cases, activities, classes, states and sequence)
  • Develop a use case


There is no exam related to this course.

Course outline

Module 1: Introduction
  • Lesson 1: What is quality?
  • Lesson 2: What is a model?
  • Lesson 3: Why model?
  • Lesson 4: What is the object approach?
  • Lesson 5: Some fundamental concepts of the object approach (notion of class, encapsulation, inheritance, specialization, generalization, polymorphism, aggregation)
  • Lesson 6: History of UML
  • Lesson 7: Overview of UML Diagrams
Module 2: Use Case Diagram
  • Lesson 1: Introduction
  • Lesson 2: The actors (main and secondary)
  • Lesson 3: Use cases
  • Lesson 4: Representation of a use case diagram
  • Lesson 5: Relations between actors
  • Lesson 6: Relations between actors and cases of utilisation
  • Lesson 7: Use case relationships (including extensions and inclusions)
  • Lesson 8: Additions (package, namespace, workbook, stereotypes, notes)
Module 3: Activity Diagram
  • Lesson 1: Introduction
  • Lesson 2: Activities
  • Lesson 3: Actions (receiving, sending, waiting)
  • Lesson 4: Decisions and conditions
  • Lesson 5: Nodes (initial, final, flow, fork, merge)
Module 4: Description of a use case
  • Lesson 1: Introduction
  • Lesson 2: Actors (Stakeholders and their interests)
  • Lesson 3: Trigger event
  • Lesson 4: Pre-conditions (conditions required for the case to be applicable)
  • Lesson 5: Nominal scenario (expected sequence of the case)
  • Lesson 6: Alternative flows (exception handling)
  • Lesson 7: Post-conditions (consequences of the exit of the case)
  • Lesson 8: Constraints (non-functional information)
Module 5: Class Diagram
  • Lesson 1: Introduction
  • Lesson 2: Classes (with their attributes and methods)
  • Lesson 3: Links between classes (with cardinality, aggregation, composition, generalization and inheritance)
Module 6: State diagram - transitions
  • Lesson 1: Introduction
  • Lesson 2: State (including initial and final)
  • Lesson 3: Events (signal, call, change, time)
  • Lesson 4: Transitions
  • Lesson 5: Decision
Module 7: Sequence Diagram
  • Lesson 1: Introduction
  • Lesson 2: Actors
  • Lesson 3: Lifelines
  • Lesson 4: Activation box
  • Lesson 5: Messages (snychronous and asynchronous, response, delete)
  • Lesson 6: Operators (alternative, option, loop)


UML 2 through practice

Cursus de certification

UMLA - Advanced UML


  • Lab 1: Develop a Use Case Diagram
  • Lab 2: Develop an Activity Diagram
  • Lab 3: Develop a Use Case
  • Lab 4: Develop a Class Diagram
  • Lab 5: Develop a State Diagram
  • Lab 6: Develop a Sequence Diagram

Formations complémentaires

UMLA - Advanced UML