alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point...

353
Présentation de la formation Formation UML alphorm.com™© de la formation Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Forum : http://www.alphorm.com/forum Fabien Brissonneau Consultant, concepteur et formateur Objets Logiciels Contact : [email protected]

Transcript of alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point...

Page 1: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Présentation de la formation

Formation UML alphorm.com™©

de la formation

Site : http://www.alphorm.comBlog : http://www.alphorm.com/blogForum : http://www.alphorm.com/forum

Fabien BrissonneauConsultant, concepteur et formateurObjets Logiciels

Contact : [email protected]

Page 2: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Plan

• Présentation du formateur

• Qu’est ce que UML ?

• Le plan de formation

• Les références des ressources logicielles

• Les liens utiles

Formation UML alphorm.com™©

• Les liens utiles

Page 3: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Présentation du formateur• Fabien Brissonneau

• Email : [email protected]

• Consultant Concepteur et Formateur

• Missions d’architecture, de conception , de réalisation logicielles

• Fondateur de eiXa6

• Actuellement en mission sur un projet de gestion

Formation UML alphorm.com™©

• Actuellement en mission sur un projet de gestion

• Mes références :

� Mon profil Viadeo : http://fr.viadeo.com/fr/profile/fabien.brissonneau

� Mon profil LinkedIn : http://fr.linkedin.com/pub/fabien-brissonneau/65/902/92a/

Page 4: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Qu’est ce que UML?

• Langage de modélisation « Unified Modeling Language »

• UML est une notation graphique utilisable pour :

� Décrire les besoins des utilisateurs sur une application

� Spécifier un système

� Concevoir un système informatique

� Réaliser une documentation

Formation UML alphorm.com™©

� Réaliser une documentation

� Améliorer la communication entre les parties prenantes d’un projet

• UML peut être utilisé de manière plus ou moins formelle, tout à fait compatible avec les démarches agiles. UML est un outil.

Page 5: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Le plan de formation

• Module 1 : Généralités

� Chapitre 1 : Les diagrammes UML

� Chapitre 2 : Mettre en œuvre UML dans le projet

• Module 2 : UML pour la maîtrise d’ouvrage

� Chapitre 1 : Les processus métier

� Chapitre 2 : Les objets métier

• Module 3 : UML en analyse

� Chapitre 1 : Découvrir les classes

� Chapitre 2 : Les états des objets

• Module 4 : UML en conception

� Chapitre 1 : Construire le modèle de conception

� Chapitre 2 : Passer de l’analyse à la conception

Formation UML alphorm.com™©

� Chapitre 2 : Les objets métier

� Chapitre 3 : L’expression de besoins

� Chapitre 2 : Passer de l’analyse à la conception

Page 6: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Les références des ressources logicielles

• Site de VP

� http://www.visual-paradigm.com/

• Site de Astah

� http://astah.net

• Site de Modelio

Formation UML alphorm.com™©

• Site de Modelio

� http://www.modeliosoft.com/fr.html

Page 7: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Les liens utiles

• Le site de l’OMG

� http://www.uml.org/

• Les experts

� Pascal Roques

• http://www.dotnetguru2.org/proques/index.phpx

Formation UML alphorm.com™©

• http://www.dotnetguru2.org/proques/index.phpx

Page 8: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Il n’y a plus qu’à …

GOFormation UML alphorm.com™©

GO

Page 9: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Les diagrammes UML

Les diagrammes UML Généralités

Formation UML alphorm.com™©

Les diagrammes UML

Site : http://www.alphorm.comBlog : http://www.alphorm.com/blogForum : http://www.alphorm.com/forum

Fabien BrissonneauConsultant, concepteur et formateurObjets Logiciels

Contact : [email protected]

Page 10: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Plan

• Origines et généralités sur UML

• Les différents diagrammes UML

Formation UML alphorm.com™©

Page 11: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Unified Modeling Language

• Langage graphique de modélisation

• Fusion des méthodologies de

� Booch

Origine de UML et objectifs

Formation UML alphorm.com™©

� Rumbaugh

� Jacobson

• Société Rational, supporté par Rose

Page 12: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Langage, non lié à un processus

• 14 diagrammes qui sont des vues partielles du modèle à décrire

• Objectif de lisibilité

• Applicable du métier jusqu’au code

Généralités sur l’utilisation de UML

Formation UML alphorm.com™©

• Certains diagrammes utilisent l’approche orientée objets

Page 13: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Diagramme de cas d’utilisation

• Diagramme de séquence

• Diagramme de communication

• Diagramme d’états

• Diagramme d’activités

• Diagramme de vue d’ensemble des interactions

• Diagramme de temps

Les diagrammes

Formation UML alphorm.com™©

• Diagramme de classes

• Diagramme de packages

• Diagramme de composants

• Diagramme de déploiement

• Diagramme d’objets

• Diagramme de structures composites

• Diagramme de profils

Page 14: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Montre les types d’objets à utiliser

• Proche du MCD

• Diagramme très courant

• Diagramme de structure, et statique, il ne peut rien dire sur la dynamique du système

Le diagramme de classes

Formation UML alphorm.com™©

dynamique du système

Page 15: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Instance du diagramme de classes

• Sert à montrer un exemple de la structure, en particulier lorsque le diagramme de classe est interprétable

• Peu courant, car rapidement complexe et difficile à rendre exhaustif

Le diagramme d’objets

Formation UML alphorm.com™©

Page 16: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Un package est un regroupement de n’importe quel élément UML

• Ce diagramme montre les relations entre packages du système étudié

• A noter que les dépendances entre packages peuvent être étudiées par des indicateurs

Le diagramme de packages

Formation UML alphorm.com™©

Page 17: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Un composant est un élément offrant des services et nécessitant d’autres composants

• Il fournit les services via des interfaces et requiert d’autres interfaces

• Peut être décomposé

• Utile lors d’une rétro-conception

Le diagramme de composants

Formation UML alphorm.com™©

• Utile lors d’une rétro-conception

Page 18: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Montre les nœuds physiques d’un déploiement : machines, réseaux, ….

• Représentation graphique qui profite des stéréotypes

• Description des besoins ou expression d’un existant

Le diagramme de déploiement

Formation UML alphorm.com™©

Page 19: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Représente des compositions complexes de façon non ambigüe

• Introduit les concepts de classes structurées, de parts, de connectors

Le diagramme de structures composites

Formation UML alphorm.com™©

Page 20: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Représente les types et stéréotypes disponibles pour la réalisation d’un modèle

Le diagramme de profils

Formation UML alphorm.com™©

Page 21: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Représentation du comportement du système sous forme de cas d’utilisation

• Diagramme statique, sert de point d’entrée à l’étude de besoins

Le diagramme de cas d’utilisation

Formation UML alphorm.com™©

Page 22: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Représente les enchaînements nécessaires à la réalisation d’un processus

• Utile dans la description des processus métier

• Utile dans la description des cas d’utilisation

• Facile à introduire, simple et efficace

Le diagramme d’activités

Formation UML alphorm.com™©

• Facile à introduire, simple et efficace

Page 23: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Représente le cycle de vie d’un objet

• Utile pour la description d’un objet métier

• Trouve une traduction aussi dans le code

• Le contexte peut être complexe

Le diagramme d’états

Formation UML alphorm.com™©

Page 24: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Représente les interactions entre entités au cours du temps

• Simple et facile à introduire

• Utile à quasiment tous les niveaux du métier au code

Le diagramme de séquence

Formation UML alphorm.com™©

Page 25: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Représente ce que le diagramme de séquence sait représenter

• Disposition spatiale des entités

• Assez riche, donc rapidement touffu

• Souvent utilisé sous le nom de diagramme de contexte dynamique

Le diagramme de communication

Formation UML alphorm.com™©

Page 26: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Représente des contraintes de temps dans les interactions entre objets

• Diagramme complexe, qui mélange les états des objets et les messages entre ces mêmes objets

Le diagramme de temps

Formation UML alphorm.com™©

Page 27: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Représente les séquences entre les différentes interactions de l’étude

• Plutôt utilisé comme un outil de synthèse de plusieurs interactions

• Possibilités de présentations expressives

La vue d’ensemble des interactions

Formation UML alphorm.com™©

Page 28: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Ce qu’on a couvert

• UML est un langage graphique, mais non une démarche

• Il y a 14 diagrammes différents dans UML

� 7 diagrammes de structure

� 7 diagrammes de comportement

Certains diagrammes utilisent l’approche orientée objets

Formation UML alphorm.com™©

• Certains diagrammes utilisent l’approche orientée objets

Page 29: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

L'approche orientée objets

Les diagrammes UMLGénéralités

Formation UML alphorm.com™©

L'approche orientée objets

Site : http://www.alphorm.comBlog : http://www.alphorm.com/blogForum : http://www.alphorm.com/forum

Fabien BrissonneauConsultant, concepteur et formateurObjets Logiciels

Contact : [email protected]

Page 30: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Plan

• Rappels sur l’approche orientée objets

• Pourquoi ?

