SlideShare uma empresa Scribd logo
1 de 353
Baixar para ler offline
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 : fabien.brissonneau@gmail.com
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
Présentation du formateur
• Fabien Brissonneau
• Email : fabien.brissonneau@gmail.com
• 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/
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.
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
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
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
Il n’y a plus qu’à …
GO
Formation UML alphorm.com™©
GO
Les diagrammes UML
Les diagrammes UML
Généralités
Formation UML alphorm.com™©
Les diagrammes UML
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 : fabien.brissonneau@gmail.com
Plan
• Origines et généralités sur UML
• Les différents diagrammes UML
Formation UML alphorm.com™©
• 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
• 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
• 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
• 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
• 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™©
• 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™©
• 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
• 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™©
• 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™©
• 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™©
• 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™©
• 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
• 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™©
• 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™©
• 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™©
• 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™©
• 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™©
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
L'approche orientée objets
Les diagrammes UML
Généralités
Formation UML alphorm.com™©
L'approche orientée objets
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 : fabien.brissonneau@gmail.com
Plan
• Rappels sur l’approche orientée objets
• Pourquoi ?
• Avantages attendus ?
• Vocabulaire
Formation UML alphorm.com™©
• 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
• 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
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
• 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™©
• 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™©
• 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™©
• 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™©
• 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™©
• Classification
• Encapsulation
• Abstraction
Quelques concepts simples
Formation UML alphorm.com™©
• Méthodes/Surcharge
• Messages
• Héritage/Redéfinition
• Polymorphisme
La classification
Formation UML alphorm.com™©
L’encapsulation
Formation UML alphorm.com™©
L’abstraction
Formation UML alphorm.com™©
Les méthodes et la surcharge
Tableau t = new Tableau();
Formation UML alphorm.com™©
t.reSize();
t.reSize(5);
• Un objet émetteur envoi des messages à un récepteur
• Traduit la dynamique du système
Les messages 1/2
Formation UML alphorm.com™©
• Les objets s’échangent des messages
Les messages 2/2
Formation UML alphorm.com™©
• Rappels sur la programmation orientée objets
• Usage et limites de l’héritage
• Rappels sur UML
• Utiliser UML
Objectifs
Formation UML alphorm.com™©
L’héritage
Felin minou = new Chat() ;
Formation UML alphorm.com™©
minou.parler() ;
minou.chasser() ;
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.
Illustration de l’héritage pour rassembler des
objets
Formation UML alphorm.com™©
Illustration de l’héritage pour éviter du code en
double
Formation UML alphorm.com™©
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é
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™©
EST-UN et 100%
Formation UML alphorm.com™©
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™©
Le diagramme de classes
Les diagrammes UML
Généralités
Formation UML alphorm.com™©
Le diagramme de classes
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 : fabien.brissonneau@gmail.com
Plan
• Usages du diagramme de classes
• Syntaxe de base
• Syntaxe avancée
Formation UML alphorm.com™©
• 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
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
Classes
Formation UML alphorm.com™©
Classes, attributs, méthodes, visibilités
Formation UML alphorm.com™©
Association, multiplicités
Formation UML alphorm.com™©
Généralisation-Spécialisation
Formation UML alphorm.com™©
Classe abstraite
Formation UML alphorm.com™©
Interface et implémentation
Formation UML alphorm.com™©
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
Attributs dérivés et constants
Formation UML alphorm.com™©
Attributs et méthodes statiques
Formation UML alphorm.com™©
Restriction de navigabilité et noms de rôles
Formation UML alphorm.com™©
Dépendances contextuelles
Formation UML alphorm.com™©
Classe d’association
Formation UML alphorm.com™©
Composition et agrégation
Formation UML alphorm.com™©
Notes et contraintes
Formation UML alphorm.com™©
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
Le diagramme de séquences
Les diagrammes UML
Généralités
Formation UML alphorm.com™©
Le diagramme de séquences
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 : fabien.brissonneau@gmail.com
Plan
• Usages du diagramme de séquences
• Syntaxe de base
• Syntaxe avancée
Formation UML alphorm.com™©
• 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
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™©
Lignes de vie
Formation UML alphorm.com™©
Messages
Formation UML alphorm.com™©
Messages de création, de destruction
Formation UML alphorm.com™©
Syntaxe avancée
• Les cadres LOOP, ALT, REF, OPT
• Auto-messages, messages récursifs
Formation UML alphorm.com™©
Cadre LOOP
Formation UML alphorm.com™©
Cadre ALT
Formation UML alphorm.com™©
Auto-messages et messages récursifs
Formation UML alphorm.com™©
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™©
Le diagramme de cas
Les diagrammes UML
Généralités
Formation UML alphorm.com™©
Le diagramme de cas
d’utilisation
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 : fabien.brissonneau@gmail.com
Plan
• Usages du diagramme de cas d’utilisation
• Syntaxe de base
• Syntaxe avancée
Formation UML alphorm.com™©
• 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™©
La syntaxe de base
• Acteur, humain ou machine
• Cas d’utilisation
• Association
• Frontière du système
Formation UML alphorm.com™©
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
Acteur
Formation UML alphorm.com™©
Cas d’utilisation
Formation UML alphorm.com™©
Association
Formation UML alphorm.com™©
La syntaxe avancée
• Acteur abstrait
• Cas d’utilisation abstrait, généralisation
• Inclusion, extension
Formation UML alphorm.com™©
Acteur abstrait, généralisation
Formation UML alphorm.com™©
Cas d’utilisation abstrait, généralisation
Formation UML alphorm.com™©
Inclusion, extension
Formation UML alphorm.com™©
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™©
Le diagramme d’activités
Les diagrammes UML
Généralités
Formation UML alphorm.com™©
Le diagramme d’activités
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 : fabien.brissonneau@gmail.com
Plan
• Usages du diagramme d’activités
• Syntaxe de base
• Syntaxe avancée
Formation UML alphorm.com™©
• 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™©
La syntaxe de base
• Action, début et fin du processus
• Flux de contrôle, décision
• Activité
Formation UML alphorm.com™©
Action, début et fin de processus
Formation UML alphorm.com™©
Décisions
Formation UML alphorm.com™©
Activité
Formation UML alphorm.com™©
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
Fork et Join
Formation UML alphorm.com™©
Fin locale de flux
Formation UML alphorm.com™©
Région interruptible
Formation UML alphorm.com™©
Object node, flow
Formation UML alphorm.com™©
Partition
Formation UML alphorm.com™©
Evénements
Formation UML alphorm.com™©
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™©
Le diagramme de
Les diagrammes UML
Généralités
Formation UML alphorm.com™©
Le diagramme de
composants
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 : fabien.brissonneau@gmail.com
Plan
• Usages du diagramme de composants
• Syntaxe de base
Formation UML alphorm.com™©
• 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
La syntaxe de base
• Composant
• Interfaces
• Ports
• Dépendances
Formation UML alphorm.com™©
Le composant
Formation UML alphorm.com™©
Le composant
Formation UML alphorm.com™©
Composant… décomposé
Formation UML alphorm.com™©
Interfaces
Formation UML alphorm.com™©
Interfaces
Formation UML alphorm.com™©
Composants et interfaces
Formation UML alphorm.com™©
Composants et dépendances
Formation UML alphorm.com™©
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™©
Le diagramme de
Les diagrammes UML
Généralités
Formation UML alphorm.com™©
Le diagramme de
déploiement
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 : fabien.brissonneau@gmail.com
Plan
• Usages du diagramme de déploiement
• Syntaxe de base
Formation UML alphorm.com™©
• 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™©
La syntaxe de base
• Noeud
• Lien
• Stéréotypes
• Artefacts
Formation UML alphorm.com™©
Les noeuds
Formation UML alphorm.com™©
Nœuds et liens
Formation UML alphorm.com™©
Nœud et stéréotypes
Formation UML alphorm.com™©
Nœud et artefacts
Formation UML alphorm.com™©
Ce qu’on a couvert
• Les usages du diagramme de déploiement
• La syntaxe de base : nœud, lien, artefacts
Formation UML alphorm.com™©
Le diagramme de
Les diagrammes UML
Généralités
Formation UML alphorm.com™©
Le diagramme de
packages
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 : fabien.brissonneau@gmail.com
Plan
• Usages du diagramme de packages
• Syntaxe de base
Formation UML alphorm.com™©
• 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
La syntaxe de base
• Packages, stéréotypes
• Dépendances
• Contenance
Formation UML alphorm.com™©
Package
Formation UML alphorm.com™©
Stéréotypes courants
Formation UML alphorm.com™©
Contenance
Formation UML alphorm.com™©
Dépendances entre packages
Formation UML alphorm.com™©
Origines des dépendances entre packages
Formation UML alphorm.com™©
Origines des dépendances
Formation UML alphorm.com™©
Acyclic Dependency Principle
Formation UML alphorm.com™©
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™©
Le diagramme d’états
Les diagrammes UML
Généralités
Formation UML alphorm.com™©
Le diagramme d’états
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 : fabien.brissonneau@gmail.com
Plan
• Usages du diagramme d’états
• Syntaxe de base
• Syntaxe avancée
Formation UML alphorm.com™©
• 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
La syntaxe de base
• Etats, transitions, initial, final
• Evénements, conditions
• Effets, activités
Formation UML alphorm.com™©
Etats
Formation UML alphorm.com™©
Evénements et conditions
Formation UML alphorm.com™©
Activités et effets
Formation UML alphorm.com™©
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™©
Evénements prédéfinis, états composites
Formation UML alphorm.com™©
Etats composites
Formation UML alphorm.com™©
Transition propre, interne, effet entrée, sortie
Formation UML alphorm.com™©
Pseudo état historique
Formation UML alphorm.com™©
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™©
Le diagramme de
Les diagrammes UML
Généralités
Formation UML alphorm.com™©
Le diagramme de
communication
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 : fabien.brissonneau@gmail.com
Plan
• Usages du diagramme de communication
• Syntaxe de base
• Syntaxe avancée
Formation UML alphorm.com™©
• 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
La syntaxe de base
• Les objets
• Les liens
• Les messages
Formation UML alphorm.com™©
Les objets
Formation UML alphorm.com™©
Les liens
Formation UML alphorm.com™©
Les messages
Formation UML alphorm.com™©
La syntaxe avancée
• Boundary, control, entity
• Numérotation
• Itération
Formation UML alphorm.com™©
Boundary, control, entity
Formation UML alphorm.com™©
Numérotation avec numéros mineurs
Formation UML alphorm.com™©
Itération
Formation UML alphorm.com™©
Conditions
Formation UML alphorm.com™©
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™©
Le diagramme de temps
Les diagrammes UML
Généralités
Formation UML alphorm.com™©
Le diagramme de temps
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 : fabien.brissonneau@gmail.com
Plan
• Usages du diagramme de temps
• Syntaxe de base
Formation UML alphorm.com™©
• 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™©
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
Le cadre
Formation UML alphorm.com™©
Les objets
Formation UML alphorm.com™©
Les états
Formation UML alphorm.com™©
L’échelle de temps
Formation UML alphorm.com™©
Stimuli
Formation UML alphorm.com™©
Contraintes de durée
Formation UML alphorm.com™©
Contraintes de temps
Formation UML alphorm.com™©
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™©
Les diagrammes d’objets,
Les diagrammes UML
Généralités
Formation UML alphorm.com™©
Les diagrammes d’objets,
de vue d’ensemble et de
profil
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 : fabien.brissonneau@gmail.com
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
• 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
La syntaxe de base
• Les objets
• Les liens
Formation UML alphorm.com™©
Les objets
Formation UML alphorm.com™©
Les liens
Formation UML alphorm.com™©
• 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™©
La syntaxe de base
• Syntaxe des diagrammes d’activités, cadres références
• Cadres expansés
Formation UML alphorm.com™©
Cadre REF, syntaxe des activités
Formation UML alphorm.com™©
Cadres expansés
Formation UML alphorm.com™©
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
Syntaxe de base
Formation UML alphorm.com™©
Syntaxe de base
Formation UML alphorm.com™©
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
Le diagramme de
Les diagrammes UML
Généralités
Formation UML alphorm.com™©
Le diagramme de
structures composites
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 : fabien.brissonneau@gmail.com
Plan
• Usages du diagramme de structures composites
• Syntaxe de base
Formation UML alphorm.com™©
• 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™©
La syntaxe de base
• Classe structurée
• Partie
• Port
• Connecteur
Formation UML alphorm.com™©
Classe structurée
Formation UML alphorm.com™©
Partie
Formation UML alphorm.com™©
Ports
Formation UML alphorm.com™©
Connecteurs
Formation UML alphorm.com™©
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™©
Utiliser les diagrammes
UML dans un développement
UML
Formation UML alphorm.com™©
Utiliser les diagrammes
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 : fabien.brissonneau@gmail.com
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™©
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™©
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
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™©
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™©
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™©
UML et le processus
UML dans un développement
UML
Formation UML alphorm.com™©
UML et le processus
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 : fabien.brissonneau@gmail.com
Plan
• Définition du processus
• Place de la conception
• Quels diagrammes pour quelles étapes ?
• UML dans les outils
Formation UML alphorm.com™©
• 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™©
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
Le manifeste de l’Agilité
Formation UML alphorm.com™©
• 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.
• 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
Scrum
Formation UML alphorm.com™©
• 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éé
UML dans les outils
• Structurer un projet UML
• Que produire avec un outil ?
• Partager un référentiel
Formation UML alphorm.com™©
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™©
L’enchaînement entre
UML dans un développement
UML
Formation UML alphorm.com™©
L’enchaînement entre
les diagrammes UML
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 : fabien.brissonneau@gmail.com
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
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
Les processus
Modèle métier
Vision
Cas d’utilisation
Modèle d’analyse
Entité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
Description du métier
Formation UML alphorm.com™©
Description des besoins
Formation UML alphorm.com™©
Description des besoins
Formation UML alphorm.com™©
Description de l’analyse
Formation UML alphorm.com™©
Description de la conception
Formation UML alphorm.com™©
Vers le code et la base …
Formation UML alphorm.com™©
Vers le code et la base …
Formation UML alphorm.com™©
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
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.com
Blog : http://www.alphorm.com/blog
Forum : http://www.alphorm.com/forum
Fabien Brissonneau
Consultant, concepteur et formateur
Objets Logiciels
Contact : fabien.brissonneau@gmail.com
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™©
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™©
Organisation du projet
• Projet UML
Utiliser le package stéréotypé « model »
Créer un modèle « métier »
Formation UML alphorm.com™©
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, …
Schématisation des processus métier
• Le diagramme des processus
Diagramme de cas d’utilisation
Stéréotype Business UseCase
Formation UML alphorm.com™©
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™©
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.com
Blog : http://www.alphorm.com/blog
Forum : http://www.alphorm.com/forum
Fabien Brissonneau
Consultant, concepteur et formateur
Objets Logiciels
Contact : fabien.brissonneau@gmail.com
Plan
• Choix d’un processus « métier »
• Le diagramme d’activité
• La syntaxe du diagramme d’activité
Formation UML alphorm.com™©
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™©
Le diagramme d’activité
• Création du diagramme
Sous le processus
Au moins un diagramme par processus
Formation UML alphorm.com™©
La syntaxe du diagramme d’activité
• Le diagramme d’activité
Actions, activités
Initial, final
Décisions
Fork
Formation UML alphorm.com™©
Fork
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™©
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.com
Blog : http://www.alphorm.com/blog
Forum : http://www.alphorm.com/forum
Fabien Brissonneau
Consultant, concepteur et formateur
Objets Logiciels
Contact : fabien.brissonneau@gmail.com
Plan
• Choix d’un processus « métier »
• Le diagramme de séquences
• La syntaxe du diagramme de séquences
Formation UML alphorm.com™©
Choix d’un processus « métier »
• Le modèle « métier »
Dans l’outil, un package
Les interactions entre acteurs
Formation UML alphorm.com™©
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™©
La syntaxe du diagramme de séquences
• Le diagramme de séquences
Ligne de vie
Message
Cadres LOOP
Formation UML alphorm.com™©
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™©
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.com
Blog : http://www.alphorm.com/blog
Forum : http://www.alphorm.com/forum
Fabien Brissonneau
Consultant, concepteur et formateur
Objets Logiciels
Contact : fabien.brissonneau@gmail.com
Plan
• Qu’est-ce qu’un objet métier ?
• Les « object flow »
• Mise en œuvre dans l’exemple
Formation UML alphorm.com™©
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™©
Les « object flow »
• Notation des flux d’objets dans les diagrammes d’activité
• Organisation dans le diagramme
Formation UML alphorm.com™©
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™©
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™©
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.com
Blog : http://www.alphorm.com/blog
Forum : http://www.alphorm.com/forum
Fabien Brissonneau
Consultant, concepteur et formateur
Objets Logiciels
Contact : fabien.brissonneau@gmail.com
Plan
• Classes et objets
• Les composantes du diagramme de classes
• Etude de cas
Formation UML alphorm.com™©
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
Les composantes du diagramme de classes
• Classes
Nom
• Attributs
Nom, Type
Associations
Formation UML alphorm.com™©
• Associations
Nom
Multiplicités
Etude de cas
• Classes à représenter
Facture
CB
Compte client
Livre
Formation UML alphorm.com™©
Livre
Vente
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™©
Le diagramme de
L’expression de besoins
UML pour la maîtrise d’ouvrage
Formation UML alphorm.com™©
Le diagramme de
cas d’utilisation
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 : fabien.brissonneau@gmail.com
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™©
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™©
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™©
Présentation de l’étude de cas
Thè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.
Présentation de l’étude de cas
Voir 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™©
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
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™©
Le diagramme d’activité
L’expression de besoins
UML pour la maîtrise d’ouvrage
Formation UML alphorm.com™©
Le diagramme d’activité
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 : fabien.brissonneau@gmail.com
Plan
• Choisir un cas d’utilisation
• Organiser le projet
• Le diagramme d’activité
Formation UML alphorm.com™©
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
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™©
Le diagramme d’activité
Action, activité, transition
Décision, merge
Fork, Join
Partition
Evénement
Formation UML alphorm.com™©
Evénement
Région interruptible
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™©
Le diagramme de
L’expression de besoins
UML pour la maîtrise d’ouvrage
Formation UML alphorm.com™©
Le diagramme de
séquences
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 : fabien.brissonneau@gmail.com
Plan
• Choisir un cas d’utilisation
• Organiser le projet
• Le diagramme de séquences
Formation UML alphorm.com™©
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
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™©
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
Ce qu’on a couvert
• Pourquoi créer un diagramme de séquences
• La syntaxe de base
Formation UML alphorm.com™©
Le modèle du domaine
Découverte des classes
UML pour l’analyse
Formation UML alphorm.com™©
Le modèle du domaine
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 : fabien.brissonneau@gmail.com
Plan
• Le diagramme de classe
• Les étapes du processus dans un outil
• La création du modèle du domaine
Formation UML alphorm.com™©
Le diagramme de classe
• Classe
• Attribut
• Association
Formation UML alphorm.com™©
Les étapes du processus
• Métier
• Besoins
• Analyse
• Conception
Formation UML alphorm.com™©
• Codage
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
Ce qu’on a couvert
• Définition du modèle du domaine
• La syntaxe essentielle du diagramme de classe
Formation UML alphorm.com™©
Partir du cas d’utilisation
Découverte des classes
UML pour l’analyse
Formation UML alphorm.com™©
Partir du cas d’utilisation
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 : fabien.brissonneau@gmail.com
Plan
• Lier cas d’utilisation et classes
• Exemple avec l’étude de cas
Formation UML alphorm.com™©
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™©
Etude de cas
• Pour chaque cas d’utilisation
Créer les classes participantes
• Regrouper les classes
Eviter doublons et synonymes
Formation UML alphorm.com™©
Ce qu’on a couvert
• La liaison entre fonctions et orienté objet
• Constituer les classes d’analyse du projet
Formation UML alphorm.com™©
Diagramme de séquence
Découverte des classes
UML pour l’analyse
Formation UML alphorm.com™©
Diagramme de séquence
d’analyse
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 : fabien.brissonneau@gmail.com
• 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™©
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™©
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™©
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™©
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™©
La notation de base du
Les état des objets
UML pour l’analyse
Formation UML alphorm.com™©
La notation de base du
diagramme d’états
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 : fabien.brissonneau@gmail.com
• Quand utiliser un diagramme d’état ?
• Notation de base
• Etude de cas
Plan
Formation UML alphorm.com™©
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™©
Notation de base
• Initial, final
• Etat, transition
• Evénement, condition, effet
Formation UML alphorm.com™©
Etude de cas
• Choisir un objet dont les états sont importants
• Créer le diagramme d’état dans le projet
Formation UML alphorm.com™©
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™©
La notation avancée du
Les état des objets
UML pour l’analyse
Formation UML alphorm.com™©
La notation avancée du
diagramme d’états
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 : fabien.brissonneau@gmail.com
• La notation avancée du diagramme
• Etude de cas
Plan
Formation UML alphorm.com™©
La notation avancée
• Etats composites
• Transition interne
• Activités, effets entrée et sortie
• Evénements prédéfinis
Formation UML alphorm.com™©
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™©
Etude de cas
• Améliorer le diagramme précédent
• Evénements prédéfinis
Formation UML alphorm.com™©
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
La notation pour la
Construire le modèle de conception
UML pour la conception
Formation UML alphorm.com™©
La notation pour la
conception
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 : fabien.brissonneau@gmail.com
• Pourquoi et quand mettre des détails dans la notation ?
• Notations supplémentaires
• Etude de cas
Plan
Formation UML alphorm.com™©
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™©
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™©
Etude de cas
• Reprendre un modèle pour le compléter
Visibilités
Types utilisés
Méthodes
…
Formation UML alphorm.com™©
…
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™©
Passer de l’analyse à la
Construire le modèle de conception
UML pour la conception
Formation UML alphorm.com™©
Passer de l’analyse à la
conception
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 : fabien.brissonneau@gmail.com
• D’où partir ?
• La traçabilité entre les modèles
• Etude de cas
Plan
Formation UML alphorm.com™©
D’où partir ?
• Modèle d’analyse
• Architecture technique
• Influence du langage de programmation
Formation UML alphorm.com™©
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™©
Etude de cas
• Exemple site web
• Base de données
• Java
Formation UML alphorm.com™©
Ce qu’on a couvert
• D’où partir ?
• La traçabilité entre les modèles
• Etude de cas
Formation UML alphorm.com™©
Traduire le diagramme
Concevoir et coder
UML pour la conception
Formation UML alphorm.com™©
Traduire le diagramme
de classe en code
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 : fabien.brissonneau@gmail.com
• Traduire classe, attribut et méthode
• Traduire les associations
• Etude de cas
Plan
Formation UML alphorm.com™©
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™©
Traduire les associations
• Associations multiplicité 1 max
• Associations multiplicité supérieure à 1
Formation UML alphorm.com™©
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™©
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™©
Traduire le diagramme
Concevoir et coder
UML pour la conception
Formation UML alphorm.com™©
Traduire le diagramme
de séquences en code
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 : fabien.brissonneau@gmail.com
• Messages / méthodes
• Traduire les envois de messages
• Etude de cas
Plan
Formation UML alphorm.com™©
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™©
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™©
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™©
Ce qu’on a couvert
• Messages / méthodes
• Traduire les envois de messages
• Et application à l’étude de cas
Formation UML alphorm.com™©
Reporter la complexité
Concevoir et coder
UML pour la conception
Formation UML alphorm.com™©
Reporter la complexité
sur le diagramme de
classes
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 : fabien.brissonneau@gmail.com
• Pourquoi éviter la complexité dynamique
• Un mécanisme de base de l’orienté objet : le polymorphisme
• Etude de cas
Plan
Formation UML alphorm.com™©
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é
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™©
Exemple
• Cas du système de fichier
• Fichier, Répertoire, Lien
• Imaginer un traitement sur le répertoire …
Formation UML alphorm.com™©
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™©
Conclusion
Formation UML alphorm.com™©
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 : fabien.brissonneau@gmail.com
Plan
• UML pour quoi faire
• Ce que l’on a couvert
• Pour aller plus loin …
Formation UML alphorm.com™©
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.
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
Pour aller plus loin
• Le choix d’un outil …
• Le temps de l’apprentissage …
• La conception objet …
Formation UML alphorm.com™©
Il n’y a plus qu’à …
Merci !
Formation UML alphorm.com™©
Merci !

