Aller au contenu

Modélisation avec UML : Découverte des diagrammes

Objectifs pédagogiques

Exemple Utilisation

Liste des principaux diagrammes

Voici une rapide présentation des différents diagrammes. Tous ne sont pas utilisés en entreprise.

Cas d’utilisation

Définit la structure fondamentale de votre application. Ce diagramme permet de tracer une représentation de haut niveau du système : vous définissez à la fois qui sont les acteurs externes de votre système et les activités auxquelles ils se livrent en utilisant le système.

Diagramme de Use Case

Classes

Définit la structure statique d'un modèle. Il contient un jeu de packages, des classes, des interfaces ainsi que leurs liens. L’ensemble de ces objets forme une structure de dépendances, constituant une représentation logique de tout ou partie d’un système logiciel.

Diagramme de Use Case

Objets

Décrit la structure des éléments d'un modèle. Il complète le diagramme de classes, et affiche les objets (instances de classe), les liens entre objets (instances d’association), et les dépendances.

Diagramme de Use Case

Collaboration

Décrit la façon dont le système accomplit les opérations spécifiées dans le diagramme de cas d’utilisation. Il fournit la même information que les diagrammes de séquence, la principale différence avec ces derniers réside dans le fait que le diagramme de collaboration se focalise sur les objets en action, il montre des objets qui collaborent sans tenir compte de l’aspect temporel. Les Messagesprécisent l’ordre des échanges.

Séquence

Décrit la façon dont le système accomplit les opérations spécifiées dans le diagramme de cas d’utilisation. Il contient des séries chronologiques d'appels de méthodes entre objets.

Diagramme de Use Case

Etats-transitions

Décrit le comportement possible d'un classificateur unique (cas d’utilisation, composant ou classe). Il représente un nombre fini d’états que le classificateur peut avoir, ainsi que les transitions qui provoquent un changement d’état.

Diagramme de Use Case

Activités

Modélise les aspects dynamiques d'un système. Il décrit les flux conduits par le traitement interne et représente le comportement interne d’un élément du modèle : cas d’utilisation, package, classificateur ou opération.

Diagramme de Use Case

Composants

Modélise la structure du logiciel en incluant les dépendances entre le code source, le code binaire et les composants exécutables. Un exemple est fournit un peu plus bas dans cette page.

Déploiement

Mise en oeuvre qui complète les diagrammes de composants en fournissant des informations plus détaillées sur la mise en oeuvre physique et les interactions des composants.

Il existe 3 catégories de diagrammes pour décrire (certains en les répartissent en 2 catégories) :

ou

Description des fonctionnalités (abrégée)

Exemple de diagramme de Uses Cases

Nous étudierons en détail comment construire ce type de diagramme bien pratique qui montre les interactions entre acteurs et système (pratique dans la phase de recueil des besoins).

Diagramme de Use Case

C’est le diagramme des cas d’utilisation (USE CASE)

L’équivalent SCRUM est le USER STORY.

Avec ce diagramme, on identifie les acteurs et leurs rôles ainsi que les fonctionnalités de l'application.

On définit un Use Case global pour l’application, puis des Uses Cases détaillés si besoin pour chacun des Uses cases principaux.

Quelques exemples et explications sur le site www.uml-sysml.org

Remarque : Chaque Use Case doit donner lieu à la description d’un scénario textuel décrivant tout le cheminement du traitement

Description des données

Exemple : Diagramme de classes

Nous étudierons en détail comment construire ce type de diagramme. Il est indispensable de le maitriser.

Diagramme de classes

C’est le diagramme des classes (MOO) Modèle Orienté Objet.

On définit les classes (entités) qui sont persistantes (celles qui seront stockées en base de données ou sous une autre forme (fichiers JSON, fichiers Objets, CSV, NoSQL, …).

Premier cours sur la construction des Classes et des relations

Description des traitements

Vous utilisez au choix le diagramme des séquences ou le diagramme d’activité.

Pour l’enchaînement des écrans, on utilise le diagramme de navigation qui permet de mettre en place la cinématique d’un site avec les relations.

Diagramme de Séquences

Nous étudierons ce type de diagramme. Il n’est pas indispensable mais bien pratique pour savoir quels sont les différents acteurs et composants qui interagissent entre eux.

Diagramme de Séquences

Lien vers une petite vidéo Youtube de moins de 9 minutes pour comprendre le diagramme de séquence

Autre exemple de processus d’Authentification

On définit une action utilisateur dans le temps.
Une action exécute une URL et par conséquent, fait appel à une méthode d’un contrôleur, ce qui déclenche une action et renvoie une réponse ou pas.

Bien utile dans une architecture MVC, car il aide à la réalisation des contrôleurs. Avec ce diagramme, nous sommes capable de nommer une requête https.

Un exemple d’authentification de token avec Spring Boot sous forme d’un diagramme de séquence.

Authentification

Si vous ne comprenez pas tout à ce stade de la formation, ce n’est pas essentiel.

Diagramme d’Activités

Attention, ce diagramme peut se confondre avec celui d’Etats-Transition.

Diagramme activité

Ce diagramme décrit un comportement en fonction du temps.

Diagramme de Navigation

Le diagramme de navigation définit l’enchaînement des vues (écrans). Il est complémentaire au diagramme d’activité. C’est ce que l’on appelle la cinématique. Il n’y a pas de normalisation pour ce dernier. Vous êtes libre de le réaliser comme bon vous semble.

Pour aller plus loin

N’hésitez pas à vous procurer ce très bon livre.

Autres Exemples de diagrammes UML

Etats-transitions

Etat-transition

Diagramme de Composants

Composant

Diagramme de Déploiement

Diagramme de Use Case

Auteur : Philippe Bouget Sources : diverses (documentation PowerAMC, Developpez.com, et réalisation personnelle avec PlantUML, Dia, Win’Design)