42
© Reproduction inter ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

Embed Size (px)

Citation preview

Page 1: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interditeALTRAN Nord – TI

Langage de Modélisation Objet UnifiéCours HEI 2009-2010

UML

Page 2: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

Sommaire

Le Concept Objet

Modéliser avec UML

Conceptes et principes

Les diagrammes

Page 3: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

Le Concept Objet

Qu’est ce- qu’un Objet ?

Un Objet possède:

• État : Valeurs d’un objets à un moment donné (attributs)

• Identité :attribut distinguant l’objet

• Comportement : compétences (actions réactions)

VOITURE

MarqueModèleCouleurSe déplacer()Démarrer()Arrêter()

Immatriculation

Exemple d’un objet (classe) voiture vu par son propriétaire

Page 4: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

Le Concept Objet

Exemple

Un objet MONTGOLFIERE

Attributs:•Altitude•Poids•Niveau de gaz

Opérations:•Monter•Descendre•Crever

Page 5: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

Le Concept Objet

Classe et instance

Un Objet est une Instance de Classe

VOITURE

MarqueModèleCouleurSe déplacer()Démarrer()Arrêter()

Immatriculation

MA VOITURE

FordFocusNoireSe déplacer()Démarrer()Arrêter()

4321 ABC 59LA VOITURE

DE MA FEMME

RenaultTwingoVerteSe déplacer()Démarrer()Arrêter()

6789 XY 59

Deux instanciations de la classe voiture

Page 6: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

UML

Présentation générale de UML

• Pourquoi Modéliser ?• Les terminologies UML• Utilisation de UML dans le cycle Projet

Page 7: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

Présentation de UML

Pourquoi modéliser ?

Modèle: abstraction de la réalité, pour :• Faciliter la compréhension du système étudié• Simuler le système étudié en vue d’en faciliter l’évolution

Nécessité d’un formalisme : UML• Langage de modélisation fondé sur les concepts orientés objets• UML n’est pas une méthodologie …

Page 8: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

Présentation de UML

• UML permet de définir et visualiser un modèle, à l’aide de diagrammes.

• Un diagramme UML est une représentation graphique, qui représente une perspective particulière du modèle.

• Chaque diagramme possède une structure et une sémantique précise.

• L’ensemble des diagrammes UML offrent une vue complète des aspects statiques et dynamiques du système.

Page 9: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

Présentation de UML

L’utilisation d’outils pour la modélisation:

• Faciliter la navigation entre les différentes vues

• Centraliser, organiser, partager, synchroniser et versionner (processus itératif) les diagrammes

• Faciliter l’abstraction par des filtres visuels

• Simplifier la production de documentation

• Génération de code et rétro-engineering

Page 10: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

Présentation de UML

Terminologie UML

RELATIONSRELATIONS

DépendanceAssociationGénéralisation

DIAGRAMMESDIAGRAMMES

De cas d’utilisationDe classesD’objetsDe séquenceDe collaborationD’états-transitionsD’activitésDe composantsDe déploiement

Page 11: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

Présentation de UML

Utilisation de UML dans le cycle projet :

Une démarche

• Itérative et incrémentale• Guidée par les besoins des utilisateurs finaux• Centrée sur l’architecture logicielle

…vers un Processus Unifié (RUP)

Page 12: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

Les Concepts UML

• Classe: attributs et opérations

• Associations et cardinalités

• Contraintes

Page 13: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

Les Concepts UML

Classes

• Les attributs sont typés• Les prototypes des

méthodes sont spécifiés• Les niveaux de visibilités

sont renseignés

VOITURE- Marque : string- Modèle : string- Couleur : entier

+ Se déplacer(départ : lieu; arrivée: lieu)- Démarrer()- Arrêter()

+ LireMarque(): string+ EcrireMarque( param_marque: string)

+ LireModele(): string+ EcrireModele( param_modele: string)

+ LireCouleur(): string+ EcrireCouleur( param_couleur: entier)

Page 14: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

Les Concepts UML

Les niveaux de visibilité :

• + : élément public• # : élément protégé• - : élément privé

Page 15: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

Les Concepts UML

Les associations• Association: relation entre classes décrivant un ensemble de

liens• Lien: connexion entre un ensemble d’objets. Un lien est une

instance d’association• Association N-aire: association entre n classes• Rôle : rôle joué par la classe dans une association• Cardinalité: nombre d’éléments dans un lien• Multiplicité: spécification des cardinalités d’une association

Page 16: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

Les Concepts UML

La multiplicité des associations (cardinalités)

• La multiplicité indique le nombre d’instances d’une classe qui peuvent être mises en relation avec une seule instance de la classe associée.