Mais conteúdo relacionado

Mais procurados

Alphorm.com Support de la Formation JavaScript , avancé
Alphorm.com Support de la Formation JavaScript , avancéAlphorm.com Support de la Formation JavaScript , avancé
Alphorm.com Support de la Formation JavaScript , avancéAlphorm
 
Alphorm.com Formation VMware Workstation 11
Alphorm.com Formation VMware Workstation 11 Alphorm.com Formation VMware Workstation 11
Alphorm.com Formation VMware Workstation 11 Alphorm
 
Alphorm.com Formation Excel 2013 TCD
Alphorm.com Formation Excel 2013 TCDAlphorm.com Formation Excel 2013 TCD
Alphorm.com Formation Excel 2013 TCDAlphorm
 
Alphorm.com-Formation windows phone 8.1
Alphorm.com-Formation windows phone 8.1Alphorm.com-Formation windows phone 8.1
Alphorm.com-Formation windows phone 8.1Alphorm
 
Alphorm.com Formation Android 5
Alphorm.com Formation Android 5Alphorm.com Formation Android 5
Alphorm.com Formation Android 5Alphorm
 
Alphorm.com Formation jQuery
Alphorm.com Formation jQueryAlphorm.com Formation jQuery
Alphorm.com Formation jQueryAlphorm
 