• Avantages attendus ?

• Vocabulaire

Formation UML alphorm.com™©

Page 31: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Définition naturelle de composants.

• Meilleure modularité de l’application.

• Cohérence du code (données/traitements).

• Mécanismes d’extension (héritage).

Pourquoi utiliser cette approche ?

Formation UML alphorm.com™©

• Séparation des interfaces de l’implémentation

Page 32: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Programmation

� Utiliser un langage orienté objets

• Conception

� Mettre en place un solution logicielle utilisant les concepts et suivant les principes

Analyse/Conception/Codage

Formation UML alphorm.com™©

• Analyse

� Décrire le problème avec des classes

• En utilisant le paradigme « orienté objets », problème et solution sont liés

Page 33: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Objet et classe

• Objet• Vivant• Instance de classe

Formation UML alphorm.com™©

• Classe• Type d’objets• Descripteur (usine) d’objets

• Instance de classe• Connaît sa classe

Page 34: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Lisibilité de chaque classe

• Sécurité du code

• Réutilisabilité du code de chaque classe

• Réutilisabilité de groupes de classes

Avantages attendus

Formation UML alphorm.com™©

Page 35: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Le code est cohérent car les traitements et les données sont liés par la proximité.

• L’intention est plus claire.

• L’objectif de la classe est mieux compris grâce à la définition des services.

Lisibilité de chaque classe

Formation UML alphorm.com™©

Page 36: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Les données sont encapsulées et visibles uniquement des traitements autorisés.

• L’état de l’objet est mieux maîtrisé.

Sécurité du code

Formation UML alphorm.com™©

Page 37: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• La classe est définie indépendamment du contexte.

• Replacer la classe dans un contexte différent est donc simple.

Réutilisabilité d’une classe

Formation UML alphorm.com™©

Page 38: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Un groupe de classes est réutilisable s’il est bien construit, avec une forte cohérence interne.

• La réutilisation passe soit par l’héritage, soit par l’implémentation d’interfaces.

Réutilisabilité d’un groupe de classes

Formation UML alphorm.com™©

Page 39: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Classification

• Encapsulation

• Abstraction

Quelques concepts simples

Formation UML alphorm.com™©

• Méthodes/Surcharge

• Messages

• Héritage/Redéfinition

• Polymorphisme

Page 40: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

La classification

Formation UML alphorm.com™©

Page 41: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

L’encapsulation

Formation UML alphorm.com™©

Page 42: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

L’abstraction

Formation UML alphorm.com™©

Page 43: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Les méthodes et la surcharge

Tableau t = new Tableau();

Formation UML alphorm.com™©

t.reSize();

t.reSize(5);

Page 44: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Un objet émetteur envoi des messages à un récepteur

• Traduit la dynamique du système

Les messages 1/2

Formation UML alphorm.com™©

Page 45: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Les objets s’échangent des messages

Les messages 2/2

Formation UML alphorm.com™©

Page 46: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Rappels sur la programmation orientée objets

• Usage et limites de l’héritage

• Rappels sur UML

• Utiliser UML

Objectifs

Formation UML alphorm.com™©

Page 47: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

L’héritage

Felin minou = new Chat() ;

Formation UML alphorm.com™©

minou.parler() ;

minou.chasser() ;

Page 48: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

La redéfinition des méthodes

La méthode parler est redéfinie.

Le prototype est le même.

Formation UML alphorm.com™©

Le prototype est le même.

La définition est différente.

Page 49: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Illustration de l’héritage pour rassembler des objets

Formation UML alphorm.com™©

Page 50: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Illustration de l’héritage pour éviter du code en double

Formation UML alphorm.com™©

Page 51: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Illustration de l’héritage pour spécialiser un comportement.

Héritage + redéfinition

Formation UML alphorm.com™©

Le comportement du Chat est spécialisé

Page 52: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Un héritage est une relation EST-UN

Un héritage est une relation à 100%

La validité d’un héritage

Formation UML alphorm.com™©

Page 53: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

EST-UN et 100%

Formation UML alphorm.com™©

Page 54: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Ce qu’on a couvert

• UML est un langage graphique, mais non une démarche

• Il y a 14 diagrammes différents dans UML

• Certains diagrammes utilisent l’approche orientée objets

Formation UML alphorm.com™©

Page 55: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Le diagramme de classes

Les diagrammes UMLGénéralités

Formation UML alphorm.com™©

Le diagramme de classes

Site : http://www.alphorm.comBlog : http://www.alphorm.com/blogForum : http://www.alphorm.com/forum

Fabien BrissonneauConsultant, concepteur et formateurObjets Logiciels

Contact : [email protected]

Page 56: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Plan

• Usages du diagramme de classes

• Syntaxe de base

• Syntaxe avancée

Formation UML alphorm.com™©

Page 57: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Diagramme de structure, statique

• Représente les types d’objets utilisés

• Appliqué aux :

� Objets métiers

Usages du diagramme de classes

Formation UML alphorm.com™©

� Objets d’analyse

� Objets de conception, logiciels

Page 58: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

La syntaxe de base

• Classe, attribut, méthode

• Association, multiplicité

• Généralisation-spécialisation

• Classe abstraite

Formation UML alphorm.com™©

• Interface et implémentation

Page 59: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Classes

Formation UML alphorm.com™©

Page 60: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Classes, attributs, méthodes, visibilités

Formation UML alphorm.com™©

Page 61: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Association, multiplicités

Formation UML alphorm.com™©

Page 62: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Généralisation-Spécialisation

Formation UML alphorm.com™©

Page 63: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Classe abstraite

Formation UML alphorm.com™©

Page 64: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Interface et implémentation

Formation UML alphorm.com™©

Page 65: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Syntaxe avancée

• Attributs dérivés et constants

• Attributs et méthodes statiques

• Restriction de navigabilité et noms de rôles

• Dépendances contextuelles

Formation UML alphorm.com™©

• Classe d’association

• Compositions et agrégations

• Notes et contraintes

Page 66: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Attributs dérivés et constants

Formation UML alphorm.com™©

Page 67: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Attributs et méthodes statiques

Formation UML alphorm.com™©

Page 68: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Restriction de navigabilité et noms de rôles

Formation UML alphorm.com™©

Page 69: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Dépendances contextuelles

Formation UML alphorm.com™©

Page 70: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Classe d’association

Formation UML alphorm.com™©

Page 71: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Composition et agrégation

Formation UML alphorm.com™©

Page 72: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Notes et contraintes

Formation UML alphorm.com™©

Page 73: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Ce qu’on a couvert

• Les usages du diagramme de classes

• La syntaxe de base : classe, attribut, méthode, association, multiplicité, généralisation-spécialisation, classe abstraite, interface et implémentation

• La syntaxe plus avancée : attributs dérivés et constants, attributs et méthodes statiques, restriction de navigabilité et noms de rôles,

Formation UML alphorm.com™©

méthodes statiques, restriction de navigabilité et noms de rôles, dépendances contextuelles, classe d’association, compositions et agrégations, notes et contraintes

Page 74: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Le diagramme de séquences

Les diagrammes UMLGénéralités

Formation UML alphorm.com™©

Le diagramme de séquences

Site : http://www.alphorm.comBlog : http://www.alphorm.com/blogForum : http://www.alphorm.com/forum

Fabien BrissonneauConsultant, concepteur et formateurObjets Logiciels

Contact : [email protected]

Page 75: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Plan

• Usages du diagramme de séquences

• Syntaxe de base

• Syntaxe avancée

Formation UML alphorm.com™©

Page 76: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Diagramme de comportement, dynamique

• Un des diagrammes d’interaction entre les objets, il met en valeur les échanges de messages dans le temps

• Il peut montrer :

� Les interactions entre acteurs métiers

Usages du diagramme de séquences

Formation UML alphorm.com™©

� Les interactions entre acteurs métiers

� Les interactions entre acteurs du système et le système

� Les interactions entre objets d’analyse

� Les interactions entre objets logiciels

Page 77: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

La syntaxe de base

• Objet, ligne de vie, focus de contrôle

• Messages de synchrones, asynchrones

• Messages de création, de destruction

Formation UML alphorm.com™©

Page 78: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Lignes de vie

Formation UML alphorm.com™©

Page 79: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Messages

Formation UML alphorm.com™©

Page 80: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Messages de création, de destruction

Formation UML alphorm.com™©

Page 81: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Syntaxe avancée

• Les cadres LOOP, ALT, REF, OPT

• Auto-messages, messages récursifs

Formation UML alphorm.com™©

Page 82: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Cadre LOOP

Formation UML alphorm.com™©

Page 83: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Cadre ALT

Formation UML alphorm.com™©

Page 84: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Auto-messages et messages récursifs

Formation UML alphorm.com™©

Page 85: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Ce qu’on a couvert

• Les usages du diagramme de séquences

• La syntaxe de base : ligne de vie, focus de contrôle, les retours , messages, synchrones, asynchrones, création et destruction

• La syntaxe plus avancée : les cadres (LOOP et ALT), les auto-messages et messages récursifs