• Notations: min..max• Exemples:

• 1 : obligatoire• 0..1 : optionnel• 0..* ou * : plusieurs• 1..* : au moins 1• 1..5, 12 : entre 1 et 5, ou 12

Page 17: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

Exemple de multiplicités : Le mariage

MARI

HOMME

HOMME

EPOUSE

FEMME

FEMME

Est marié avec 11

0..1 0..1

mari épouse

A été marié avec

0..* 0..*

Rôles

Cardinalités

Les Concepts UML

Page 18: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

Les relations de dépendance :

• Relation d ’utilisation unidirectionnelle et d ’obsolescence (une modification de l ’élément dont on dépend peut nécessiter une mise à jour de l ’élément dépendant)

FenêtreGraphique EvènementSouris

Dépendance

Les Concepts UML

Page 19: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

La Navigation :

• Permet d’indiquer qu’une seule classe « connaît » l’autre

Electeur Candidat

Association à navigabilité restreinte

* 0..1vote

Les Concepts UML

Page 20: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

Les associations N-aire :• Association qui relie plus de 2 classes

PROFESSEUR

SALLE ETUDIANT

1

1 1..*

Symbole d’association (peut souvent être promu au rang de classe d’association)

Les Concepts UML

Page 21: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

Les classes d’association :

• Classe qui réalise la navigation entre les instances d ’autres classes• La classe d’association peut participer au modèle (on peut la spécialiser

par exemple)

PROFESSEUR

SALLE ETUDIANT11 1..*

Classe d ’associationCOURSJourHeureDebutDurée

Les Concepts UML

Page 22: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

Acteur et rôle

Un acteur :• est une entité externe (ressource humaine, machine) agissant sur le

système• consulte et modifie l’état du système

• Un acteur possède un rôle dans chaque cas d’utilisation sur lequel il intervient

Les Concepts UML

Page 23: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

Cas d’utilisation :

• Le cas d’utilisation (USE CASE) est un ensemble d’actions réalisées par le système, en réponse à une sollicitation d’un acteur.

• Le cas d’utilisation décrit plusieurs chemins d’exécution possibles.

Les Concepts UML

Page 24: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

Le scénario:

• Le scénario est une instance de cas d’utilisation.• Les scénario principaux décrivent les cas nominaux (chemin

« normal » d’exécution)• Les scénario secondaires décrivent les cas alternatifs (cas

exceptionnels ou cas d’erreur)• Les scénario

• Guident l’analyse et la conception du système• Justifient à posteriori les choix d’architecture• Servent de support pour organiser les campagnes de test

Les Concepts UML

Page 25: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

La Modélisation du comportement

Diagrammes de cas d'utilisation (use cases)Description des besoins

La modélisation des états

Diagrammes États-Transitions (automates) :Récupération du comportement dépendant de l’état

Diagrammes d’activitéSpécification de la logique comportementale

Les Diagrammes

Page 26: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

Acteur = entité externe agissant sur le système(être humain, machine, autre système ou sous-système )

l’acteur peut consulter et/ou modifier l ’état du système

Use case = séquence d ’actions réalisées par le système produisant un résultat observable à un acteur particulier

La Modélisation du Comportement

Page 27: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

Identifier les cas d’utilisation(« use cases »)

Les Use Cases permettent de reformuler les besoins et constituent un moyen de communication très efficace entre les utilisateurs et les équipes de développement

Un Use Case décrit le système du point de vue de son utilisation :

• Interactions entre le système et les acteurs• Réactions du système aux événements externes• Permet de développer un système orienté utilisateur

La Modélisation du Comportement

Page 28: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

Décrire les use casesNotation graphique

Nom du cas d’utilisation

Nom Acteur

Nom de l’interaction

L’ exécution du Use Case est contrôlée par des événements externes envoyés par les acteurs au système

La Modélisation du Comportement

Page 29: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

Décrire les use casesNotation graphique

Use case 1

Les Use Cases peuvent être organisés en « paquetages » (packages)

Use case 2

La Modélisation du Comportement

Page 30: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

Décrire les use casesDescription textuelle

SOMMAIRE D’IDENTIFICATION • Titre : nom (et numéro)• Auteur :• Date de mise à jour :• Résumé : description sommaire• Contexte d’utilisation : • Acteurs :

DESCRIPTION DES ENCHAINEMENTS• Pré-conditions :• Description enchaînement :• Post-conditions :

Besoins d’IHM (optionnel)Contraintes non fonctionnelles (optionnel)• Fréquence, volumétrie, concurrence, disponibilité, confidentialité, etc ...