Alphorm.com Formation VMware Horizon View 5.2
Alphorm.com Formation VMware Horizon View 5.2Alphorm.com Formation VMware Horizon View 5.2
Alphorm.com Formation VMware Horizon View 5.2Alphorm
 
Formation Windev 19,les fondamentaux
Formation Windev 19,les fondamentaux Formation Windev 19,les fondamentaux
Formation Windev 19,les fondamentaux Alphorm
 
Alphorm.com Support de la Formation Azure IAAS avancé 1
Alphorm.com Support de la Formation Azure IAAS avancé 1Alphorm.com Support de la Formation Azure IAAS avancé 1
Alphorm.com Support de la Formation Azure IAAS avancé 1Alphorm
 
Alphorm.com Formation Windows Presentation Foundation avec Visual Studio 2013...
Alphorm.com Formation Windows Presentation Foundation avec Visual Studio 2013...Alphorm.com Formation Windows Presentation Foundation avec Visual Studio 2013...
Alphorm.com Formation Windows Presentation Foundation avec Visual Studio 2013...Alphorm
 
Alphorm.com Support Formation Android 6, Expert
Alphorm.com Support Formation Android 6, ExpertAlphorm.com Support Formation Android 6, Expert
Alphorm.com Support Formation Android 6, ExpertAlphorm
 
Alphorm.com Formation JavaFX
Alphorm.com Formation JavaFXAlphorm.com Formation JavaFX
Alphorm.com Formation JavaFXAlphorm
 
Alphorm.com Formation MOS Access 2013 (77-424)
Alphorm.com Formation MOS Access 2013 (77-424)Alphorm.com Formation MOS Access 2013 (77-424)
Alphorm.com Formation MOS Access 2013 (77-424)Alphorm
 
alphorm.com - Formation Microsoft PowerPoint 2013 (77-422)
alphorm.com - Formation Microsoft PowerPoint 2013 (77-422)alphorm.com - Formation Microsoft PowerPoint 2013 (77-422)
alphorm.com - Formation Microsoft PowerPoint 2013 (77-422)Alphorm
 
Alphorm formation OS X 10.11 Client El Capitan
Alphorm formation OS X 10.11 Client El CapitanAlphorm formation OS X 10.11 Client El Capitan
Alphorm formation OS X 10.11 Client El CapitanAlphorm
 
Alphorm.com Formation PL/SQL
Alphorm.com Formation PL/SQLAlphorm.com Formation PL/SQL
Alphorm.com Formation PL/SQLAlphorm
 
Alphorm.com Formation Le Language C
Alphorm.com  Formation Le Language C Alphorm.com  Formation Le Language C
Alphorm.com Formation Le Language C Alphorm
 
Alphorm.com Formation Windev 20 Pefectionnement
Alphorm.com Formation Windev 20 Pefectionnement Alphorm.com Formation Windev 20 Pefectionnement
Alphorm.com Formation Windev 20 Pefectionnement Alphorm
 
Alphorm.com Formation Exchange 2016, Configuration Avancée
Alphorm.com Formation Exchange 2016, Configuration AvancéeAlphorm.com Formation Exchange 2016, Configuration Avancée
Alphorm.com Formation Exchange 2016, Configuration AvancéeAlphorm
 
alphorm.com - Formation Windows Server Core 2012 R2 - Guide de l'Admin IT
alphorm.com - Formation Windows Server Core 2012 R2 - Guide de l'Admin ITalphorm.com - Formation Windows Server Core 2012 R2 - Guide de l'Admin IT
alphorm.com - Formation Windows Server Core 2012 R2 - Guide de l'Admin ITAlphorm
 

Mais procurados (20)

Alphorm.com Support de la Formation JavaScript , avancé
Alphorm.com Support de la Formation JavaScript , avancéAlphorm.com Support de la Formation JavaScript , avancé
Alphorm.com Support de la Formation JavaScript , avancé
 
Alphorm.com Formation VMware Workstation 11
Alphorm.com Formation VMware Workstation 11 Alphorm.com Formation VMware Workstation 11
Alphorm.com Formation VMware Workstation 11
 
Alphorm.com Formation Excel 2013 TCD
Alphorm.com Formation Excel 2013 TCDAlphorm.com Formation Excel 2013 TCD
Alphorm.com Formation Excel 2013 TCD
 
Alphorm.com-Formation windows phone 8.1
Alphorm.com-Formation windows phone 8.1Alphorm.com-Formation windows phone 8.1
Alphorm.com-Formation windows phone 8.1
 
Alphorm.com Formation Android 5
Alphorm.com Formation Android 5Alphorm.com Formation Android 5
Alphorm.com Formation Android 5
 
Alphorm.com Formation jQuery
Alphorm.com Formation jQueryAlphorm.com Formation jQuery
Alphorm.com Formation jQuery
 
Alphorm.com Formation VMware Horizon View 5.2
Alphorm.com Formation VMware Horizon View 5.2Alphorm.com Formation VMware Horizon View 5.2
Alphorm.com Formation VMware Horizon View 5.2
 
Formation Windev 19,les fondamentaux
Formation Windev 19,les fondamentaux Formation Windev 19,les fondamentaux
Formation Windev 19,les fondamentaux
 
Alphorm.com Support de la Formation Azure IAAS avancé 1
Alphorm.com Support de la Formation Azure IAAS avancé 1Alphorm.com Support de la Formation Azure IAAS avancé 1
Alphorm.com Support de la Formation Azure IAAS avancé 1
 
Alphorm.com Formation Windows Presentation Foundation avec Visual Studio 2013...
Alphorm.com Formation Windows Presentation Foundation avec Visual Studio 2013...Alphorm.com Formation Windows Presentation Foundation avec Visual Studio 2013...
Alphorm.com Formation Windows Presentation Foundation avec Visual Studio 2013...
 
Alphorm.com Support Formation Android 6, Expert
Alphorm.com Support Formation Android 6, ExpertAlphorm.com Support Formation Android 6, Expert
Alphorm.com Support Formation Android 6, Expert
 
Alphorm.com Formation JavaFX
Alphorm.com Formation JavaFXAlphorm.com Formation JavaFX
Alphorm.com Formation JavaFX
 
Alphorm.com Formation MOS Access 2013 (77-424)
Alphorm.com Formation MOS Access 2013 (77-424)Alphorm.com Formation MOS Access 2013 (77-424)
Alphorm.com Formation MOS Access 2013 (77-424)
 
alphorm.com - Formation Microsoft PowerPoint 2013 (77-422)
alphorm.com - Formation Microsoft PowerPoint 2013 (77-422)alphorm.com - Formation Microsoft PowerPoint 2013 (77-422)
alphorm.com - Formation Microsoft PowerPoint 2013 (77-422)
 
Alphorm formation OS X 10.11 Client El Capitan
Alphorm formation OS X 10.11 Client El CapitanAlphorm formation OS X 10.11 Client El Capitan
Alphorm formation OS X 10.11 Client El Capitan
 
Alphorm.com Formation PL/SQL
Alphorm.com Formation PL/SQLAlphorm.com Formation PL/SQL
Alphorm.com Formation PL/SQL
 
Alphorm.com Formation Le Language C
Alphorm.com  Formation Le Language C Alphorm.com  Formation Le Language C
Alphorm.com Formation Le Language C
 
Alphorm.com Formation Windev 20 Pefectionnement
Alphorm.com Formation Windev 20 Pefectionnement Alphorm.com Formation Windev 20 Pefectionnement
Alphorm.com Formation Windev 20 Pefectionnement
 
Alphorm.com Formation Exchange 2016, Configuration Avancée
Alphorm.com Formation Exchange 2016, Configuration AvancéeAlphorm.com Formation Exchange 2016, Configuration Avancée
Alphorm.com Formation Exchange 2016, Configuration Avancée
 