Formation UML alphorm.com™©

Page 86: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Le diagramme de cas

Les diagrammes UMLGénéralités

Formation UML alphorm.com™©

Le diagramme de cas d’utilisation

Site : http://www.alphorm.comBlog : http://www.alphorm.com/blogForum : http://www.alphorm.com/forum

Fabien BrissonneauConsultant, concepteur et formateurObjets Logiciels

Contact : [email protected]

Page 87: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Plan

• Usages du diagramme de cas d’utilisation

• Syntaxe de base

• Syntaxe avancée

Formation UML alphorm.com™©

Page 88: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Diagramme de comportement, statique

• Le diagramme dédié à la description statique des processus

• Ne montre aucune dynamique, liste les fonctionnalités du système

Usages du diagramme de cas d’utilisation

Formation UML alphorm.com™©

Page 89: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

La syntaxe de base

• Acteur, humain ou machine

• Cas d’utilisation

• Association

• Frontière du système

Formation UML alphorm.com™©

Page 90: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Définition des cas d’utilisation

• Un cas d’utilisation est une fonctionnalité du système, indépendante a priori des autres cas d’utilisation

• UML n’a pas inventé les cas d’utilisation

• Un acteur est un rôle joué par une entité externe au système, en interaction directe avec le système

Formation UML alphorm.com™©

• Le diagramme des cas d’utilisation est une vue de haut niveau de l’étude de besoins

Page 91: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Acteur

Formation UML alphorm.com™©

Page 92: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Cas d’utilisation

Formation UML alphorm.com™©

Page 93: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Association

Formation UML alphorm.com™©

Page 94: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

La syntaxe avancée

• Acteur abstrait

• Cas d’utilisation abstrait, généralisation

• Inclusion, extension

Formation UML alphorm.com™©

Page 95: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Acteur abstrait, généralisation

Formation UML alphorm.com™©

Page 96: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Cas d’utilisation abstrait, généralisation

Formation UML alphorm.com™©

Page 97: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Inclusion, extension

Formation UML alphorm.com™©

Page 98: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Ce qu’on a couvert

• Les usages du diagramme de cas d’utilisation

• La syntaxe de base : acteur, cas d’utilisation, association

• La syntaxe plus avancée : les inclusion, extension et généralisation entre cas d’utilisation, la généralisation entre acteurs

Formation UML alphorm.com™©

Page 99: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Le diagramme d’activités

Les diagrammes UMLGénéralités

Formation UML alphorm.com™©

Le diagramme d’activités

Site : http://www.alphorm.comBlog : http://www.alphorm.com/blogForum : http://www.alphorm.com/forum

Fabien BrissonneauConsultant, concepteur et formateurObjets Logiciels

Contact : [email protected]

Page 100: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Plan

• Usages du diagramme d’activités

• Syntaxe de base

• Syntaxe avancée

Formation UML alphorm.com™©

Page 101: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Diagramme de comportement, dynamique

• Le diagramme est dédié à la description d’un processus, processus métier ou cas d’utilisation

• Un diagramme qui permet de vérifier la complétude d’un processus

Usages du diagramme d’activités

Formation UML alphorm.com™©

Page 102: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

La syntaxe de base

• Action, début et fin du processus

• Flux de contrôle, décision

• Activité

Formation UML alphorm.com™©

Page 103: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Action, début et fin de processus

Formation UML alphorm.com™©

Page 104: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Décisions

Formation UML alphorm.com™©

Page 105: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Activité

Formation UML alphorm.com™©

Page 106: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

La syntaxe avancée

• Fork et join

• Fin locale

• Région interruptible

• Object node, flux d’objets

Formation UML alphorm.com™©

• Partition, swimlane

• Evénements

Page 107: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Fork et Join

Formation UML alphorm.com™©

Page 108: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Fin locale de flux

Formation UML alphorm.com™©

Page 109: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Région interruptible

Formation UML alphorm.com™©

Page 110: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Object node, flow

Formation UML alphorm.com™©

Page 111: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Partition

Formation UML alphorm.com™©

Page 112: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Evénements

Formation UML alphorm.com™©

Page 113: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Ce qu’on a couvert

• Les usages du diagramme d’activités

• La syntaxe de base : action, début et fin du processus, flux de contrôle, décision, activité

• La syntaxe plus avancée : fork et join, fin locale, région interruptible, object node, flux d’objets, partition, swimlane, événements

Formation UML alphorm.com™©

Page 114: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Le diagramme de

Les diagrammes UMLGénéralités

Formation UML alphorm.com™©

Le diagramme de composants

Site : http://www.alphorm.comBlog : http://www.alphorm.com/blogForum : http://www.alphorm.com/forum

Fabien BrissonneauConsultant, concepteur et formateurObjets Logiciels

Contact : [email protected]

Page 115: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Plan

• Usages du diagramme de composants

• Syntaxe de base

Formation UML alphorm.com™©

Page 116: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Diagramme de structure, statique

• Le diagramme permet la représentation de parties de l’application qui sont connectés les unes aux autres, sans pour autant parler de classes.

• Utilisé pour éviter de parler de classes, ou de packages

• Utile lors des efforts de rétro-conception

Usages du diagramme de composants

Formation UML alphorm.com™©

• Utile lors des efforts de rétro-conception

Page 117: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

La syntaxe de base

• Composant

• Interfaces

• Ports

• Dépendances

Formation UML alphorm.com™©

Page 118: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Le composant

Formation UML alphorm.com™©

Page 119: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Le composant

Formation UML alphorm.com™©

Page 120: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Composant… décomposé

Formation UML alphorm.com™©

Page 121: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Interfaces

Formation UML alphorm.com™©

Page 122: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Interfaces

Formation UML alphorm.com™©

Page 123: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Composants et interfaces

Formation UML alphorm.com™©

Page 124: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Composants et dépendances

Formation UML alphorm.com™©

Page 125: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Ce qu’on a couvert

• Les usages du diagramme de composants

• La syntaxe de base : les composants et les interfaces, les dépendances entre les composants

Formation UML alphorm.com™©

Page 126: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Le diagramme de

Les diagrammes UMLGénéralités

Formation UML alphorm.com™©

Le diagramme de déploiement

Site : http://www.alphorm.comBlog : http://www.alphorm.com/blogForum : http://www.alphorm.com/forum

Fabien BrissonneauConsultant, concepteur et formateurObjets Logiciels

Contact : [email protected]

Page 127: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Plan

• Usages du diagramme de déploiement

• Syntaxe de base

Formation UML alphorm.com™©

Page 128: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Diagramme de structure, statique

• Il sert à décrire une architecture physique, les nœuds d’un réseau sur lequel sera déployé l’application

Usages du diagramme de déploiement

Formation UML alphorm.com™©

Page 129: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

La syntaxe de base

• Noeud

• Lien

• Stéréotypes

• Artefacts

Formation UML alphorm.com™©

Page 130: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Les noeuds

Formation UML alphorm.com™©

Page 131: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Nœuds et liens

Formation UML alphorm.com™©

Page 132: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Nœud et stéréotypes

Formation UML alphorm.com™©

Page 133: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Nœud et artefacts

Formation UML alphorm.com™©

Page 134: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Ce qu’on a couvert

• Les usages du diagramme de déploiement

• La syntaxe de base : nœud, lien, artefacts

Formation UML alphorm.com™©

Page 135: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Le diagramme de

Les diagrammes UMLGénéralités

Formation UML alphorm.com™©

Le diagramme de packages

Site : http://www.alphorm.comBlog : http://www.alphorm.com/blogForum : http://www.alphorm.com/forum

Fabien BrissonneauConsultant, concepteur et formateurObjets Logiciels

Contact : [email protected]

Page 136: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Plan

• Usages du diagramme de packages

• Syntaxe de base

Formation UML alphorm.com™©

Page 137: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Diagramme de structure, statique

• Un package regroupe n’importe quel type d’élément UML

• Très utile pour regrouper des classes

• On étudie préférentiellement les dépendances entre ces classes

Usages du diagramme de packages

Formation UML alphorm.com™©

• Permet d’avoir une vue de haut niveau sur l’architecture de l’application

Page 138: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

La syntaxe de base

• Packages, stéréotypes

• Dépendances

• Contenance

Formation UML alphorm.com™©

Page 139: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Package

Formation UML alphorm.com™©

Page 140: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Stéréotypes courants

Formation UML alphorm.com™©

Page 141: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Contenance

Formation UML alphorm.com™©

Page 142: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Dépendances entre packages

Formation UML alphorm.com™©

Page 143: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Origines des dépendances entre packages

Formation UML alphorm.com™©

Page 144: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Origines des dépendances

Formation UML alphorm.com™©

Page 145: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Acyclic Dependency Principle

Formation UML alphorm.com™©

Page 146: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Ce qu’on a couvert

• Les usages du diagramme de packages

• La syntaxe de base : package, stéréotypes, contenance, dépendances

• L’organisation en packages, les bons principes

Formation UML alphorm.com™©