La Modélisation du Comportement

Page 31: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

Client

distributeur de billets

Consulter solde compte

retirer de l'argent

éteindre / allumerle distributeur

ravitailler le coffre

technicien

le technicien demaintenance éteind ledistributeur avant de

ravitailler le coffre

on ne peut retirer del'argent , que dans la

limite du stock du coffredu distributeur

cas d'utilisation : objectif du système, motivé par un besoin d'un ouplusieurs acteurs.Par abus de langage, désigne aussi un système(c-à-d un groupe de cas d'utilisation)

note : documente unélément du modèle

acteur : package : regroupe des éléments de modélisationsuivant des critères purement logiques.représente ici le modèle conceptuel dusystème étudié

personne ou composant àl'origine d'une interactionavec le système

nature de l'interaction

Exemple:La Modélisation du Comportement

Page 32: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

La modélisation des états

Diagrammes États-Transitions (automates) :Récupération du comportement dépendant de l’état

Diagrammes d’activitéSpécification de la logique comportementale

Page 33: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

Diagrammes États-Transitions

NOTATION de base

TRANSITION = relation entre deux états dont le passage d’un état vers un autre est en général provoquée par un événement

État de départ (obligatoire)

État 1 État 2

État de fintransition

Événement [condition]

La Modélisation des états

Page 34: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

Diagrammes États-TransitionsNOTATION des états

État de départ (obligatoire)

État 1

État de fin

HSymbole spécial historique : mémorise le dernier sous-état actif d'un super-état, pour y revenir directement ultérieurement

État intermédiaire

État x

État y

Super-état : état qui englobe d’autres états et transitionsAfter (2s)

La Modélisation des états

Page 35: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

Diagrammes États-Transitions

Transition automatique (événement interne)• Soit quand l’activité associée à l’état source est terminée• Soit quand la condition de garde devient vraie

Transition conditionnelle

Etat1 Etat2

Etat3

[ condition]

[else]

La Modélisation des états

Page 36: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

Diagrammes États-TransitionsActions et activités

ACTION : opération inintérruptible déclenchée par un événement- lié à une transition notation : événement / action (exemple : il pleut / ouvrir parapluie)

- lié à un état entry / action   : action exécutée à l'entrée de l'état exit / action   : action exécutée à la sortie de l'état on événement / action : action exécutée à chaque fois que l'événement survient

ACTIVITE :opération interruptible dans la description de l’état do / activité   : activité récurrente ou significative, exécutée dans l'état

La Modélisation des états

Page 37: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

Diagrammes États-Transitions

Début

Initialisation

do: Cours initial

Ouvert

entry: Auditeur enregistréexit: Compteur incrémenté

Ajouter un auditeur/ Compteur = 0

Ajouter un auditeur[ Compteur < 5 ]

Annulé

do: Notifier les auditeurs enregistrés

Annuler

Fermé

do: Finaliser le cours

Annuler[ Compteur = 5 ]

Fin

Annuler

Exemple:

La Modélisation des états

Page 38: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

Diagrammes d’activitéCaractéristiques

• Le diagramme d’activité est une variante du diagramme d’état

• Les états représentent des activités• Les transitions sont des transitions automatiques• Le diagramme d’activité est plutôt rattaché à une

opération ou un use case qu’à une classe :• Il décrit l’algorithmique d’une opération: séquence

d’étapes, avec représentation des décisions et de la synchronisation des flots de contrôles

• Il est focalisé sur les traitements internes et non pas sur la réception d’évènements externes

La Modélisation des états

Page 39: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

Diagrammes d’activitéCouloirs d’activités

Pour mieux localiser les responsabilités des actionsClient Vendeur Stock

Commander

Régler

Prendre commande

Exécuter commande

Livrer commande

Commande[saisie]

Commande[livrée]

La Modélisation des états

Page 40: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

Liens Internet

UML:• http://uml.free.fr• http://www.rational.com/uml• http://www.omg.org • http://www.jeckle.de• http://www.cetus-links.org/oo_uml.html

Outils:• http://www.microsoft.com/france/visio/• http://www.objecteering.com

Modélisation objet:• http://objectsbydesign.com

Page 41: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interdite

Des questions

Page 42: © Reproduction interdite ALTRAN Nord – TI Langage de Modélisation Objet Unifié Cours HEI 2009-2010 UML

© Reproduction interditeALTRAN Nord – TI

Altran Nord / AdventecParvis de Rotterdam1606 Tour Lilleurope

Tél. : +33 (0)3 28 36 22 30Fax. : +33 (0)3 28 36 22 45