alphorm.com - Formation Windows Server Core 2012 R2 - Guide de l'Admin IT
alphorm.com - Formation Windows Server Core 2012 R2 - Guide de l'Admin ITalphorm.com - Formation Windows Server Core 2012 R2 - Guide de l'Admin IT
alphorm.com - Formation Windows Server Core 2012 R2 - Guide de l'Admin IT
 

Destaque

Alphorm.com Formation le langage SQL
Alphorm.com  Formation le langage SQLAlphorm.com  Formation le langage SQL
Alphorm.com Formation le langage SQLAlphorm
 
Alphorm.com Support de la Formation Git
Alphorm.com Support de la Formation Git Alphorm.com Support de la Formation Git
Alphorm.com Support de la Formation Git Alphorm
 
Alphorm.com Formation TypeScript
Alphorm.com Formation TypeScriptAlphorm.com Formation TypeScript
Alphorm.com Formation TypeScriptAlphorm
 
Alphorm.com Support de la Formation PHP MySQL
Alphorm.com Support de la Formation PHP MySQLAlphorm.com Support de la Formation PHP MySQL
Alphorm.com Support de la Formation PHP MySQLAlphorm
 
Rapport PFE : Réalisation d'une application web back-office de gestion pédago...
Rapport PFE : Réalisation d'une application web back-office de gestion pédago...Rapport PFE : Réalisation d'une application web back-office de gestion pédago...
Rapport PFE : Réalisation d'une application web back-office de gestion pédago...Anas Riahi
 
alphorm.com - Formation VMware PowerCLI 5.0
alphorm.com - Formation VMware PowerCLI 5.0alphorm.com - Formation VMware PowerCLI 5.0
alphorm.com - Formation VMware PowerCLI 5.0Alphorm
 
Alphorm.com support Formation Windows 10 Déploiement et administration
Alphorm.com support Formation Windows 10 Déploiement et administrationAlphorm.com support Formation Windows 10 Déploiement et administration
Alphorm.com support Formation Windows 10 Déploiement et administrationAlphorm
 
Alphorm.com Support de la Formation VMmware vSphere 6, La gestion du stockage
Alphorm.com Support de la Formation VMmware vSphere 6, La gestion du stockageAlphorm.com Support de la Formation VMmware vSphere 6, La gestion du stockage
Alphorm.com Support de la Formation VMmware vSphere 6, La gestion du stockageAlphorm
 
Alphorm.com Support VMware vSphere 6, Le réseau virtuel
Alphorm.com Support VMware vSphere 6, Le réseau virtuelAlphorm.com Support VMware vSphere 6, Le réseau virtuel
Alphorm.com Support VMware vSphere 6, Le réseau virtuelAlphorm
 
Alphorm.com Formation CEHV9 III
Alphorm.com Formation CEHV9 IIIAlphorm.com Formation CEHV9 III
Alphorm.com Formation CEHV9 IIIAlphorm
 
Alphorm.com Formation Microsoft Hyperconvergence
Alphorm.com Formation Microsoft HyperconvergenceAlphorm.com Formation Microsoft Hyperconvergence
Alphorm.com Formation Microsoft HyperconvergenceAlphorm
 
alphorm.com - Formation Powershell 2.0
alphorm.com - Formation Powershell 2.0alphorm.com - Formation Powershell 2.0
alphorm.com - Formation Powershell 2.0Alphorm
 
Alphorm.com Formation CND 2/2: Réussir la certification
Alphorm.com Formation CND 2/2: Réussir la certificationAlphorm.com Formation CND 2/2: Réussir la certification
Alphorm.com Formation CND 2/2: Réussir la certificationAlphorm
 
Alphorm.com : Formation Active directory 2008 R2 (70-640)
Alphorm.com : Formation Active directory 2008 R2 (70-640)Alphorm.com : Formation Active directory 2008 R2 (70-640)
Alphorm.com : Formation Active directory 2008 R2 (70-640)Alphorm
 
Alphorm.com Support de la formation Hacking & Sécurité, Expert - Vulnérabilit...
Alphorm.com Support de la formation Hacking & Sécurité, Expert - Vulnérabilit...Alphorm.com Support de la formation Hacking & Sécurité, Expert - Vulnérabilit...
Alphorm.com Support de la formation Hacking & Sécurité, Expert - Vulnérabilit...Alphorm
 
alphorm.com - Formation Windows 8.1 (70-688)
alphorm.com - Formation Windows 8.1 (70-688)alphorm.com - Formation Windows 8.1 (70-688)
alphorm.com - Formation Windows 8.1 (70-688)Alphorm
 
Alphorm.com Support de la Formation VMware vSphere 6, Les machines virtuelles
Alphorm.com Support de la Formation VMware vSphere 6, Les machines virtuellesAlphorm.com Support de la Formation VMware vSphere 6, Les machines virtuelles
Alphorm.com Support de la Formation VMware vSphere 6, Les machines virtuellesAlphorm
 
Alphorm.com Formation Cisco CCNA v3 : mise à jour
Alphorm.com Formation Cisco CCNA v3 : mise à jourAlphorm.com Formation Cisco CCNA v3 : mise à jour
Alphorm.com Formation Cisco CCNA v3 : mise à jourAlphorm
 
Alphorm.com support-formation-v mware-v-center-6-ss
Alphorm.com support-formation-v mware-v-center-6-ssAlphorm.com support-formation-v mware-v-center-6-ss
Alphorm.com support-formation-v mware-v-center-6-ssAlphorm
 

Destaque (20)

Alphorm.com Formation le langage SQL
Alphorm.com  Formation le langage SQLAlphorm.com  Formation le langage SQL
Alphorm.com Formation le langage SQL
 
Alphorm.com Support de la Formation Git
Alphorm.com Support de la Formation Git Alphorm.com Support de la Formation Git
Alphorm.com Support de la Formation Git
 
Alphorm.com Formation TypeScript
Alphorm.com Formation TypeScriptAlphorm.com Formation TypeScript
Alphorm.com Formation TypeScript
 
Alphorm.com Support de la Formation PHP MySQL
Alphorm.com Support de la Formation PHP MySQLAlphorm.com Support de la Formation PHP MySQL
Alphorm.com Support de la Formation PHP MySQL
 
Rapport PFE : Réalisation d'une application web back-office de gestion pédago...
Rapport PFE : Réalisation d'une application web back-office de gestion pédago...Rapport PFE : Réalisation d'une application web back-office de gestion pédago...
Rapport PFE : Réalisation d'une application web back-office de gestion pédago...
 
Java tutorial PPT
Java tutorial PPTJava tutorial PPT
Java tutorial PPT
 
alphorm.com - Formation VMware PowerCLI 5.0
alphorm.com - Formation VMware PowerCLI 5.0alphorm.com - Formation VMware PowerCLI 5.0
alphorm.com - Formation VMware PowerCLI 5.0
 
Alphorm.com support Formation Windows 10 Déploiement et administration
Alphorm.com support Formation Windows 10 Déploiement et administrationAlphorm.com support Formation Windows 10 Déploiement et administration
Alphorm.com support Formation Windows 10 Déploiement et administration
 
Alphorm.com Support de la Formation VMmware vSphere 6, La gestion du stockage
Alphorm.com Support de la Formation VMmware vSphere 6, La gestion du stockageAlphorm.com Support de la Formation VMmware vSphere 6, La gestion du stockage
Alphorm.com Support de la Formation VMmware vSphere 6, La gestion du stockage
 
Alphorm.com Support VMware vSphere 6, Le réseau virtuel
Alphorm.com Support VMware vSphere 6, Le réseau virtuelAlphorm.com Support VMware vSphere 6, Le réseau virtuel
Alphorm.com Support VMware vSphere 6, Le réseau virtuel
 
Alphorm.com Formation CEHV9 III
Alphorm.com Formation CEHV9 IIIAlphorm.com Formation CEHV9 III
Alphorm.com Formation CEHV9 III
 
Alphorm.com Formation Microsoft Hyperconvergence
Alphorm.com Formation Microsoft HyperconvergenceAlphorm.com Formation Microsoft Hyperconvergence
Alphorm.com Formation Microsoft Hyperconvergence
 
alphorm.com - Formation Powershell 2.0
alphorm.com - Formation Powershell 2.0alphorm.com - Formation Powershell 2.0
alphorm.com - Formation Powershell 2.0
 
Alphorm.com Formation CND 2/2: Réussir la certification
Alphorm.com Formation CND 2/2: Réussir la certificationAlphorm.com Formation CND 2/2: Réussir la certification
Alphorm.com Formation CND 2/2: Réussir la certification
 
Alphorm.com : Formation Active directory 2008 R2 (70-640)
Alphorm.com : Formation Active directory 2008 R2 (70-640)Alphorm.com : Formation Active directory 2008 R2 (70-640)
Alphorm.com : Formation Active directory 2008 R2 (70-640)
 
Alphorm.com Support de la formation Hacking & Sécurité, Expert - Vulnérabilit...
Alphorm.com Support de la formation Hacking & Sécurité, Expert - Vulnérabilit...Alphorm.com Support de la formation Hacking & Sécurité, Expert - Vulnérabilit...
Alphorm.com Support de la formation Hacking & Sécurité, Expert - Vulnérabilit...
 
alphorm.com - Formation Windows 8.1 (70-688)
alphorm.com - Formation Windows 8.1 (70-688)alphorm.com - Formation Windows 8.1 (70-688)
alphorm.com - Formation Windows 8.1 (70-688)
 
Alphorm.com Support de la Formation VMware vSphere 6, Les machines virtuelles
Alphorm.com Support de la Formation VMware vSphere 6, Les machines virtuellesAlphorm.com Support de la Formation VMware vSphere 6, Les machines virtuelles
Alphorm.com Support de la Formation VMware vSphere 6, Les machines virtuelles
 
Alphorm.com Formation Cisco CCNA v3 : mise à jour
Alphorm.com Formation Cisco CCNA v3 : mise à jourAlphorm.com Formation Cisco CCNA v3 : mise à jour
Alphorm.com Formation Cisco CCNA v3 : mise à jour
 
Alphorm.com support-formation-v mware-v-center-6-ss
Alphorm.com support-formation-v mware-v-center-6-ssAlphorm.com support-formation-v mware-v-center-6-ss
Alphorm.com support-formation-v mware-v-center-6-ss
 

Semelhante a alphorm.com - Formation UML

Formation viseo modelisation_uml_avec_enterprise_architect
Formation viseo modelisation_uml_avec_enterprise_architectFormation viseo modelisation_uml_avec_enterprise_architect
Formation viseo modelisation_uml_avec_enterprise_architectMïna You
 
Formation d'architecte logiciel AFCEPF
Formation d'architecte logiciel AFCEPFFormation d'architecte logiciel AFCEPF
Formation d'architecte logiciel AFCEPFBoubker ABERWAG
 
2015: L'année d'Elixir, Code, écosystème et communauté
2015: L'année d'Elixir, Code, écosystème et communauté2015: L'année d'Elixir, Code, écosystème et communauté
2015: L'année d'Elixir, Code, écosystème et communautéMickaël Rémond
 
Soutenance séminaire bibliographique
Soutenance séminaire bibliographiqueSoutenance séminaire bibliographique
Soutenance séminaire bibliographiqueMaxime ALAY-EDDINE
 