Page 147: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Le diagramme d’états

Les diagrammes UMLGénéralités

Formation UML alphorm.com™©

Le diagramme d’états

Site : http://www.alphorm.comBlog : http://www.alphorm.com/blogForum : http://www.alphorm.com/forum

Fabien BrissonneauConsultant, concepteur et formateurObjets Logiciels

Contact : [email protected]

Page 148: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Plan

• Usages du diagramme d’états

• Syntaxe de base

• Syntaxe avancée

Formation UML alphorm.com™©

Page 149: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Diagramme de comportement, dynamique

• Un état représente un temps dans la vie d’un objet

• Le diagramme d’état représente le cycle de vie d’un objet

• Très intéressant pour décrire les états possibles et les transitions autorisées

Usages du diagramme d’états

Formation UML alphorm.com™©

autorisées

• Utilisé sur des objets dont le cycle de vie est significatif, ou dont les réponses aux stimuli extérieurs varient selon les états

Page 150: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

La syntaxe de base

• Etats, transitions, initial, final

• Evénements, conditions

• Effets, activités

Formation UML alphorm.com™©

Page 151: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Etats

Formation UML alphorm.com™©

Page 152: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Evénements et conditions

Formation UML alphorm.com™©

Page 153: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Activités et effets

Formation UML alphorm.com™©

Page 154: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

La syntaxe avancée

• Evénements prédéfinis, états composites

• Transition propre ou interne

• Effets en entrée, en sortie

Formation UML alphorm.com™©

Page 155: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Evénements prédéfinis, états composites

Formation UML alphorm.com™©

Page 156: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Etats composites

Formation UML alphorm.com™©

Page 157: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Transition propre, interne, effet entrée, sortie

Formation UML alphorm.com™©

Page 158: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Pseudo état historique

Formation UML alphorm.com™©

Page 159: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Ce qu’on a couvert

• Les usages du diagramme d’états

• La syntaxe de base : états, transitions, initial, final, événements, conditions, effets, activités

• La syntaxe avancée : événements prédéfinis, états composites, transition propre ou interne, effets en entrée, en sortie, pseudo-état historique

Formation UML alphorm.com™©

Page 160: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Le diagramme de

Les diagrammes UMLGénéralités

Formation UML alphorm.com™©

Le diagramme de communication

Site : http://www.alphorm.comBlog : http://www.alphorm.com/blogForum : http://www.alphorm.com/forum

Fabien BrissonneauConsultant, concepteur et formateurObjets Logiciels

Contact : [email protected]

Page 161: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Plan

• Usages du diagramme de communication

• Syntaxe de base

• Syntaxe avancée

Formation UML alphorm.com™©

Page 162: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Diagramme de comportement, dynamique

• Sert à montrer les interactions entre des objets. Les objets sont disposés dans l’espace, liés par des liens, et les messages circulent sur ces liens

• Destiné aux interactions logicielles, il peut être utilisé à plus haut niveau

• Parfois utilisé dans l’analyse de besoins sous le nom de diagramme de

Usages du diagramme de communication

Formation UML alphorm.com™©

• Parfois utilisé dans l’analyse de besoins sous le nom de diagramme de contexte dynamique

Page 163: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

La syntaxe de base

• Les objets

• Les liens

• Les messages

Formation UML alphorm.com™©

Page 164: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Les objets

Formation UML alphorm.com™©

Page 165: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Les liens

Formation UML alphorm.com™©

Page 166: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Les messages

Formation UML alphorm.com™©

Page 167: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

La syntaxe avancée

• Boundary, control, entity

• Numérotation

• Itération

Formation UML alphorm.com™©

Page 168: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Boundary, control, entity

Formation UML alphorm.com™©

Page 169: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Numérotation avec numéros mineurs

Formation UML alphorm.com™©

Page 170: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Itération

Formation UML alphorm.com™©

Page 171: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Conditions

Formation UML alphorm.com™©

Page 172: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Ce qu’on a couvert

• Les usages du diagramme de communication

• La syntaxe de base : objets, liens, messages

• La syntaxe avancée : boundary, control, entity, numérotation, itération, conditions

Formation UML alphorm.com™©

Page 173: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Le diagramme de temps

Les diagrammes UMLGénéralités

Formation UML alphorm.com™©

Le diagramme de temps

Site : http://www.alphorm.comBlog : http://www.alphorm.com/blogForum : http://www.alphorm.com/forum

Fabien BrissonneauConsultant, concepteur et formateurObjets Logiciels

Contact : [email protected]

Page 174: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Plan

• Usages du diagramme de temps

• Syntaxe de base

Formation UML alphorm.com™©

Page 175: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Diagramme de comportement, dynamique

• Ce diagramme est utilisé pour décrire les états des objets, ainsi que les contraintes temporelles entre les états de ces objets

Usages du diagramme de temps

Formation UML alphorm.com™©

Page 176: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

La syntaxe de base

• Le cadre

• Les objets

• Les états

• L’échelle de temps

Formation UML alphorm.com™©

• Contraintes de temps et de durée

Page 177: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Le cadre

Formation UML alphorm.com™©

Page 178: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Les objets

Formation UML alphorm.com™©

Page 179: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Les états

Formation UML alphorm.com™©

Page 180: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

L’échelle de temps

Formation UML alphorm.com™©

Page 181: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Stimuli

Formation UML alphorm.com™©

Page 182: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Contraintes de durée

Formation UML alphorm.com™©

Page 183: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Contraintes de temps

Formation UML alphorm.com™©

Page 184: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Ce qu’on a couvert

• Les usages du diagramme de temps

• La syntaxe de base : le cadre, les objets, les états, l’échelle de temps, les contraintes de temps et de durée

Formation UML alphorm.com™©

Page 185: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Les diagrammes d’objets,

Les diagrammes UMLGénéralités

Formation UML alphorm.com™©

Les diagrammes d’objets, de vue d’ensemble et de profil

Site : http://www.alphorm.comBlog : http://www.alphorm.com/blogForum : http://www.alphorm.com/forum

Fabien BrissonneauConsultant, concepteur et formateurObjets Logiciels

Contact : [email protected]

Page 186: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Plan

• Usages du diagramme d’objets

• Syntaxe de base

• Usages du diagramme de vue d’ensemble des interactions

• Syntaxe de base

Formation UML alphorm.com™©

• Usages du diagramme de profil

• Syntaxe de base

Page 187: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Diagramme de structure

• Ce diagramme est une instanciation du diagramme de classes

• Sert à donner un exemple de la structure, en particulier lorsque celle-ci est ambigüe

• Finalement peu utilisé, car non exhaustif

Usages du diagramme d’objets

Formation UML alphorm.com™©

• Finalement peu utilisé, car non exhaustif

Page 188: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

La syntaxe de base

• Les objets

• Les liens

Formation UML alphorm.com™©

Page 189: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Les objets

Formation UML alphorm.com™©

Page 190: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Les liens

Formation UML alphorm.com™©

Page 191: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Diagramme de comportement, dynamique

• Ce diagramme est utilisé pour donner un synoptique des interactions

• Utilise la syntaxe des diagrammes d’activités

Usages de la vue d’ensemble d’interactions

Formation UML alphorm.com™©

Page 192: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

La syntaxe de base

• Syntaxe des diagrammes d’activités, cadres références

• Cadres expansés

Formation UML alphorm.com™©

Page 193: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Cadre REF, syntaxe des activités

Formation UML alphorm.com™©

Page 194: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Cadres expansés

Formation UML alphorm.com™©

Page 195: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Usage du diagramme de profils

• Mécanisme d’extension du métamodèle UML permettant de définir ses propres stéréotypes, taggedvalues et constraintes

• Adapte UML aux plateformes (J2EE, …) ou aux domaines (temps-réel…)

• Par exemple, dans un profil Java, il faut restreindre l’héritage à une seule branche

Formation UML alphorm.com™©

• Un profil est un package qui contient des classes, des stéréotypes, des types de données, des types primitifs, des énumérations

Page 196: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Syntaxe de base

Formation UML alphorm.com™©

Page 197: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Syntaxe de base

Formation UML alphorm.com™©

Page 198: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Ce qu’on a couvert

• Les usages du diagramme d’objets

• La syntaxe de base : objets, liens

• Les usages du diagramme de vue d’ensemble des interactions

• La syntaxe de base : cadres REF, cadres expansés, syntaxe des diagrammes d’activités

Formation UML alphorm.com™©

diagrammes d’activités

• Usages du diagramme de profil

• Syntaxe de base

Page 199: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Le diagramme de

Les diagrammes UMLGénéralités

Formation UML alphorm.com™©

Le diagramme de structures composites

Site : http://www.alphorm.comBlog : http://www.alphorm.com/blogForum : http://www.alphorm.com/forum

Fabien BrissonneauConsultant, concepteur et formateurObjets Logiciels

Contact : [email protected]

Page 200: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Plan

• Usages du diagramme de structures composites

• Syntaxe de base

Formation UML alphorm.com™©

