Vous êtes sur la page 1sur 69

lments dUML

pour le projet (Unified Modeling Language)

Mr TALL

UML

PLAN
1. 2. 3. 4. 5. 6. 7. Introduction Prliminaires Les rgles UML Les diagrammes UML Outils de modlisation UML Ltude pralable avec UML Conclusion

Mr TALL

UML

1- Introduction
UML: langage de modlisation Mta-modle UML
dfinit la structure des modles UML permet la description du modle concern par lapplication. une notation UML avec des lments de la notation extensibles condition den dfinir la smantique

Construction de modles objets ou autres Utilisation de la notation graphique


une solution visuelle limite les ambiguts indpendance par rapport aux langages

Mr TALL

UML

Exemple
-> mtamodle -> modle -> Classe, Attribut, Opration -> Fournisseur Identification, nomFournisseur, adresseFournisseur commander() -> Dupont 40222 , ChipsAndChips , 13 rue Parmentier commander(12005A,13)

-> objet

Mr TALL

UML

2- Prliminaires
Les origines dUML La dmarche de conception et danalyse UP: Processus unifi

Mr TALL

UML

Origines dUML
Issu en 1996 de la pratique industrielle et de la modlisation des systmes logiciels. Unification des mthodes objets de J-B-R Ivar Jacobson (OOSE) Grady Booch (BOOCH'93) , James Rumbaugh (OMT) et Normalisation OMG en 1997. En 2007: UML 2.1.2 Mthodes Fonctionnelles : annes 60 Inspire de larchitecture des ordinateurs tudes des fonctions en sparant les donnes du code. Objets : annes 80 Modlisation objet avec composition et dcomposition des objets ayant des proprits et des comportements Mthodes qui couvrent le cycle de vie dun logiciel. UML : de nouvelles techniques sans rejeter les mthodes existantes
Mr TALL UML 6

Dmarche de conception et danalyse


Analyse du pb: processus unifi UP
guide par les besoins des utilisateurs du systme centre sur l'architecture logicielle itrative et incrmentale

Utilisation dun langage de modlisation UML


permet d'amliorer progressivement les mthodes de travail, prserve les modes de fonctionnement, bote outils

Litration peut se faire toutes les phases


tude pralable construction tests et mise au point

Mr TALL

UML

Processus unifi
Langage de modlisation UML + Processus unifi UP
UP: Processus de dveloppement propos par J-B-R Processus: Recensement des cas dutilisation Construction de larchitecture du systme ds le dbut avec Principe ditrations et incrmentations valuation des risques toutes les tapes

on part des cas dutilisations connus, on construit un premier modle darchitecture; on complte et affine par itrations et incrmentations et on value par tape les risques pour faire les meilleurs choix
Mr TALL UML 8

Les utilisateurs dcrivent les cas dutilisation


Recensement des besoins Description des composants ou objets Description des modes opratoires Recensement des contraintes Interactions entre les besoins et les contraintes Construction dune architecture du systme en adquation

Progression de la construction en compltant et affinant ltude


Ajouts, complments, dtails des cas dutilisation Description plus dtaille des composants Ajustement de larchitecture

Utilisation de maquettes et prototypes

Mr TALL

UML

Evaluation permanente du systme en terme de bon choix : le bon produit, une bonne construction, le bon prix, les bonnes performances.
volution Amlioration Validation ou rejet des solutions Objectif: minimiser les risques au fur et mesure de la spirale de dveloppement

Mr TALL

UML

10

Phases du processus UP:


tude dopportunit Mesures des risques Dfinitions des limites Construction dune maquette des premiers cas dutilisation Dcision Ralisation Premire version Proposition darchitecture, dveloppements, tests Rentabilit: dcision Puis processus incrmental et itratif jusquau produit final Mise en exploitation

Mr TALL

UML

11

Les activits dans les phases:


Expression des besoins Analyse Conception Implmentation Tests

les activits sont celles des mthodes connues mais ces activits se droulent selon les phases UP RUP: Rational Unified Process. Version UP de la socit Rational Software

Mr TALL

UML

12

3- les rgles UML


Dveloppement orient objet UML langage de modlisation
Rgles dcriture et de reprsentation graphiques normalises Neuf diagrammes (UML 2.1.2: 13 diagrammes )

Mta-modle des concepts et notations des diagrammes


Construire les outils de modlisation selon les rgles UML et adapts ltude Rgles Strotypes; Notes; Contraintes; rgles dcriture des noms et expressions: nom, tiquette valeur dun composant; Paquetage.

Mr TALL

UML

13

Strotypes
Adaptation du modle aux lments de lapplication Nouveau type dlment dfini depuis un type du modle Application principale aux classes Distinction dutilisation entre guillemets Ex: classe Client strotype clientA

Notes
Commentaires dun lment UML

Client
clientA strotype

Pour tous commentaire

Mr TALL

UML

14

Contrainte Note smantique pour un lment criture entre { } Aussi langage OCL Objet Constraint Language dUML

criture des noms et des expressions Nom: identifiant dun lment, chane de caractres Expression: valeur
noms

Elve

assister

Cours

NomEleve Cycle.UE
expressions

{un lve doit tre Inscrit}


contrainte
Mr TALL UML

After (7 minutes) Date = 7 juillet 2005

15

Paquetage Dcomposition du systme en paquetages Ensemble logique dlments du modle Nommage du paquetage Relations entre paquetages

Elves

U.E

Profs

Mr TALL

UML

16

4- Les principaux diagrammes UML


Diagramme des cas dutilisation
Besoins des utilisateurs

Diagramme de classes
Description statique des donnes et des traitements

Diagrammes dobjets
Instances des classes

Diagramme tats-transitions
tats des objets selon les vnements

Diagramme dactivits
Vue des enchanements des activits dun cas dutilisation ou dune opration

Mr TALL

UML

17

Diagramme de squence
Scnario dun cas dutilisation : chronologie des oprations

Diagramme de collaboration
Scnario dun cas dutilisation: activits des objets et des messages changs

Diagramme des composants


Reprsentation des composants logiciels dun systme

Diagramme de dploiement
Description de larchitecture technique du systme

Mr TALL

UML

18

4.1. Diagramme de classe et dobjets


les objets sont identifis dans le systme et portent un nom Les classes sont cres en regroupant les objets ayant les mmes proprits, mmes comportements Un objet est une instance dune classe Reprsentation UML dune classe
Nom classe Attributs Oprations autres Elve

Elve
NElve: entier

NomElve: car Adresse: car


Inscrire()

Mr TALL

UML

19

Reprsentation UML dun objet

Nom objet : classe Valeur attrib 1 Valeur attrib 2 Valeur attrib 3

Elev2005001: Elve 2005001 durand 1 rue de Paris

Elev2005001 2005001 durand 1 rue de Paris

: Elve

2005001 durand 1 rue de Paris

Mr TALL

UML

20

Association entre classes


Liens entre les instances Rle de lassociation et son sens Cardinalit des instances associes

Nom classe X

Nom association

Nom classe Y

1..2

A une instance X correspond 1 2 instances de Y A une instance Y correspond 0 n instances de X

Mr TALL

UML

21

Agrgation
Association entre une classe de type ensemble avec plusieurs classes de type lments
Salle

Chaises

1..2 tableau

quipement

Mr TALL

UML

22

Composition
Agrgation avec une contrainte de dure de vie La suppression de la classe compos implique la suppression des classes composant

lve

lve

N lve liste UE

1 N lve

1..* liste UE

1 dossier

dossier

Mr TALL

UML

23

Qualification dune association


Smantique dune association entre deux classes Restriction dune association

Notes UE

N lve Nomlve

contenir

lve

La liste des notes dune UE contient le n des lves et leur nom

Mr TALL

UML

24

Gnralisation et hritage simple


Gnralisation: cration dune superclasse partir de classes Hritage: cration de sous classes partir dune classe
hritage

lve

lve HTT

lve FOD
gnralisation

Mr TALL

UML

25

Hritage avec recouvrement


Chevauchement : deux sous classes avec des instances identiques Disjoint : les instances dune sous classe ne peuvent tre dans une autre sous classe Complte : la gnralisation ne peut tre tendue Incomplte : la gnralisation peut tre tendue
lve

lve HTT

{chevauchement}

lve FOD

Mr TALL

UML

26

Extension et restriction de classe


Extension: ajout de proprits dans une sous classe Restriction: masquage de proprits dans une sous classe

lve
nlve nom adresse

extension lve salari nlve nom adresse entreprise

restriction

lve prospect
. nom adresse

Mr TALL

UML

27

Hritage multiple
Une classe hrite de deux classes parentes
lve

lve externe

lve interne

salari

boursier

employ

Mr TALL

UML

28

4.2. Diagramme des cas dutilisation


Description de linteraction entre lutilisateur et le systme Recensement des besoins des utilisateurs Descriptions textuelles + diagrammes de tous les cas dutilisation

systme inscription inscrire lve Cas dun lve qui sinscrit Plusieurs acteurs Plusieurs cas lve

inscription

scolarit

rgie

Mr TALL

UML

29

Description textuelle
Transcription textuelle de la description des cas dutilisation Complments aux diagrammes Avantages:
La rdaction permet de corriger le diagramme Le diagramme oblige rdiger chaque cas

cas

rsum
acteur primaire

Inscription dun lve Procdure dinscription dun lve jusqu la dlivrance de sa carte Llve Vrification pralable des conditions dinscription Dossier dinscription, paiement, dlivrance carte lve 1. 2. 3. 4. llve prsente sa demande Saisie des UE Calcul du cot

acteur secondaire La scolarit, la rgie pr-conditions rsultats

description

exceptions
Mr TALL

Pas de dlivrance de carte si 1 UE agrment


UML 30

Relations entre cas dutilisation


Rutilisation de cas en utilisant les relations dinclusion include dextension extend de gnralisation Inclusion Une instance contient le comportement dune autre instance

include inscription

paiement

include

carte

Mr TALL

UML

31

Extension
Le comportement dune instance peut tre tendue par le comportement dune autre instance Point dextension mentionn dans le cas dutilisation

include
1 1

Inscription UE
lve en informatique

paiement

include extend
Dlivrance carte

Inscription CRI

Mr TALL

UML

32

4.3. Diagramme tats-transitions


Montre les tats simples, les transitions et les tats composites imbriqus Ltat dun objet un instant t peut chang linstant t+1 Le passage dun tat un autre est une transition La condition de passage est appele garde Etat-Transition
Transition [condition] tat 1 tat 2

lve prospect

inscription [paiement ok]

lve inscrit

Mr TALL

UML

33

On peut prciser une action ou activit la transition


Transition [condition]/ action tat 1 tat 2

Inscription [paiement ok]/ dpt dossier


lve prospect

lve inscrit

Mr TALL

UML

34

Suite dtats et de transitions avec Dbut: Fin: Ti : transition Ci : condition Ai : action

T1[C1]/A1
tat 1 tat 2

T2[C2]/A2

tat 3

T4[C4]/A4

tat 4

Mr TALL

UML

35

Exemple dtats-transitions

Personne Rencontre conseiller

Etat

Action
Transition

Projet formation

En cours dinscription Remplit un dossier

Dossier dpos
Inscrit Paiement ok

Mr TALL

UML

36

Exemple de diagramme machine tats

ancien lve lve Dossier inscription

nouvel lve plan formation

Mr TALL

UML

37

4.4. Diagramme dactivits


Description des activits dun cas dutilisation ou dune opration Diagramme de type : tat-action Excution dactivits diffrentes selon le rsultat de lactivit prcdente Excution synchronise : plusieurs activits en // avant de passer lactivit suivante

Mr TALL

UML

38

Exemple diagramme dactivits


Transition avec condition transition garde
[refus]

Dpt dossier Vrification


[accept] [ complter] [retour]

Paiement

Dossier renvoy
[forfait entreprise] [individuel]

convention

Carte dlivre

Transition sans condition transition automatique

Mr TALL

UML

39

Exemple synchronisation

Ouvrir inscription

Inscrire UE

Modifier une inscription

Inscrire UE et modifier lve sont deux actions //

Mr TALL

UML

40

4.5. Diagramme de squence


Interactions entre objets et chronologie des changes entre ces objets Base: les cas dutilisation change de messages pour dclencher une opration Mention des objets crs ou dtruits lors des excutions Spcification des contraintes de temps : dure Messages synchrones : Messages asynchrones :

Mr TALL

UML

41

Exemple diagramme de squence

Mr TALL

UML

42

Exemple diagramme de squence : dure


Convention facture rglement

signature

(fin semestre)

Paiement ok

Mr TALL

UML

43

4.6. Diagramme de collaboration


Relations entre les objets et messages changs Diverses informations mentionnes sur le diagramme synchronisation : les pralables lenvoi du message; n du message : ordre chronologique du message; condition du dclenchement de lenvoi; type denvoi: squentiel ou parallle; rsultat : valeur retourne

Exemples: [activit professionnelle=Ok] 1: tablir plan()


Un lve ne peut sinscrire que si il a une activit professionnelle

2 / || [j=1n]

3 : inscrireUE()

Le message 3 ne sera envoy quaprs le message 2 Envoi en // de n messages

Mr TALL

UML

44

[orientation] 1: tablir plan

plan de formation
3: crer dossier

2 : double du plan

devis
5 : remise 4 : calculer prix()

dossier

lve

9 : remise carte()

Carte lve

8: dlivrer carte()
7 : maj paiement ()

6 : payer ()

rgisseur

Mr TALL

UML

45

4.7. Diagramme de composants


Description des composants du systme Dcomposition en sous-systme, programme, processus, tche, module

Systme Scolarit Inscriptions Examens Systme et sous-systmes

Mr TALL

UML

46

Diagramme dun module


Dcomposition dun sous systme en modules

Mr TALL

UML

47

4.8. Diagramme de dploiement


Description de larchitecture physique des composants matriels du systme Un nud = un composant matriel = un cube Lien entre les cubes = communication entre les nuds Classes de composants = noms des classes Objets de composants = noms souligns des instances Deux types de noeuds: Processeur Priphrique au processeur

Mr TALL

UML

48

Diagramme de dploiement dun systme dinscription

Poste scolarit

Intranet

Serveur Scolarit

TCP/IP

BD scolarit

Mr TALL

UML

49

5- Les outils de modlisation UML


Plusieurs logiciels, citons
Rational Rose, IBM Together, Borland Rhapsody Modeler, I-Logix Win Design Visio, Microsoft Poseidon UML , Gentleware PowerAMC/PowerDesigner , Sybase Plugin Omondo , Eclipse ArgoUML Visual Paradigm Et tous les autres.

Mr TALL

UML

50

6- Etude pralable avec UML


Lavant projet Inscription
objectif cot rentabilit abandon ou poursuite

Commenons ltude pralable


Recensement des cas dutilisation Recensement des termes, des concepts, des objets: diagrammes de classes Les processus et leurs acteurs : diagrammes dutilisation et dinteraction (squence et collaboration)

Mr TALL

UML

51

Construction du modle
Le modle gnral : ensemble des diagrammes
Cohrence: dtection des incohrences, incompltudes Ordre prcis dexcution

volution du modle par suite ditrations et incrmentations des cas dutilisations Avant de passer la phase danalyse informatique, les besoins doivent tre tous recenss

Dveloppement en spirale

Mr TALL

UML

52

Cas dutilisation
Cas dutilisation:
Les scenari dutilisation du systme inscription par les utilisateurs Description de lutilisation Textuelle : phrases ordonnes des oprations Graphique: diagramme denchanement des oprations Tableau: une ligne/ rubrique caractrisant le cas

Elments dcrits:
Les acteurs Le scnario Les pr-conditions et garanties Les exceptions, les extensions, les utilisations dautres cas

Mr TALL

UML

53

Description textuelle: cas dutilisation inscription


Lauditeur se prsente la scolarit avec son plan de formation lagent ouvre un dossier dinscription Lauditeur donne son identit et le mode de financement les sessions de formations sont saisies Les tarifs sont appliqus en fonction du mode de financement et des sessions inscrire 6. Un devis est tabli 7. Le rgisseur encaisse le montant selon le devis 8. La carte dauditeur est dite 1. 2. 3. 4. 5.

Mr TALL

UML

54

Alternative: Tiers payeur 6a. Un tiers payeur est identifi, une convention est tablie. 7a. Pas dencaissement. Retour de la convention signe. 8a. La carte dauditeur est dite 9a. Lagent comptable assure le recouvrement de la somme forfaitaire.

Mr TALL

UML

55

Description graphique: cas dutilisation inscription

Mr TALL

UML

56

Tableau: cas dutilisation inscription


Cas Dfinition Acteur principal Acteurs secondaires Inscription dun auditeur Inscription dun auditeur et dlivrance de la carte auditeur Agent scolarit, rgisseur

Pr conditions
Garanties Scnario

Plan de formation de lauditeur Base de loffre de formation et tarifs


Paiement et dition de la carte de lauditeur Plan de formation pour cration dossier auditeur, devis selon les tarifs, rglement auprs du rgisseur et dition carte de lauditeur Le financement est assur par un tiers payeur. Une convention est tablie. Aprs signature, la carte est dlivre. Le recouvrement est suivi par lagent comptable.
UML 57

Exception

Mr TALL

Diagramme de classe
Description gnrale des types dobjets et leurs relations Avec
leurs attributs principaux les oprations principales

Mr TALL

UML

58

Diagramme de classe: cas inscription

Mr TALL

UML

59

Diagramme dinteraction
Description dun comportement donn dobjets Un diagramme dinteraction = un cas dutilisation Transmission des messages entre objets Deux diagrammes dinteraction
De squence De collaboration

Mr TALL

UML

60

Diagramme de squence: cas inscription

Mr TALL

UML

61

Diagramme de collaboration: cas inscription

Mr TALL

UML

62

Diagramme Etats-Transitions
Comportement dun systme Etats possibles dun objet Changements des tats / vnements: transitions

Mr TALL

UML

63

Diagramme tats-transitions: cas inscription

Mr TALL

UML

64

Diagramme dactivits
Organisation des activits:
Activits en squence Activits parallles Activits conditionnelles

Une activit peut tre composite Quand?


Analyse cas dutilisation, modlisation mtier, Algorithme complexe

Mr TALL

UML

65

Diagramme dactivits: cas inscription

Mr TALL

UML

66

Diagramme de dploiement
On peut reprsenter larchitecture logicielle et matrielle du systme avec un diagramme de dploiement

Poste scolarit

Intranet

Serveur scol (inscription)

TCP/IP

BD scolarit (dossiers lves)

Mr TALL

UML

67

Les autres tapes de construction du systme


Informatisation du systme inscription
on introduit les composants informatiques on construit les modules on prcise les mthodes associes aux classes on intgre les contraintes techniques on propose un modle de donnes

Toutes les informations ont t recenses lors de ltude pralable. Il sagit de proposer un modle informatique pour le systme Inscription A chaque tape suivante on affine le systme en utilisant les concepts UML On utilise les diagrammes si ncessaires
Mr TALL UML 68

Conclusion
UML une aide toutes les tapes de conception du projet Avantages
Descriptions graphiques Vues diffrentes des tapes diffrentes Recoupement des descriptions Incohrences Incompltudes mises en vidence Adaptation facile aux mthodes Projet: un bon outil de dmarrage du projet

Sappend par la pratique

Mr TALL

UML

69