Meetup Cameroun - Presentation SFDC
Meetup Cameroun - Presentation SFDCMeetup Cameroun - Presentation SFDC
Meetup Cameroun - Presentation SFDCThierry TROUIN ☁
 
SysML (Valtech Days 2008)
SysML (Valtech Days 2008)SysML (Valtech Days 2008)
SysML (Valtech Days 2008)Pascal Roques
 
REX sur l'usage d’un LCMS - Atelier 9R
REX sur l'usage d’un LCMS - Atelier 9RREX sur l'usage d’un LCMS - Atelier 9R
REX sur l'usage d’un LCMS - Atelier 9RFFFOD
 
Alphorm.com Formation Java, les fondamentaux
Alphorm.com Formation Java, les fondamentaux Alphorm.com Formation Java, les fondamentaux
Alphorm.com Formation Java, les fondamentaux Alphorm
 
Alphorm.com support de la formation programmer en C# 6
Alphorm.com support de la formation programmer en C# 6Alphorm.com support de la formation programmer en C# 6
Alphorm.com support de la formation programmer en C# 6Alphorm
 
Modeliser une application_web
Modeliser une application_webModeliser une application_web
Modeliser une application_webMoez Moezm
 
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
[Scrum Day 2011] Outillage Agile dans un environnement MicrosoftChristophe HERAL
 
Modelisation agile 03122011
Modelisation agile  03122011Modelisation agile  03122011
Modelisation agile 03122011agnes_crepet
 
Microsoft mdday2010
Microsoft mdday2010Microsoft mdday2010
Microsoft mdday2010MD DAY
 
Formation PHP avancé - Cake PHP
Formation PHP avancé - Cake PHPFormation PHP avancé - Cake PHP
Formation PHP avancé - Cake PHPkemenaran
 
Enrichir Ses Méthodes Avec des Processus Unifiés Agiles
Enrichir Ses Méthodes Avec des Processus Unifiés AgilesEnrichir Ses Méthodes Avec des Processus Unifiés Agiles
Enrichir Ses Méthodes Avec des Processus Unifiés AgilesRomain Couturier
 
Symfony2: 30 astuces et bonnes pratiques
Symfony2: 30 astuces et bonnes pratiquesSymfony2: 30 astuces et bonnes pratiques
Symfony2: 30 astuces et bonnes pratiquesNoel GUILBERT
 

Semelhante a alphorm.com - Formation UML (20)

Formation viseo modelisation_uml_avec_enterprise_architect
Formation viseo modelisation_uml_avec_enterprise_architectFormation viseo modelisation_uml_avec_enterprise_architect
Formation viseo modelisation_uml_avec_enterprise_architect
 
Formation d'architecte logiciel AFCEPF
Formation d'architecte logiciel AFCEPFFormation d'architecte logiciel AFCEPF
Formation d'architecte logiciel AFCEPF
 
2015: L'année d'Elixir, Code, écosystème et communauté
2015: L'année d'Elixir, Code, écosystème et communauté2015: L'année d'Elixir, Code, écosystème et communauté
2015: L'année d'Elixir, Code, écosystème et communauté
 
Uml partie 1
Uml partie 1Uml partie 1
Uml partie 1
 
Soutenance séminaire bibliographique
Soutenance séminaire bibliographiqueSoutenance séminaire bibliographique
Soutenance séminaire bibliographique
 
Meetup Cameroun - Presentation SFDC
Meetup Cameroun - Presentation SFDCMeetup Cameroun - Presentation SFDC
Meetup Cameroun - Presentation SFDC
 
SysML (Valtech Days 2008)
SysML (Valtech Days 2008)SysML (Valtech Days 2008)
SysML (Valtech Days 2008)
 
Uml
UmlUml
Uml
 
REX sur l'usage d’un LCMS - Atelier 9R
REX sur l'usage d’un LCMS - Atelier 9RREX sur l'usage d’un LCMS - Atelier 9R
REX sur l'usage d’un LCMS - Atelier 9R
 
Alphorm.com Formation Java, les fondamentaux
Alphorm.com Formation Java, les fondamentaux Alphorm.com Formation Java, les fondamentaux
Alphorm.com Formation Java, les fondamentaux
 
Alphorm.com support de la formation programmer en C# 6
Alphorm.com support de la formation programmer en C# 6Alphorm.com support de la formation programmer en C# 6
Alphorm.com support de la formation programmer en C# 6
 
Modeliser une application_web
Modeliser une application_webModeliser une application_web
Modeliser une application_web
 
Uml
UmlUml
Uml
 
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
 
Modelisation agile 03122011
Modelisation agile  03122011Modelisation agile  03122011
Modelisation agile 03122011
 
Microsoft mdday2010
Microsoft mdday2010Microsoft mdday2010
Microsoft mdday2010
 
Formation PHP avancé - Cake PHP
Formation PHP avancé - Cake PHPFormation PHP avancé - Cake PHP
Formation PHP avancé - Cake PHP
 
Enrichir Ses Méthodes Avec des Processus Unifiés Agiles
Enrichir Ses Méthodes Avec des Processus Unifiés AgilesEnrichir Ses Méthodes Avec des Processus Unifiés Agiles
Enrichir Ses Méthodes Avec des Processus Unifiés Agiles
 
Etude des Frameworks PHP
Etude des Frameworks PHPEtude des Frameworks PHP
Etude des Frameworks PHP
 
Symfony2: 30 astuces et bonnes pratiques
Symfony2: 30 astuces et bonnes pratiquesSymfony2: 30 astuces et bonnes pratiques
Symfony2: 30 astuces et bonnes pratiques
 

Mais de Alphorm

Alphorm.com Formation Microsoft 365 (MS-500) : Administrateur Sécurité - Prot...
Alphorm.com Formation Microsoft 365 (MS-500) : Administrateur Sécurité - Prot...Alphorm.com Formation Microsoft 365 (MS-500) : Administrateur Sécurité - Prot...
Alphorm.com Formation Microsoft 365 (MS-500) : Administrateur Sécurité - Prot...Alphorm
 
Alphorm.com Formation CCNP ENCOR 350-401 (6of8) : Sécurité
Alphorm.com Formation CCNP ENCOR 350-401 (6of8) : SécuritéAlphorm.com Formation CCNP ENCOR 350-401 (6of8) : Sécurité
Alphorm.com Formation CCNP ENCOR 350-401 (6of8) : SécuritéAlphorm
 
Alphorm.com Formation Vue JS 3 : Créer une application de A à Z
Alphorm.com Formation Vue JS 3 : Créer une application de A à ZAlphorm.com Formation Vue JS 3 : Créer une application de A à Z
Alphorm.com Formation Vue JS 3 : Créer une application de A à ZAlphorm
 
Alphorm.com Formation Blockchain : Maîtriser la Conception d'Architectures
Alphorm.com Formation Blockchain : Maîtriser la Conception d'ArchitecturesAlphorm.com Formation Blockchain : Maîtriser la Conception d'Architectures
Alphorm.com Formation Blockchain : Maîtriser la Conception d'ArchitecturesAlphorm
 
Alphorm.com Formation Sage : Gestion Commerciale
Alphorm.com Formation Sage : Gestion CommercialeAlphorm.com Formation Sage : Gestion Commerciale
Alphorm.com Formation Sage : Gestion CommercialeAlphorm
 
Alphorm.com Formation PHP 8 (2/6) : L'héritage en orienté objet
Alphorm.com Formation PHP 8 (2/6) : L'héritage en orienté objetAlphorm.com Formation PHP 8 (2/6) : L'héritage en orienté objet
Alphorm.com Formation PHP 8 (2/6) : L'héritage en orienté objetAlphorm
 
Alphorm.com Formation Maya 3D : Créer un Design d'intérieur au Style Isométrique
Alphorm.com Formation Maya 3D : Créer un Design d'intérieur au Style IsométriqueAlphorm.com Formation Maya 3D : Créer un Design d'intérieur au Style Isométrique
Alphorm.com Formation Maya 3D : Créer un Design d'intérieur au Style IsométriqueAlphorm
 
Alphorm.com Formation VMware vSphere 7 : La Mise à Niveau
Alphorm.com Formation VMware vSphere 7 : La Mise à NiveauAlphorm.com Formation VMware vSphere 7 : La Mise à Niveau
Alphorm.com Formation VMware vSphere 7 : La Mise à NiveauAlphorm
 
Alphorm.com Formation Apprendre les bonnes pratiques de CSS avec BEM : OOCSS ...
Alphorm.com Formation Apprendre les bonnes pratiques de CSS avec BEM : OOCSS ...Alphorm.com Formation Apprendre les bonnes pratiques de CSS avec BEM : OOCSS ...
Alphorm.com Formation Apprendre les bonnes pratiques de CSS avec BEM : OOCSS ...Alphorm
 
Alphorm.com Formation Unity : Monétiser votre jeu 3D sur les plateformes Mobiles
Alphorm.com Formation Unity : Monétiser votre jeu 3D sur les plateformes MobilesAlphorm.com Formation Unity : Monétiser votre jeu 3D sur les plateformes Mobiles
Alphorm.com Formation Unity : Monétiser votre jeu 3D sur les plateformes MobilesAlphorm
 
Alphorm.com Formation PHP 8 : Les bases de la POO
Alphorm.com Formation PHP 8 : Les bases de la POOAlphorm.com Formation PHP 8 : Les bases de la POO
Alphorm.com Formation PHP 8 : Les bases de la POOAlphorm
 
Alphorm.com Formation Power BI : Transformation de Données avec DAX et Power ...
Alphorm.com Formation Power BI : Transformation de Données avec DAX et Power ...Alphorm.com Formation Power BI : Transformation de Données avec DAX et Power ...
Alphorm.com Formation Power BI : Transformation de Données avec DAX et Power ...Alphorm
 
Alphorm.com Formation Techniques de Blue Teaming : L'Essentiel pour l'Analyst...
Alphorm.com Formation Techniques de Blue Teaming : L'Essentiel pour l'Analyst...Alphorm.com Formation Techniques de Blue Teaming : L'Essentiel pour l'Analyst...
Alphorm.com Formation Techniques de Blue Teaming : L'Essentiel pour l'Analyst...Alphorm
 
Alphorm.com Formation Améliorer le développement avec CSS-in-JS _ Styled Comp...
Alphorm.com Formation Améliorer le développement avec CSS-in-JS _ Styled Comp...Alphorm.com Formation Améliorer le développement avec CSS-in-JS _ Styled Comp...
Alphorm.com Formation Améliorer le développement avec CSS-in-JS _ Styled Comp...Alphorm
 
Alphorm.com Formation Unity (6/7) : Maitriser l'Intelligence Artificielle de ...
Alphorm.com Formation Unity (6/7) : Maitriser l'Intelligence Artificielle de ...Alphorm.com Formation Unity (6/7) : Maitriser l'Intelligence Artificielle de ...
Alphorm.com Formation Unity (6/7) : Maitriser l'Intelligence Artificielle de ...Alphorm
 
Alphorm.com Formation Architecture Microservices : Jenkins et SpringBoot
Alphorm.com Formation Architecture Microservices : Jenkins et SpringBootAlphorm.com Formation Architecture Microservices : Jenkins et SpringBoot
Alphorm.com Formation Architecture Microservices : Jenkins et SpringBootAlphorm
 