Page 201: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Diagramme de structure, statique

• Essentiellement un diagramme de classes dédié aux structures composites

Usages de la vue de structures composites

Formation UML alphorm.com™©

Page 202: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

La syntaxe de base

• Classe structurée

• Partie

• Port

• Connecteur

Formation UML alphorm.com™©

Page 203: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Classe structurée

Formation UML alphorm.com™©

Page 204: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Partie

Formation UML alphorm.com™©

Page 205: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Ports

Formation UML alphorm.com™©

Page 206: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Connecteurs

Formation UML alphorm.com™©

Page 207: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Ce qu’on a couvert

• Les usages du diagramme de structures composites

• La syntaxe de base : classe structurée, partie, port, connecteur

Formation UML alphorm.com™©

Page 208: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Utiliser les diagrammes

UML dans un développementUML

Formation UML alphorm.com™©

Utiliser les diagrammes

Site : http://www.alphorm.comBlog : http://www.alphorm.com/blogForum : http://www.alphorm.com/forum

Fabien BrissonneauConsultant, concepteur et formateurObjets Logiciels

Contact : [email protected]

Page 209: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Plan

• Pourquoi faire un diagramme ?

• Qu’est-ce qu’un bon diagramme ?

• Que faire des diagrammes ?

• Organiser un projet UML, utiliser les packages

Formation UML alphorm.com™©

Page 210: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Pourquoi faire un diagramme ?

• Réaliser une modélisation métier, processus ou objets

• Préciser une expression de besoin

• Décrire un modèle d’analyse

• Décrire un modèle de conception

Formation UML alphorm.com™©

Page 211: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Qu’est-ce qu’un bon diagramme ?

• Un bon diagramme est un diagramme lisible,

• Adapté aux lecteurs,

� -> éviter la syntaxe non comprise par les lecteurs

• Conforme à la réalité

Formation UML alphorm.com™©

� -> éviter les idées géniales

Page 212: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Que faire des diagrammes ?

• Les diagrammes, quels problèmes, quels outils

• Relation avec le texte

• Ne pas utiliser tous les diagrammes

• Les diagrammes doivent rester cohérents avec le système

Formation UML alphorm.com™©

Page 213: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Organiser un projet UML

• Les packages permettent de structurer le projet

• Les packages « modèles » sont les étapes du processus

• Les packages de classes regroupent les classes

Formation UML alphorm.com™©

Page 214: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Ce qu’on a couvert

• Pourquoi faire un diagramme ?

• Qu’est-ce qu’un bon diagramme ?

• Que faire des diagrammes ?

• Organiser un projet UML, utiliser les packages

Formation UML alphorm.com™©

Page 215: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

UML et le processus

UML dans un développementUML

Formation UML alphorm.com™©

UML et le processus

Site : http://www.alphorm.comBlog : http://www.alphorm.com/blogForum : http://www.alphorm.com/forum

Fabien BrissonneauConsultant, concepteur et formateurObjets Logiciels

Contact : [email protected]

Page 216: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Plan

• Définition du processus

• Place de la conception

• Quels diagrammes pour quelles étapes ?

• UML dans les outils

Formation UML alphorm.com™©

Page 217: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Ensemble ordonné d’étapes visant la réalisation d’un objectif.

• Réussite en terme de budget, délais, fonctionnalités… traçabilité …

Processus

Formation UML alphorm.com™©

Page 218: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Besoins

Cas d’utilisation

Activités

Mettre UML en œuvre

BM

BPM : Activités, Séquences

BOM : Classes

Formation UML alphorm.com™©

Analyse

Classes

Séquence, Etats

Conception

Classes

Communication

Page 219: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Le manifeste de l’Agilité

Formation UML alphorm.com™©

Page 220: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Product Owner : représentant du client et des utilisateurs. Définit l’ordre d’implémentation des fonctionnalités.

• Equipe : auto-gérée. Pas de hiérarchie.

• Scrum Master : protège l’équipe et gère les problèmes non-techniques.

• Stakeholders : intervenants non techniques souhatant avoir une vue sur

Scrum : les rôles

Formation UML alphorm.com™©

• Stakeholders : intervenants non techniques souhatant avoir une vue sur le projet, sans s’investir.

Page 221: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Release/projet, Sprint, Quotidien

• Sprint : itération

• Release : produit livrable

• Quotidien : réunion « Scrum Meeting »

Planification

Formation UML alphorm.com™©

• Backlog de produit : fonctionnalités

• Baklog de sprint

Page 222: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Scrum

Formation UML alphorm.com™©

Page 223: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Planning

� User Stories, petites releases fréquentes, itérations démarrant par planning

• Management

� Equipe confortable, standup meeting chaque jour, mesure de l’avancement du projet

• Conception

eXtreme Programming

Formation UML alphorm.com™©

• Conception

� Favoriser la simplicité, refactoriser souvent

• Codage

� Standard, tests first, par paire, intégrations fréquentes

• Tests

� Tests unitaires, bug=>test créé

Page 224: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

UML dans les outils

• Structurer un projet UML

• Que produire avec un outil ?

• Partager un référentiel

Formation UML alphorm.com™©

Page 225: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Ce qu’on a couvert

• Définition du processus

• Place de la conception

• Quels diagrammes pour quelles étapes ?

• UML dans les outils

Formation UML alphorm.com™©

Page 226: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

L’enchaînement entre

UML dans un développementUML

Formation UML alphorm.com™©

L’enchaînement entre les diagrammes UML

Site : http://www.alphorm.comBlog : http://www.alphorm.com/blogForum : http://www.alphorm.com/forum

Fabien BrissonneauConsultant, concepteur et formateurObjets Logiciels

Contact : [email protected]

Page 227: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Plan

� Description du métier

• Processus

• Objets

• Description des besoins

• Description de l’analyse

Formation UML alphorm.com™©

• Description de l’analyse

• Description de la conception

• Vers le code et la base de données

Page 228: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Traçabilité

Test Implémentation Configuration

Vision générale du système et fonctions

Cas d’utilisation

Problème

Spécifications

Formation UML alphorm.com™©22

8

Modèle d’analyse

Modèle de conception

Code

Cas de test

Sripts de test

Résultats

Modèle de sécurité

Conf .NET

Conception

Développement

Page 229: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Les processus

Modèle métier

Vision

Cas d’utilisation

Modèle d’analyseEntités, séquences Modèle

Formation UML alphorm.com™©22

9

Vision

Stories

Maquette

Navigation

Storyboards

Modèle DB

Modèle d’implémentation

Entités, séquences Modèle de conception

Page 230: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Description du métier

Formation UML alphorm.com™©

Page 231: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Description des besoins

Formation UML alphorm.com™©

Page 232: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Description des besoins

Formation UML alphorm.com™©

Page 233: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Description de l’analyse

Formation UML alphorm.com™©

Page 234: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Description de la conception

Formation UML alphorm.com™©

Page 235: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Vers le code et la base …

Formation UML alphorm.com™©

Page 236: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Vers le code et la base …

Formation UML alphorm.com™©

Page 237: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Ce qu’on a couvert

• Description du métier

• Description des besoins

� Processus

� Objets

Description de l’analyse

Formation UML alphorm.com™©

• Description de l’analyse

• Description de la conception

• Vers le code et la base de données

Page 238: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Processus « métier »

Description des processus « métier »UML pour la maîtrise d’ouvrage

Formation UML alphorm.com™©

Processus « métier »

Site : http://www.alphorm.comBlog : http://www.alphorm.com/blogForum : http://www.alphorm.com/forum

Fabien BrissonneauConsultant, concepteur et formateurObjets Logiciels

Contact : [email protected]

Page 239: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Plan

• Choix d’un outil

• Organisation du projet

• Présentation de l’étude de cas

• Recherche et schématisation des processus métier

Formation UML alphorm.com™©

Page 240: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Choix d’un outil

• Astah

� Version communautaire

� Bon support de la norme UML

� Présence des stéréotypes métiers

Formation UML alphorm.com™©

Page 241: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Organisation du projet

• Projet UML

� Utiliser le package stéréotypé « model »

� Créer un modèle « métier »

Formation UML alphorm.com™©

Page 242: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Présentation de l’étude de cas

• Thème : la gestion d’une librairie

� Chercher les acteurs métier

• Client, Bibliothécaire, Editeur, Banque, …

� Chercher les processus métier

• Vendre des livres, Acheter des livres d’occasion, Mettre à jour le

Formation UML alphorm.com™©

• Vendre des livres, Acheter des livres d’occasion, Mettre à jour le catalogue, Mettre à jour le stock, Proposer des événements, …

Page 243: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Schématisation des processus métier

• Le diagramme des processus

� Diagramme de cas d’utilisation

� Stéréotype Business UseCase

Formation UML alphorm.com™©

Page 244: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Ce qu’on a couvert

• Définition des processus métier

• Présentation d’un outil

• Représentation des processus métier sur un cas

Formation UML alphorm.com™©

Page 245: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Décomposer un

Description des processus « métier »UML pour la maîtrise d’ouvrage