Alphorm.com Formation Active Directory 2022 : Multi Sites et Services
Alphorm.com Formation Active Directory 2022 : Multi Sites et ServicesAlphorm.com Formation Active Directory 2022 : Multi Sites et Services
Alphorm.com Formation Active Directory 2022 : Multi Sites et ServicesAlphorm
 
Alphorm.com Formation Vue JS 3 : Exploiter la Composition API
Alphorm.com Formation Vue JS 3 : Exploiter la Composition APIAlphorm.com Formation Vue JS 3 : Exploiter la Composition API
Alphorm.com Formation Vue JS 3 : Exploiter la Composition APIAlphorm
 
Alphorm.com Formation Power BI : Analyse et Visualisation de Données
Alphorm.com Formation Power BI : Analyse et Visualisation de DonnéesAlphorm.com Formation Power BI : Analyse et Visualisation de Données
Alphorm.com Formation Power BI : Analyse et Visualisation de DonnéesAlphorm
 
Alphorm.com Formation CCNP ENCOR 350-401 (5/8) : Architecture
Alphorm.com Formation CCNP ENCOR 350-401 (5/8) : ArchitectureAlphorm.com Formation CCNP ENCOR 350-401 (5/8) : Architecture
Alphorm.com Formation CCNP ENCOR 350-401 (5/8) : ArchitectureAlphorm
 

Mais de Alphorm (20)

Alphorm.com Formation Microsoft 365 (MS-500) : Administrateur Sécurité - Prot...
Alphorm.com Formation Microsoft 365 (MS-500) : Administrateur Sécurité - Prot...Alphorm.com Formation Microsoft 365 (MS-500) : Administrateur Sécurité - Prot...
Alphorm.com Formation Microsoft 365 (MS-500) : Administrateur Sécurité - Prot...
 
Alphorm.com Formation CCNP ENCOR 350-401 (6of8) : Sécurité
Alphorm.com Formation CCNP ENCOR 350-401 (6of8) : SécuritéAlphorm.com Formation CCNP ENCOR 350-401 (6of8) : Sécurité
Alphorm.com Formation CCNP ENCOR 350-401 (6of8) : Sécurité
 
Alphorm.com Formation Vue JS 3 : Créer une application de A à Z
Alphorm.com Formation Vue JS 3 : Créer une application de A à ZAlphorm.com Formation Vue JS 3 : Créer une application de A à Z
Alphorm.com Formation Vue JS 3 : Créer une application de A à Z
 
Alphorm.com Formation Blockchain : Maîtriser la Conception d'Architectures
Alphorm.com Formation Blockchain : Maîtriser la Conception d'ArchitecturesAlphorm.com Formation Blockchain : Maîtriser la Conception d'Architectures
Alphorm.com Formation Blockchain : Maîtriser la Conception d'Architectures
 
Alphorm.com Formation Sage : Gestion Commerciale
Alphorm.com Formation Sage : Gestion CommercialeAlphorm.com Formation Sage : Gestion Commerciale
Alphorm.com Formation Sage : Gestion Commerciale
 
Alphorm.com Formation PHP 8 (2/6) : L'héritage en orienté objet
Alphorm.com Formation PHP 8 (2/6) : L'héritage en orienté objetAlphorm.com Formation PHP 8 (2/6) : L'héritage en orienté objet
Alphorm.com Formation PHP 8 (2/6) : L'héritage en orienté objet
 
Alphorm.com Formation Maya 3D : Créer un Design d'intérieur au Style Isométrique
Alphorm.com Formation Maya 3D : Créer un Design d'intérieur au Style IsométriqueAlphorm.com Formation Maya 3D : Créer un Design d'intérieur au Style Isométrique
Alphorm.com Formation Maya 3D : Créer un Design d'intérieur au Style Isométrique
 
Alphorm.com Formation VMware vSphere 7 : La Mise à Niveau
Alphorm.com Formation VMware vSphere 7 : La Mise à NiveauAlphorm.com Formation VMware vSphere 7 : La Mise à Niveau
Alphorm.com Formation VMware vSphere 7 : La Mise à Niveau
 
Alphorm.com Formation Apprendre les bonnes pratiques de CSS avec BEM : OOCSS ...
Alphorm.com Formation Apprendre les bonnes pratiques de CSS avec BEM : OOCSS ...Alphorm.com Formation Apprendre les bonnes pratiques de CSS avec BEM : OOCSS ...
Alphorm.com Formation Apprendre les bonnes pratiques de CSS avec BEM : OOCSS ...
 
Alphorm.com Formation Unity : Monétiser votre jeu 3D sur les plateformes Mobiles
Alphorm.com Formation Unity : Monétiser votre jeu 3D sur les plateformes MobilesAlphorm.com Formation Unity : Monétiser votre jeu 3D sur les plateformes Mobiles
Alphorm.com Formation Unity : Monétiser votre jeu 3D sur les plateformes Mobiles
 
Alphorm.com Formation PHP 8 : Les bases de la POO
Alphorm.com Formation PHP 8 : Les bases de la POOAlphorm.com Formation PHP 8 : Les bases de la POO
Alphorm.com Formation PHP 8 : Les bases de la POO
 
Alphorm.com Formation Power BI : Transformation de Données avec DAX et Power ...
Alphorm.com Formation Power BI : Transformation de Données avec DAX et Power ...Alphorm.com Formation Power BI : Transformation de Données avec DAX et Power ...
Alphorm.com Formation Power BI : Transformation de Données avec DAX et Power ...
 
Alphorm.com Formation Techniques de Blue Teaming : L'Essentiel pour l'Analyst...
Alphorm.com Formation Techniques de Blue Teaming : L'Essentiel pour l'Analyst...Alphorm.com Formation Techniques de Blue Teaming : L'Essentiel pour l'Analyst...
Alphorm.com Formation Techniques de Blue Teaming : L'Essentiel pour l'Analyst...
 
Alphorm.com Formation Améliorer le développement avec CSS-in-JS _ Styled Comp...
Alphorm.com Formation Améliorer le développement avec CSS-in-JS _ Styled Comp...Alphorm.com Formation Améliorer le développement avec CSS-in-JS _ Styled Comp...
Alphorm.com Formation Améliorer le développement avec CSS-in-JS _ Styled Comp...
 
Alphorm.com Formation Unity (6/7) : Maitriser l'Intelligence Artificielle de ...
Alphorm.com Formation Unity (6/7) : Maitriser l'Intelligence Artificielle de ...Alphorm.com Formation Unity (6/7) : Maitriser l'Intelligence Artificielle de ...
Alphorm.com Formation Unity (6/7) : Maitriser l'Intelligence Artificielle de ...
 
Alphorm.com Formation Architecture Microservices : Jenkins et SpringBoot
Alphorm.com Formation Architecture Microservices : Jenkins et SpringBootAlphorm.com Formation Architecture Microservices : Jenkins et SpringBoot
Alphorm.com Formation Architecture Microservices : Jenkins et SpringBoot
 
Alphorm.com Formation Active Directory 2022 : Multi Sites et Services
Alphorm.com Formation Active Directory 2022 : Multi Sites et ServicesAlphorm.com Formation Active Directory 2022 : Multi Sites et Services
Alphorm.com Formation Active Directory 2022 : Multi Sites et Services
 
Alphorm.com Formation Vue JS 3 : Exploiter la Composition API
Alphorm.com Formation Vue JS 3 : Exploiter la Composition APIAlphorm.com Formation Vue JS 3 : Exploiter la Composition API
Alphorm.com Formation Vue JS 3 : Exploiter la Composition API
 
Alphorm.com Formation Power BI : Analyse et Visualisation de Données
Alphorm.com Formation Power BI : Analyse et Visualisation de DonnéesAlphorm.com Formation Power BI : Analyse et Visualisation de Données
Alphorm.com Formation Power BI : Analyse et Visualisation de Données
 
Alphorm.com Formation CCNP ENCOR 350-401 (5/8) : Architecture
Alphorm.com Formation CCNP ENCOR 350-401 (5/8) : ArchitectureAlphorm.com Formation CCNP ENCOR 350-401 (5/8) : Architecture
Alphorm.com Formation CCNP ENCOR 350-401 (5/8) : Architecture
 