Formation UML alphorm.com™©

Décomposer un processus « métier »

Site : http://www.alphorm.comBlog : http://www.alphorm.com/blogForum : http://www.alphorm.com/forum

Fabien BrissonneauConsultant, concepteur et formateurObjets Logiciels

Contact : [email protected]

Page 246: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Plan

• Choix d’un processus « métier »

• Le diagramme d’activité

• La syntaxe du diagramme d’activité

Formation UML alphorm.com™©

Page 247: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Choix d’un processus « métier »

• Le modèle « métier »

� Dans l’outil, un package

� Organisation des processus métier dans le modèle

Formation UML alphorm.com™©

Page 248: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Le diagramme d’activité

• Création du diagramme

� Sous le processus

� Au moins un diagramme par processus

Formation UML alphorm.com™©

Page 249: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

La syntaxe du diagramme d’activité

• Le diagramme d’activité

� Actions, activités

� Initial, final

� Décisions

� Fork

Formation UML alphorm.com™©

� Fork

Page 250: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Ce qu’on a couvert

• La description d’un processus se fait par un diagramme d’activité

• La syntaxe de base est très simple

• Ce diagramme permet de vérifier la complétude du processus et de se poser les bonnes questions

Formation UML alphorm.com™©

Page 251: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Utiliser un diagramme

Description des processus « métier »UML pour la maîtrise d’ouvrage

Formation UML alphorm.com™©

Utiliser un diagramme de séquences

Site : http://www.alphorm.comBlog : http://www.alphorm.com/blogForum : http://www.alphorm.com/forum

Fabien BrissonneauConsultant, concepteur et formateurObjets Logiciels

Contact : [email protected]

Page 252: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Plan

• Choix d’un processus « métier »

• Le diagramme de séquences

• La syntaxe du diagramme de séquences

Formation UML alphorm.com™©

Page 253: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Choix d’un processus « métier »

• Le modèle « métier »

� Dans l’outil, un package

� Les interactions entre acteurs

Formation UML alphorm.com™©

Page 254: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Le diagramme de séquences

• Création du diagramme

� Sous le diagramme d’activité

� Un diagramme de séquence par scénario du processus

Formation UML alphorm.com™©

Page 255: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

La syntaxe du diagramme de séquences

• Le diagramme de séquences

� Ligne de vie

� Message

� Cadres LOOP

Formation UML alphorm.com™©

Page 256: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Ce qu’on a couvert

• Un processus peut être représenté par plusieurs scénarios

• Chaque scénario peut être décrit pas un diagramme de séquences

• Un diagramme de séquences est particulièrement adapté lorsque les interactions sont importantes

Formation UML alphorm.com™©

Page 257: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Découvrir les objets

Description des objets « métier »UML pour la maîtrise d’ouvrage

Formation UML alphorm.com™©

Découvrir les objets « métier »

Site : http://www.alphorm.comBlog : http://www.alphorm.com/blogForum : http://www.alphorm.com/forum

Fabien BrissonneauConsultant, concepteur et formateurObjets Logiciels

Contact : [email protected]

Page 258: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Plan

• Qu’est-ce qu’un objet métier ?

• Les « object flow »

• Mise en œuvre dans l’exemple

Formation UML alphorm.com™©

Page 259: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Qu’est-ce qu’un objet « métier »

• Objet utilisé par le métier, matériel ou pas

• Produit ou consommé dans un processus métier

• A des caractéristiques stables, en termes de données, ou de comportements

Formation UML alphorm.com™©

Page 260: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Les « object flow »

• Notation des flux d’objets dans les diagrammes d’activité

• Organisation dans le diagramme

Formation UML alphorm.com™©

Page 261: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Mise en œuvre dans l’exemple

• Les objets produits ou consommés la vente de livres

� Compte client, Livre, CB, Facture,…

Formation UML alphorm.com™©

Page 262: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Ce qu’on a couvert

• Qu’est-ce qu’un objet métier ?

• La représentation des « object flow »

• Mise en œuvre dans l’exemple

Formation UML alphorm.com™©

Page 263: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Le diagramme de classes

Description des objets « métier »UML pour la maîtrise d’ouvrage

Formation UML alphorm.com™©

Le diagramme de classes pour les objets « métier »

Site : http://www.alphorm.comBlog : http://www.alphorm.com/blogForum : http://www.alphorm.com/forum

Fabien BrissonneauConsultant, concepteur et formateurObjets Logiciels

Contact : [email protected]

Page 264: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Plan

• Classes et objets

• Les composantes du diagramme de classes

• Etude de cas

Formation UML alphorm.com™©

Page 265: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Classes et objets

• Objets

� Entités ayant une identité

� Des états

� Des comportements

• Classes

Formation UML alphorm.com™©

• Classes

� Type des objets

� Descripteur des objets

Page 266: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Les composantes du diagramme de classes

• Classes

� Nom

• Attributs

� Nom, Type

Associations

Formation UML alphorm.com™©

• Associations

� Nom

� Multiplicités

Page 267: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Etude de cas

• Classes à représenter

� Facture

� CB

� Compte client

� Livre

Formation UML alphorm.com™©

� Livre

� Vente

Page 268: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Ce qu’on a couvert

• Rappel des différences entre classe et objet

• Que contient un diagramme de classes

• Exemple de mise en œuvre

Formation UML alphorm.com™©

Page 269: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Le diagramme de

L’expression de besoinsUML pour la maîtrise d’ouvrage

Formation UML alphorm.com™©

Le diagramme de cas d’utilisation

Site : http://www.alphorm.comBlog : http://www.alphorm.com/blogForum : http://www.alphorm.com/forum

Fabien BrissonneauConsultant, concepteur et formateurObjets Logiciels

Contact : [email protected]

Page 270: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Plan

• Le modèle des besoins

• Organisation du projet

• Présentation de l’étude de cas

• Le diagramme de cas d’utilisation

Formation UML alphorm.com™©

Page 271: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Le modèle de besoins

• Ne pas se comprendre peut coûter cher

• Améliorer le dialogue métier-développeur

• UML car langage neutre et graphique

• Décrit les besoins, fonctionnels ou non, de l’utilisateur

Formation UML alphorm.com™©

Page 272: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Organisation du projet

• Nouveau niveau de modélisation : package « model »

• Basé sur la modélisation « métier » si elle existe

• Sera la base du modèle d’analyse

Formation UML alphorm.com™©

Page 273: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Présentation de l’étude de casThème : construction d'une application de vente à distance (Web)

Créer un compte

L'utilisateur est n'importe quel individu qui a accès au site web et qui n'a pas déjà un compte sur le système. Un tel utilisateur peut parcourir le catalogue et sélectionner un livre à commander, mais ne peut faire la commande. Les individus non enregistrés veulent s'enregistrer car ils veulent être capables de faire une commande, ou bien lorsqu'ils font leur première commande, on leur demande de s'enregistrer d'abord.

Gérer un compte

L'utilisateur est une personne qui a un compte et qui veut modifier quelque chose sur son compte.

S'identifier sur le site

Formation UML alphorm.com™©

S'identifier sur le site

L'utilisateur est une personne qui a un compte sur le système et qui veut être identifié pour avoir accès aux fonctionnalités du système.

Sortir du site

L'utilisateur est une personne qui a un compte, et qui est actuellement identifiée. L'utilisateur veut retourner dans l'état non-identifié, afin de quitter le site en étant sûr que son compte ne sera pas utilisé par quelqu'un d'autre.

Parcourir le catalogue

L'utilisateur est une personne qui veut acheter des livres sur le site. L'utilisateur veut parcourir le catalogue des livres disponibles dans le catalogue.

Page 274: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Présentation de l’étude de casVoir le panier

L'utilisateur est une personne qui veut acheter des livres sur le site. L'utilisateur a sélectionné quelques livres dans le panier. L'utilisateur veut revoir son panier pour modifier les quantités ou enlever des lignes.

Finir la commande (payer)

L'utilisateur est une personne qui veut acheter des livres sur le site. L'utilisateur a sélectionné quelques livres dans le panier. L'utilisateur veut lancer la commande pour le contenu du panier.

Gérer les utilisateurs

L'utilisateur est une personne qui a des droits d'administrateur. L'utilisateur peut désactiver un compte utilisateur.

Formation UML alphorm.com™©

Page 275: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Le diagramme de cas d’utilisation

• Cas d’utilisation

• Acteur

• Frontières du système

• Association

Formation UML alphorm.com™©

• Généralisation

• Extension

• Inclusion

Page 276: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Ce qu’on a couvert

• Définition du modèle des besoins

• Organisation du projet dans un outil

• Le diagramme de cas d’utilisation de l’étude de cas

Formation UML alphorm.com™©

Page 277: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Le diagramme d’activité

L’expression de besoinsUML pour la maîtrise d’ouvrage

Formation UML alphorm.com™©

Le diagramme d’activité

Site : http://www.alphorm.comBlog : http://www.alphorm.com/blogForum : http://www.alphorm.com/forum