alphorm.com - Formation UML

  • 1. 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 : fabien.brissonneau@gmail.com
  • 2. 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
  • 3. Présentation du formateur • Fabien Brissonneau • Email : fabien.brissonneau@gmail.com • 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/
  • 4. 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.
  • 5. 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
  • 6. 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
  • 7. 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
  • 8. Il n’y a plus qu’à … GO Formation UML alphorm.com™© GO
  • 9. Les diagrammes UML Les diagrammes UML Généralités Formation UML alphorm.com™© Les diagrammes UML 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 : fabien.brissonneau@gmail.com
  • 10. Plan • Origines et généralités sur UML • Les différents diagrammes UML Formation UML alphorm.com™©
  • 11. • 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
  • 12. • 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
  • 13. • 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
  • 14. • 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
  • 15. • 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™©
  • 16. • 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™©
  • 17. • 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
  • 18. • 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™©
  • 19. • 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™©
  • 20. • 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™©
  • 21. • 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™©
  • 22. • 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
  • 23. • 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™©
  • 24. • 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™©
  • 25. • 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™©
  • 26. • 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™©
  • 27. • 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™©
  • 28. 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
  • 29. L'approche orientée objets Les diagrammes UML Généralités Formation UML alphorm.com™© L'approche orientée objets 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 : fabien.brissonneau@gmail.com
  • 30. Plan • Rappels sur l’approche orientée objets • Pourquoi ? • Avantages attendus ? • Vocabulaire Formation UML alphorm.com™©
  • 31. • 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
  • 32. • 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
  • 33. 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
  • 34. • 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™©
  • 35. • 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™©
  • 36. • 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™©
  • 37. • 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™©
  • 38. • 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™©
  • 39. • Classification • Encapsulation • Abstraction Quelques concepts simples Formation UML alphorm.com™© • Méthodes/Surcharge • Messages • Héritage/Redéfinition • Polymorphisme
  • 43. Les méthodes et la surcharge Tableau t = new Tableau(); Formation UML alphorm.com™© t.reSize(); t.reSize(5);
  • 44. • Un objet émetteur envoi des messages à un récepteur • Traduit la dynamique du système Les messages 1/2 Formation UML alphorm.com™©
  • 45. • Les objets s’échangent des messages Les messages 2/2 Formation UML alphorm.com™©
  • 46. • Rappels sur la programmation orientée objets • Usage et limites de l’héritage • Rappels sur UML • Utiliser UML Objectifs Formation UML alphorm.com™©
  • 47. L’héritage Felin minou = new Chat() ; Formation UML alphorm.com™© minou.parler() ; minou.chasser() ;
  • 48. 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.
  • 49. Illustration de l’héritage pour rassembler des objets Formation UML alphorm.com™©
  • 50. Illustration de l’héritage pour éviter du code en double Formation UML alphorm.com™©
  • 51. 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é
  • 52. 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™©
  • 53. EST-UN et 100% Formation UML alphorm.com™©
  • 54. 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™©
  • 55. Le diagramme de classes Les diagrammes UML Généralités Formation UML alphorm.com™© Le diagramme de classes 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 : fabien.brissonneau@gmail.com
  • 56. Plan • Usages du diagramme de classes • Syntaxe de base • Syntaxe avancée Formation UML alphorm.com™©
  • 57. • 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
  • 58. 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
  • 60. Classes, attributs, méthodes, visibilités Formation UML alphorm.com™©
  • 63. Classe abstraite Formation UML alphorm.com™©
  • 65. 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
  • 66. Attributs dérivés et constants Formation UML alphorm.com™©
  • 67. Attributs et méthodes statiques Formation UML alphorm.com™©
  • 68. Restriction de navigabilité et noms de rôles Formation UML alphorm.com™©
  • 71. Composition et agrégation Formation UML alphorm.com™©
  • 72. Notes et contraintes Formation UML alphorm.com™©
  • 73. 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
  • 74. Le diagramme de séquences Les diagrammes UML Généralités Formation UML alphorm.com™© Le diagramme de séquences 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 : fabien.brissonneau@gmail.com
  • 75. Plan • Usages du diagramme de séquences • Syntaxe de base • Syntaxe avancée Formation UML alphorm.com™©
  • 76. • 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
  • 77. 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™©
  • 78. Lignes de vie Formation UML alphorm.com™©
  • 80. Messages de création, de destruction Formation UML alphorm.com™©
  • 81. Syntaxe avancée • Les cadres LOOP, ALT, REF, OPT • Auto-messages, messages récursifs Formation UML alphorm.com™©
  • 82. Cadre LOOP Formation UML alphorm.com™©
  • 83. Cadre ALT Formation UML alphorm.com™©
  • 84. Auto-messages et messages récursifs Formation UML alphorm.com™©
  • 85. 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™©
  • 86. Le diagramme de cas Les diagrammes UML Généralités Formation UML alphorm.com™© Le diagramme de cas d’utilisation 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 : fabien.brissonneau@gmail.com
  • 87. Plan • Usages du diagramme de cas d’utilisation • Syntaxe de base • Syntaxe avancée Formation UML alphorm.com™©
  • 88. • 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™©
  • 89. La syntaxe de base • Acteur, humain ou machine • Cas d’utilisation • Association • Frontière du système Formation UML alphorm.com™©
  • 90. 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
  • 94. La syntaxe avancée • Acteur abstrait • Cas d’utilisation abstrait, généralisation • Inclusion, extension Formation UML alphorm.com™©
  • 96. Cas d’utilisation abstrait, généralisation Formation UML alphorm.com™©
  • 98. 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™©
  • 99. Le diagramme d’activités Les diagrammes UML Généralités Formation UML alphorm.com™© Le diagramme d’activités 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 : fabien.brissonneau@gmail.com
  • 100. Plan • Usages du diagramme d’activités • Syntaxe de base • Syntaxe avancée Formation UML alphorm.com™©
  • 101. • 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™©
  • 102. La syntaxe de base • Action, début et fin du processus • Flux de contrôle, décision • Activité Formation UML alphorm.com™©
  • 103. Action, début et fin de processus Formation UML alphorm.com™©
  • 106. 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
  • 107. Fork et Join Formation UML alphorm.com™©
  • 108. Fin locale de flux Formation UML alphorm.com™©
  • 110. Object node, flow Formation UML alphorm.com™©
  • 113. 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™©
  • 114. Le diagramme de Les diagrammes UML Généralités Formation UML alphorm.com™© Le diagramme de composants 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 : fabien.brissonneau@gmail.com
  • 115. Plan • Usages du diagramme de composants • Syntaxe de base Formation UML alphorm.com™©
  • 116. • 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
  • 117. La syntaxe de base • Composant • Interfaces • Ports • Dépendances Formation UML alphorm.com™©
  • 118. Le composant Formation UML alphorm.com™©
  • 119. Le composant Formation UML alphorm.com™©
  • 123. Composants et interfaces Formation UML alphorm.com™©
  • 124. Composants et dépendances Formation UML alphorm.com™©
  • 125. 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™©
  • 126. Le diagramme de Les diagrammes UML Généralités Formation UML alphorm.com™© Le diagramme de déploiement 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 : fabien.brissonneau@gmail.com
  • 127. Plan • Usages du diagramme de déploiement • Syntaxe de base Formation UML alphorm.com™©
  • 128. • 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™©
  • 129. La syntaxe de base • Noeud • Lien • Stéréotypes • Artefacts Formation UML alphorm.com™©
  • 130. Les noeuds Formation UML alphorm.com™©
  • 131. Nœuds et liens Formation UML alphorm.com™©
  • 132. Nœud et stéréotypes Formation UML alphorm.com™©
  • 133. Nœud et artefacts Formation UML alphorm.com™©
  • 134. Ce qu’on a couvert • Les usages du diagramme de déploiement • La syntaxe de base : nœud, lien, artefacts Formation UML alphorm.com™©
  • 135. Le diagramme de Les diagrammes UML Généralités Formation UML alphorm.com™© Le diagramme de packages 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 : fabien.brissonneau@gmail.com
  • 136. Plan • Usages du diagramme de packages • Syntaxe de base Formation UML alphorm.com™©
  • 137. • 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
  • 138. La syntaxe de base • Packages, stéréotypes • Dépendances • Contenance Formation UML alphorm.com™©
  • 142. Dépendances entre packages Formation UML alphorm.com™©
  • 143. Origines des dépendances entre packages Formation UML alphorm.com™©
  • 144. Origines des dépendances Formation UML alphorm.com™©
  • 145. Acyclic Dependency Principle Formation UML alphorm.com™©
  • 146. 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™©
  • 147. Le diagramme d’états Les diagrammes UML Généralités Formation UML alphorm.com™© Le diagramme d’états 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 : fabien.brissonneau@gmail.com
  • 148. Plan • Usages du diagramme d’états • Syntaxe de base • Syntaxe avancée Formation UML alphorm.com™©
  • 149. • 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
  • 150. La syntaxe de base • Etats, transitions, initial, final • Evénements, conditions • Effets, activités Formation UML alphorm.com™©
  • 152. Evénements et conditions Formation UML alphorm.com™©
  • 153. Activités et effets Formation UML alphorm.com™©
  • 154. 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™©
  • 155. Evénements prédéfinis, états composites Formation UML alphorm.com™©
  • 156. Etats composites Formation UML alphorm.com™©
  • 157. Transition propre, interne, effet entrée, sortie Formation UML alphorm.com™©
  • 158. Pseudo état historique Formation UML alphorm.com™©
  • 159. 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™©
  • 160. Le diagramme de Les diagrammes UML Généralités Formation UML alphorm.com™© Le diagramme de communication 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 : fabien.brissonneau@gmail.com
  • 161. Plan • Usages du diagramme de communication • Syntaxe de base • Syntaxe avancée Formation UML alphorm.com™©
  • 162. • 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
  • 163. La syntaxe de base • Les objets • Les liens • Les messages Formation UML alphorm.com™©
  • 164. Les objets Formation UML alphorm.com™©
  • 165. Les liens Formation UML alphorm.com™©
  • 166. Les messages Formation UML alphorm.com™©
  • 167. La syntaxe avancée • Boundary, control, entity • Numérotation • Itération Formation UML alphorm.com™©
  • 168. Boundary, control, entity Formation UML alphorm.com™©
  • 169. Numérotation avec numéros mineurs Formation UML alphorm.com™©
  • 172. 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™©
  • 173. Le diagramme de temps Les diagrammes UML Généralités Formation UML alphorm.com™© Le diagramme de temps 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 : fabien.brissonneau@gmail.com
  • 174. Plan • Usages du diagramme de temps • Syntaxe de base Formation UML alphorm.com™©
  • 175. • 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™©
  • 176. 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
  • 177. Le cadre Formation UML alphorm.com™©
  • 178. Les objets Formation UML alphorm.com™©
  • 179. Les états Formation UML alphorm.com™©
  • 180. L’échelle de temps Formation UML alphorm.com™©
  • 182. Contraintes de durée Formation UML alphorm.com™©
  • 183. Contraintes de temps Formation UML alphorm.com™©
  • 184. 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™©
  • 185. Les diagrammes d’objets, Les diagrammes UML Généralités Formation UML alphorm.com™© Les diagrammes d’objets, de vue d’ensemble et de profil 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 : fabien.brissonneau@gmail.com
  • 186. 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
  • 187. • 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
  • 188. La syntaxe de base • Les objets • Les liens Formation UML alphorm.com™©
  • 189. Les objets Formation UML alphorm.com™©
  • 190. Les liens Formation UML alphorm.com™©
  • 191. • 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™©
  • 192. La syntaxe de base • Syntaxe des diagrammes d’activités, cadres références • Cadres expansés Formation UML alphorm.com™©
  • 193. Cadre REF, syntaxe des activités Formation UML alphorm.com™©
  • 194. Cadres expansés Formation UML alphorm.com™©
  • 195. 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
  • 196. Syntaxe de base Formation UML alphorm.com™©
  • 197. Syntaxe de base Formation UML alphorm.com™©
  • 198. 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
  • 199. Le diagramme de Les diagrammes UML Généralités Formation UML alphorm.com™© Le diagramme de structures composites 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 : fabien.brissonneau@gmail.com
  • 200. Plan • Usages du diagramme de structures composites • Syntaxe de base Formation UML alphorm.com™©
  • 201. • 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™©
  • 202. La syntaxe de base • Classe structurée • Partie • Port • Connecteur Formation UML alphorm.com™©
  • 203. Classe structurée Formation UML alphorm.com™©
  • 207. 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™©
  • 208. Utiliser les diagrammes UML dans un développement UML Formation UML alphorm.com™© Utiliser les diagrammes 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 : fabien.brissonneau@gmail.com
  • 209. 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™©
  • 210. 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™©
  • 211. 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
  • 212. 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™©
  • 213. 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™©
  • 214. 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™©
  • 215. UML et le processus UML dans un développement UML Formation UML alphorm.com™© UML et le processus 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 : fabien.brissonneau@gmail.com
  • 216. Plan • Définition du processus • Place de la conception • Quels diagrammes pour quelles étapes ? • UML dans les outils Formation UML alphorm.com™©
  • 217. • 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™©
  • 218. 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
  • 219. Le manifeste de l’Agilité Formation UML alphorm.com™©
  • 220. • 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.
  • 221. • 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
  • 223. • 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éé
  • 224. UML dans les outils • Structurer un projet UML • Que produire avec un outil ? • Partager un référentiel Formation UML alphorm.com™©
  • 225. 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™©
  • 226. L’enchaînement entre UML dans un développement UML Formation UML alphorm.com™© L’enchaînement entre les diagrammes UML 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 : fabien.brissonneau@gmail.com
  • 227. 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
  • 228. 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
  • 229. Les processus Modèle métier Vision Cas d’utilisation Modèle d’analyse Entité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
  • 230. Description du métier Formation UML alphorm.com™©
  • 231. Description des besoins Formation UML alphorm.com™©
  • 232. Description des besoins Formation UML alphorm.com™©
  • 233. Description de l’analyse Formation UML alphorm.com™©
  • 234. Description de la conception Formation UML alphorm.com™©
  • 235. Vers le code et la base … Formation UML alphorm.com™©
  • 236. Vers le code et la base … Formation UML alphorm.com™©
  • 237. 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
  • 238. 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.com Blog : http://www.alphorm.com/blog Forum : http://www.alphorm.com/forum Fabien Brissonneau Consultant, concepteur et formateur Objets Logiciels Contact : fabien.brissonneau@gmail.com
  • 239. 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™©
  • 240. 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™©
  • 241. Organisation du projet • Projet UML Utiliser le package stéréotypé « model » Créer un modèle « métier » Formation UML alphorm.com™©
  • 242. 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, …
  • 243. Schématisation des processus métier • Le diagramme des processus Diagramme de cas d’utilisation Stéréotype Business UseCase Formation UML alphorm.com™©
  • 244. 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™©
  • 245. 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.com Blog : http://www.alphorm.com/blog Forum : http://www.alphorm.com/forum Fabien Brissonneau Consultant, concepteur et formateur Objets Logiciels Contact : fabien.brissonneau@gmail.com
  • 246. Plan • Choix d’un processus « métier » • Le diagramme d’activité • La syntaxe du diagramme d’activité Formation UML alphorm.com™©
  • 247. 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™©
  • 248. Le diagramme d’activité • Création du diagramme Sous le processus Au moins un diagramme par processus Formation UML alphorm.com™©
  • 249. La syntaxe du diagramme d’activité • Le diagramme d’activité Actions, activités Initial, final Décisions Fork Formation UML alphorm.com™© Fork
  • 250. 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™©
  • 251. 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.com Blog : http://www.alphorm.com/blog Forum : http://www.alphorm.com/forum Fabien Brissonneau Consultant, concepteur et formateur Objets Logiciels Contact : fabien.brissonneau@gmail.com
  • 252. Plan • Choix d’un processus « métier » • Le diagramme de séquences • La syntaxe du diagramme de séquences Formation UML alphorm.com™©
  • 253. Choix d’un processus « métier » • Le modèle « métier » Dans l’outil, un package Les interactions entre acteurs Formation UML alphorm.com™©
  • 254. 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™©
  • 255. La syntaxe du diagramme de séquences • Le diagramme de séquences Ligne de vie Message Cadres LOOP Formation UML alphorm.com™©
  • 256. 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™©
  • 257. 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.com Blog : http://www.alphorm.com/blog Forum : http://www.alphorm.com/forum Fabien Brissonneau Consultant, concepteur et formateur Objets Logiciels Contact : fabien.brissonneau@gmail.com
  • 258. Plan • Qu’est-ce qu’un objet métier ? • Les « object flow » • Mise en œuvre dans l’exemple Formation UML alphorm.com™©
  • 259. 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™©
  • 260. Les « object flow » • Notation des flux d’objets dans les diagrammes d’activité • Organisation dans le diagramme Formation UML alphorm.com™©
  • 261. 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™©
  • 262. 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™©
  • 263. 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.com Blog : http://www.alphorm.com/blog Forum : http://www.alphorm.com/forum Fabien Brissonneau Consultant, concepteur et formateur Objets Logiciels Contact : fabien.brissonneau@gmail.com
  • 264. Plan • Classes et objets • Les composantes du diagramme de classes • Etude de cas Formation UML alphorm.com™©
  • 265. 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
  • 266. Les composantes du diagramme de classes • Classes Nom • Attributs Nom, Type Associations Formation UML alphorm.com™© • Associations Nom Multiplicités
  • 267. Etude de cas • Classes à représenter Facture CB Compte client Livre Formation UML alphorm.com™© Livre Vente
  • 268. 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™©
  • 269. Le diagramme de L’expression de besoins UML pour la maîtrise d’ouvrage Formation UML alphorm.com™© Le diagramme de cas d’utilisation 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 : fabien.brissonneau@gmail.com
  • 270. 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™©
  • 271. 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™©
  • 272. 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™©
  • 273. Présentation de l’étude de cas Thè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.
  • 274. Présentation de l’étude de cas Voir 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™©
  • 275. 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
  • 276. 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™©
  • 277. Le diagramme d’activité L’expression de besoins UML pour la maîtrise d’ouvrage Formation UML alphorm.com™© Le diagramme d’activité 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 : fabien.brissonneau@gmail.com
  • 278. Plan • Choisir un cas d’utilisation • Organiser le projet • Le diagramme d’activité Formation UML alphorm.com™©
  • 279. 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
  • 280. 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™©
  • 281. Le diagramme d’activité Action, activité, transition Décision, merge Fork, Join Partition Evénement Formation UML alphorm.com™© Evénement Région interruptible
  • 282. 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™©
  • 283. Le diagramme de L’expression de besoins UML pour la maîtrise d’ouvrage Formation UML alphorm.com™© Le diagramme de séquences 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 : fabien.brissonneau@gmail.com
  • 284. Plan • Choisir un cas d’utilisation • Organiser le projet • Le diagramme de séquences Formation UML alphorm.com™©
  • 285. 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
  • 286. 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™©
  • 287. 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
  • 288. Ce qu’on a couvert • Pourquoi créer un diagramme de séquences • La syntaxe de base Formation UML alphorm.com™©
  • 289. Le modèle du domaine Découverte des classes UML pour l’analyse Formation UML alphorm.com™© Le modèle du domaine 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 : fabien.brissonneau@gmail.com
  • 290. Plan • Le diagramme de classe • Les étapes du processus dans un outil • La création du modèle du domaine Formation UML alphorm.com™©
  • 291. Le diagramme de classe • Classe • Attribut • Association Formation UML alphorm.com™©
  • 292. Les étapes du processus • Métier • Besoins • Analyse • Conception Formation UML alphorm.com™© • Codage
  • 293. 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
  • 294. Ce qu’on a couvert • Définition du modèle du domaine • La syntaxe essentielle du diagramme de classe Formation UML alphorm.com™©
  • 295. Partir du cas d’utilisation Découverte des classes UML pour l’analyse Formation UML alphorm.com™© Partir du cas d’utilisation 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 : fabien.brissonneau@gmail.com
  • 296. Plan • Lier cas d’utilisation et classes • Exemple avec l’étude de cas Formation UML alphorm.com™©
  • 297. 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™©
  • 298. Etude de cas • Pour chaque cas d’utilisation Créer les classes participantes • Regrouper les classes Eviter doublons et synonymes Formation UML alphorm.com™©
  • 299. Ce qu’on a couvert • La liaison entre fonctions et orienté objet • Constituer les classes d’analyse du projet Formation UML alphorm.com™©
  • 300. Diagramme de séquence Découverte des classes UML pour l’analyse Formation UML alphorm.com™© Diagramme de séquence d’analyse 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 : fabien.brissonneau@gmail.com
  • 301. • 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™©
  • 302. 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™©
  • 303. 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™©
  • 304. 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™©
  • 305. 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™©
  • 306. La notation de base du Les état des objets UML pour l’analyse Formation UML alphorm.com™© La notation de base du diagramme d’états 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 : fabien.brissonneau@gmail.com
  • 307. • Quand utiliser un diagramme d’état ? • Notation de base • Etude de cas Plan Formation UML alphorm.com™©
  • 308. 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™©
  • 309. Notation de base • Initial, final • Etat, transition • Evénement, condition, effet Formation UML alphorm.com™©
  • 310. Etude de cas • Choisir un objet dont les états sont importants • Créer le diagramme d’état dans le projet Formation UML alphorm.com™©
  • 311. 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™©
  • 312. La notation avancée du Les état des objets UML pour l’analyse Formation UML alphorm.com™© La notation avancée du diagramme d’états 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 : fabien.brissonneau@gmail.com
  • 313. • La notation avancée du diagramme • Etude de cas Plan Formation UML alphorm.com™©
  • 314. La notation avancée • Etats composites • Transition interne • Activités, effets entrée et sortie • Evénements prédéfinis Formation UML alphorm.com™©
  • 315. 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™©
  • 316. Etude de cas • Améliorer le diagramme précédent • Evénements prédéfinis Formation UML alphorm.com™©
  • 317. 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
  • 318. La notation pour la Construire le modèle de conception UML pour la conception Formation UML alphorm.com™© La notation pour la conception 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 : fabien.brissonneau@gmail.com
  • 319. • Pourquoi et quand mettre des détails dans la notation ? • Notations supplémentaires • Etude de cas Plan Formation UML alphorm.com™©
  • 320. 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™©
  • 321. 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™©
  • 322. Etude de cas • Reprendre un modèle pour le compléter Visibilités Types utilisés Méthodes … Formation UML alphorm.com™© …
  • 323. 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™©
  • 324. Passer de l’analyse à la Construire le modèle de conception UML pour la conception Formation UML alphorm.com™© Passer de l’analyse à la conception 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 : fabien.brissonneau@gmail.com
  • 325. • D’où partir ? • La traçabilité entre les modèles • Etude de cas Plan Formation UML alphorm.com™©
  • 326. D’où partir ? • Modèle d’analyse • Architecture technique • Influence du langage de programmation Formation UML alphorm.com™©
  • 327. 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™©
  • 328. Etude de cas • Exemple site web • Base de données • Java Formation UML alphorm.com™©
  • 329. Ce qu’on a couvert • D’où partir ? • La traçabilité entre les modèles • Etude de cas Formation UML alphorm.com™©
  • 330. Traduire le diagramme Concevoir et coder UML pour la conception Formation UML alphorm.com™© Traduire le diagramme de classe en code 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 : fabien.brissonneau@gmail.com
  • 331. • Traduire classe, attribut et méthode • Traduire les associations • Etude de cas Plan Formation UML alphorm.com™©
  • 332. 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™©
  • 333. Traduire les associations • Associations multiplicité 1 max • Associations multiplicité supérieure à 1 Formation UML alphorm.com™©
  • 334. 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™©
  • 335. 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™©
  • 336. Traduire le diagramme Concevoir et coder UML pour la conception Formation UML alphorm.com™© Traduire le diagramme de séquences en code 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 : fabien.brissonneau@gmail.com
  • 337. • Messages / méthodes • Traduire les envois de messages • Etude de cas Plan Formation UML alphorm.com™©
  • 338. 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™©
  • 339. 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™©
  • 340. 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™©
  • 341. Ce qu’on a couvert • Messages / méthodes • Traduire les envois de messages • Et application à l’étude de cas Formation UML alphorm.com™©
  • 342. Reporter la complexité Concevoir et coder UML pour la conception Formation UML alphorm.com™© Reporter la complexité sur le diagramme de classes 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 : fabien.brissonneau@gmail.com
  • 343. • Pourquoi éviter la complexité dynamique • Un mécanisme de base de l’orienté objet : le polymorphisme • Etude de cas Plan Formation UML alphorm.com™©
  • 344. 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é
  • 345. 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™©
  • 346. Exemple • Cas du système de fichier • Fichier, Répertoire, Lien • Imaginer un traitement sur le répertoire … Formation UML alphorm.com™©
  • 347. 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™©
  • 348. Conclusion Formation UML alphorm.com™© 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 : fabien.brissonneau@gmail.com
  • 349. Plan • UML pour quoi faire • Ce que l’on a couvert • Pour aller plus loin … Formation UML alphorm.com™©
  • 350. 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.
  • 351. 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
  • 352. Pour aller plus loin • Le choix d’un outil … • Le temps de l’apprentissage … • La conception objet … Formation UML alphorm.com™©
  • 353. Il n’y a plus qu’à … Merci ! Formation UML alphorm.com™© Merci !