Fabien BrissonneauConsultant, concepteur et formateurObjets Logiciels

Contact : [email protected]

Page 278: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Plan

• Choisir un cas d’utilisation

• Organiser le projet

• Le diagramme d’activité

Formation UML alphorm.com™©

Page 279: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Choisir le cas d’utilisation

• Chaque cas d’utilisation peut être décrit par :

� Un diagramme d’activité

� N diagrammes de séquences

� Un diagramme d’état

� Un diagramme de communication

Formation UML alphorm.com™©

� Un diagramme de communication

Page 280: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Organiser le projet

• Créer le diagramme d’activité sous le cas d’utilisation

• Prévoir plusieurs diagrammes d’activité si le processus est trop complexe

Formation UML alphorm.com™©

Page 281: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Le diagramme d’activité

� Action, activité, transition

� Décision, merge

� Fork, Join

� Partition

� Evénement

Formation UML alphorm.com™©

� Evénement

� Région interruptible

Page 282: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Ce qu’on a couvert

• Où créer le diagramme d’activité

� Un diagramme d’activité par cas d’utilisation

• La syntaxe de base

Formation UML alphorm.com™©

Page 283: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Le diagramme de

L’expression de besoinsUML pour la maîtrise d’ouvrage

Formation UML alphorm.com™©

Le diagramme de séquences

Site : http://www.alphorm.comBlog : http://www.alphorm.com/blogForum : http://www.alphorm.com/forum

Fabien BrissonneauConsultant, concepteur et formateurObjets Logiciels

Contact : [email protected]

Page 284: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Plan

• Choisir un cas d’utilisation

• Organiser le projet

• Le diagramme de séquences

Formation UML alphorm.com™©

Page 285: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Choisir le cas d’utilisation

• Chaque cas d’utilisation peut être décrit par :

� Un diagramme d’activité

� N diagrammes de séquences

• Ne faire que les diagrammes qui apportent à la compréhension

� Un diagramme d’état

Formation UML alphorm.com™©

� Un diagramme d’état

� Un diagramme de communication

Page 286: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Organiser le projet

• Créer le diagramme de séquences sous le cas d’utilisation

� Scénario nominal

� Scénario qui posent un problème

� Un enchaînement de scénarios

Formation UML alphorm.com™©

Page 287: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Le diagramme de séquences

� Ligne de vie

� Focus de contrôle

� Message

� Auto-message

� Note, lien de note

Formation UML alphorm.com™©

� Note, lien de note

Page 288: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Ce qu’on a couvert

• Pourquoi créer un diagramme de séquences

• La syntaxe de base

Formation UML alphorm.com™©

Page 289: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Le modèle du domaine

Découverte des classesUML pour l’analyse

Formation UML alphorm.com™©

Le modèle du domaine

Site : http://www.alphorm.comBlog : http://www.alphorm.com/blogForum : http://www.alphorm.com/forum

Fabien BrissonneauConsultant, concepteur et formateurObjets Logiciels

Contact : [email protected]

Page 290: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Plan

• Le diagramme de classe

• Les étapes du processus dans un outil

• La création du modèle du domaine

Formation UML alphorm.com™©

Page 291: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Le diagramme de classe

• Classe

• Attribut

• Association

Formation UML alphorm.com™©

Page 292: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Les étapes du processus

• Métier

• Besoins

• Analyse

• Conception

Formation UML alphorm.com™©

• Codage

Page 293: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

La création du modèle du domaine• 1.Le caissier ouvre une vente

• 2.Le terminal prépare la saisie en affichant la date

• 3.Le caissier saisit le code de chaque article, éventuellementune quantité

• 4.A chaque fois, le terminal affiche la description de l'article, ainsi que son prix unitaire et le sous-total

• 5.A la fin, le caissier indique la fin de la saisie

• 6.Le terminal affiche le total de la vente

Formation UML alphorm.com™©

• 7.Le caissier choisit alors le type de paiement en espèces

• 8.Le terminal demande le montant donné par le client

• 9.Le caissier donne le montant

• 10.Le terminal affiche le montant à rendre

• 11.Le caissier indique qu'il a rendu la monnaie

• 12.Le terminal enregistre la vente et fournit un ticket

Page 294: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Ce qu’on a couvert

• Définition du modèle du domaine

• La syntaxe essentielle du diagramme de classe

Formation UML alphorm.com™©

Page 295: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Partir du cas d’utilisation

Découverte des classesUML pour l’analyse

Formation UML alphorm.com™©

Partir du cas d’utilisation

Site : http://www.alphorm.comBlog : http://www.alphorm.com/blogForum : http://www.alphorm.com/forum

Fabien BrissonneauConsultant, concepteur et formateurObjets Logiciels

Contact : [email protected]

Page 296: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Plan

• Lier cas d’utilisation et classes

• Exemple avec l’étude de cas

Formation UML alphorm.com™©

Page 297: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Lier cas d’utilisation et classes

• Justifier les classes par rapport aux besoins

• Eviter les idées géniales de l’analyste ou du développeur

• Maîtriser l’évolution des modèles

• Parler de « réalisation des cas d’utilisation »

Formation UML alphorm.com™©

Page 298: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Etude de cas

• Pour chaque cas d’utilisation

� Créer les classes participantes

• Regrouper les classes

� Eviter doublons et synonymes

Formation UML alphorm.com™©

Page 299: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Ce qu’on a couvert

• La liaison entre fonctions et orienté objet

• Constituer les classes d’analyse du projet

Formation UML alphorm.com™©

Page 300: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Diagramme de séquence

Découverte des classesUML pour l’analyse

Formation UML alphorm.com™©

Diagramme de séquenced’analyse

Site : http://www.alphorm.comBlog : http://www.alphorm.com/blogForum : http://www.alphorm.com/forum

Fabien BrissonneauConsultant, concepteur et formateurObjets Logiciels

Contact : [email protected]

Page 301: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Créer les classes par cas d’utilisation

• La syntaxe du diagramme de séquence

• Etude de cas : formaliser l’utilisation des classes

Plan

Formation UML alphorm.com™©

Page 302: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Créer les classes par cas d’utilisation

• Les classes sont explicables par cas d’utilisation

• Le modèle de structure est indissociable du modèle dynamique

Formation UML alphorm.com™©

Page 303: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

La syntaxe du diagramme de séquence

• Ligne de vie

• Messages typés : création, destruction,…

• Paramètres et retours sur les messages

• Les cadres

Formation UML alphorm.com™©

Page 304: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Etude de cas

• Partant d’un diagramme de séquences système

• Remplacer le système par des objets issus des classes du modèle

• Créer le diagramme de séquence d’analyse

Formation UML alphorm.com™©

Page 305: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Ce qu’on a couvert

• Créer les classes par cas d’utilisation ne suffit pas

• La syntaxe du diagramme de séquence peut être relativement complexe

• Montrer que les classes du diagramme de classes sont réellement utilisées

Formation UML alphorm.com™©

Page 306: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

La notation de base du

Les état des objetsUML pour l’analyse

Formation UML alphorm.com™©

La notation de base du diagramme d’états

Site : http://www.alphorm.comBlog : http://www.alphorm.com/blogForum : http://www.alphorm.com/forum

Fabien BrissonneauConsultant, concepteur et formateurObjets Logiciels

Contact : [email protected]

Page 307: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Quand utiliser un diagramme d’état ?

• Notation de base

• Etude de cas

Plan

Formation UML alphorm.com™©

Page 308: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Quand utiliser un diagramme d’état

• Objet ayant un nombre d’états significatifs

• Objet ayant une réponse variable selon son état

• Découvrir le cycle de vie d’un objet

Formation UML alphorm.com™©

Page 309: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Notation de base

• Initial, final

• Etat, transition

• Evénement, condition, effet

Formation UML alphorm.com™©

Page 310: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Etude de cas

• Choisir un objet dont les états sont importants

• Créer le diagramme d’état dans le projet

Formation UML alphorm.com™©

Page 311: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Ce qu’on a couvert

• Nous avons montré sur quel genre d’objet créer un diagramme d’état

• Nous avons présenté la notation de base

• Et application à l’étude de cas

Formation UML alphorm.com™©

Page 312: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

La notation avancée du

Les état des objetsUML pour l’analyse

Formation UML alphorm.com™©

La notation avancée du diagramme d’états

Site : http://www.alphorm.comBlog : http://www.alphorm.com/blogForum : http://www.alphorm.com/forum

Fabien BrissonneauConsultant, concepteur et formateurObjets Logiciels

Contact : [email protected]

Page 313: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• La notation avancée du diagramme

• Etude de cas

Plan

Formation UML alphorm.com™©

Page 314: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

La notation avancée

• Etats composites

• Transition interne

• Activités, effets entrée et sortie

• Evénements prédéfinis

Formation UML alphorm.com™©

Page 315: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Précautions d’usage …

• La notation complète des diagrammes d’états peut être très complexe

• Eviter de trop vouloir en mettre

• Garder le diagramme lisible

Formation UML alphorm.com™©

Page 316: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Etude de cas

• Améliorer le diagramme précédent

• Evénements prédéfinis

Formation UML alphorm.com™©

Page 317: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Ce qu’on a couvert

• Nous avons proposé une notation avancée des diagrammes d ’état

� Etat composite

� Transition interne

� Activité

� Effet en entrée, en sortie

Formation UML alphorm.com™©

� Effet en entrée, en sortie

� Evénements prédéfinis

Page 318: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

La notation pour la

Construire le modèle de conceptionUML pour la conception

Formation UML alphorm.com™©

La notation pour la conception

Site : http://www.alphorm.comBlog : http://www.alphorm.com/blogForum : http://www.alphorm.com/forum

Fabien BrissonneauConsultant, concepteur et formateurObjets Logiciels

Contact : [email protected]

Page 319: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Pourquoi et quand mettre des détails dans la notation ?

• Notations supplémentaires

• Etude de cas

Plan

Formation UML alphorm.com™©

Page 320: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Pourquoi et quand ?

• Le modèle de conception est une abstraction pour le code

• Le lien avec le langage de programmation

• Génération de code

Formation UML alphorm.com™©

Page 321: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Notation supplémentaire

• Nom de rôle, navigabilité, restriction

• Dépendance contextuelle

• Visibilité des membres, paramètres et types, retour et type

• Package, organisation

Formation UML alphorm.com™©

Page 322: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Etude de cas

• Reprendre un modèle pour le compléter

� Visibilités

� Types utilisés

� Méthodes

� …

Formation UML alphorm.com™©

� …

Page 323: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Ce qu’on a couvert

• Pourquoi et quand mettre des détails dans la notation ?

• Notations supplémentaires

• Et application à l’étude de cas

Formation UML alphorm.com™©

Page 324: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Passer de l’analyse à la

Construire le modèle de conceptionUML pour la conception

Formation UML alphorm.com™©

Passer de l’analyse à la conception

Site : http://www.alphorm.comBlog : http://www.alphorm.com/blogForum : http://www.alphorm.com/forum

Fabien BrissonneauConsultant, concepteur et formateurObjets Logiciels

Contact : [email protected]

Page 325: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• D’où partir ?

• La traçabilité entre les modèles

• Etude de cas

Plan

Formation UML alphorm.com™©

Page 326: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

D’où partir ?

• Modèle d’analyse

• Architecture technique

• Influence du langage de programmation

Formation UML alphorm.com™©

Page 327: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

La traçabilité entre les modèles

• Classe d’analyse ou bien classe de conception

• Création des diagrammes en fonction du lecteur

• Les transformations possibles

Formation UML alphorm.com™©

Page 328: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Etude de cas

• Exemple site web

• Base de données

• Java

Formation UML alphorm.com™©

Page 329: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Ce qu’on a couvert

• D’où partir ?

• La traçabilité entre les modèles

• Etude de cas

Formation UML alphorm.com™©

Page 330: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Traduire le diagramme

Concevoir et coderUML pour la conception

Formation UML alphorm.com™©

Traduire le diagramme de classe en code

Site : http://www.alphorm.comBlog : http://www.alphorm.com/blogForum : http://www.alphorm.com/forum

Fabien BrissonneauConsultant, concepteur et formateurObjets Logiciels

Contact : [email protected]

Page 331: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Traduire classe, attribut et méthode

• Traduire les associations

• Etude de cas

Plan

Formation UML alphorm.com™©

Page 332: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Traduire classe, attribut et association

• Classe => class

• Attribut => déclaration de données membres

• Méthodes => déclaration de fonctions membres

Formation UML alphorm.com™©

Page 333: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Traduire les associations

• Associations multiplicité 1 max

• Associations multiplicité supérieure à 1

Formation UML alphorm.com™©

Page 334: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Etude de cas

• La commande

� Numéro de commande

� Créer la commande

� Générer la facture de la commande

Formation UML alphorm.com™©

Page 335: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Ce qu’on a couvert

• Traduire une classe, les attributs et les méthodes

• Traduire les associations

• Et application à l’étude de cas

Formation UML alphorm.com™©

Page 336: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Traduire le diagramme

Concevoir et coderUML pour la conception

Formation UML alphorm.com™©

Traduire le diagramme de séquences en code

Site : http://www.alphorm.comBlog : http://www.alphorm.com/blogForum : http://www.alphorm.com/forum

Fabien BrissonneauConsultant, concepteur et formateurObjets Logiciels

Contact : [email protected]

Page 337: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Messages / méthodes

• Traduire les envois de messages

• Etude de cas

Plan

Formation UML alphorm.com™©

Page 338: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Messages / méthodes

• Messages et méthodes sont très proches

• Le message est l’information passant d’un émetteur vers un récepteur

• La méthode est le code déclenché par ce message

Formation UML alphorm.com™©

Page 339: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Traduire les envois de message

• Le modèle dynamique correspond aux corps des méthodes

• Le diagramme de séquence représente en une seule fois l’ensemble des appels sur plusieurs niveaux

Formation UML alphorm.com™©

Page 340: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Etude de cas

• La séquence « passer commande »

• La méthode de la classe commande

• Le corps de la méthode

Formation UML alphorm.com™©

Page 341: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Ce qu’on a couvert

• Messages / méthodes

• Traduire les envois de messages

• Et application à l’étude de cas

Formation UML alphorm.com™©

Page 342: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Reporter la complexité

Concevoir et coderUML pour la conception

Formation UML alphorm.com™©

Reporter la complexité sur le diagramme de classes

Site : http://www.alphorm.comBlog : http://www.alphorm.com/blogForum : http://www.alphorm.com/forum

Fabien BrissonneauConsultant, concepteur et formateurObjets Logiciels

Contact : [email protected]

Page 343: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

• Pourquoi éviter la complexité dynamique

• Un mécanisme de base de l’orienté objet : le polymorphisme

• Etude de cas

Plan

Formation UML alphorm.com™©

Page 344: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Pourquoi éviter la complexité dynamique ?

• La complexité

� Logique conditionnelle

� Corps de méthode trop long

� …

• Fragilité, rigidité, immobilité

Formation UML alphorm.com™©

• Fragilité, rigidité, immobilité

Page 345: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Le polymorphisme

• Mécanisme qui permet d’envoyer un message à un objet sans connaître le type réel de cet objet, mais la méthode qui va être déclenchée dépend elle du type réel

• Remplace la logique conditionnelle avec test du type de l’objet

Formation UML alphorm.com™©

Page 346: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Exemple

• Cas du système de fichier

• Fichier, Répertoire, Lien

• Imaginer un traitement sur le répertoire …

Formation UML alphorm.com™©

Page 347: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Ce qu’on a couvert

• Pourquoi éviter la complexité dynamique

• Un mécanisme de base de l’orienté objet : le polymorphisme

• Etude de cas

Formation UML alphorm.com™©

Page 348: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Conclusion

Formation UML alphorm.com™©

Site : http://www.alphorm.comBlog : http://www.alphorm.com/blogForum : http://www.alphorm.com/forum

Fabien BrissonneauConsultant, concepteur et formateurObjets Logiciels

Contact : [email protected]

Page 349: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Plan

• UML pour quoi faire

• Ce que l’on a couvert

• Pour aller plus loin …

Formation UML alphorm.com™©

Page 350: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Qu’est ce que UML?

• Langage de modélisation « Unified Modeling Language »

• UML est une notation graphique utilisable pour :

� Décrire les besoins des utilisateurs sur une application

� Spécifier un système

� Concevoir un système informatique

� Réaliser une documentation

Formation UML alphorm.com™©

� Réaliser une documentation

� Améliorer la communication entre les parties prenantes d’un projet

• UML peut être utilisé de manière plus ou moins formelle, tout à fait compatible avec les démarches agiles. UML est un outil.

Page 351: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Ce que l’on a couvert

• Module 1 : Généralités

� Chapitre 1 : Les diagrammes UML

� Chapitre 2 : Mettre en œuvre UML dans le projet

• Module 2 : UML pour la maîtrise d’ouvrage

� Chapitre 1 : Les processus métier

� Chapitre 2 : Les objets métier

• Module 3 : UML en analyse

� Chapitre 1 : Découvrir les classes

� Chapitre 2 : Les états des objets

• Module 4 : UML en conception

� Chapitre 1 : Construire le modèle de conception

� Chapitre 2 : Passer de l’analyse à la conception

Formation UML alphorm.com™©

� Chapitre 2 : Les objets métier

� Chapitre 3 : L’expression de besoins

� Chapitre 2 : Passer de l’analyse à la conception

Page 352: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Pour aller plus loin

• Le choix d’un outil …

• Le temps de l’apprentissage …

• La conception objet …

Formation UML alphorm.com™©

Page 353: alphorm.com-support de la formation UML/SS de l… · • Diagramme statique, sert de point d’entrée à l’étude de besoins ... • Représente les interactions entre entités

Il n’y a plus qu’à …

Merci !Formation UML alphorm.com™©

Merci !