Génie Logiciel - Cours 5 - analyse

download Génie Logiciel - Cours 5 - analyse

If you can't read please download the document

Transcript of Génie Logiciel - Cours 5 - analyse

Cours gnie logiciel

Cours 5 :AnalyseCours IGL

cours 5analyse

1Mostefai Mohammed Amine [email protected] Sofiane [email protected]

Cours IGL, Copyright 2011, ESIApprhender lactivit danalyseSe familiariser avec les pratiques et les livrables de lanalyseUtiliser UML pour exprimer les rsultats de lanalyseDcouverte des diagrammes de classe, dactivit, de squence et dtatObjectifs du cours2Cours 5 AnalyseObjectifs du cours

Cours IGL, Copyright 2011, ESICours 5Analyse3Introduction au gnie logiciel

Cours IGL, Copyright 2011, ESI

Cours IGL, Copyright 2011, ESICours N 5Analyse4Cours iglSection 1 : Introduction

Cours IGL, Copyright 2011, ESI

Cours IGL, Copyright 2011, ESILanalyse et lexpression de besoins sont trs dpendantsIl y a une ambigut entre lanalyse et lexpression de besoinsLanalyse permet de clarifier les besoins dune manire dtailleIl y a une ambigut entre lanalyse et la conceptionLanalyse et la conception rpondent la question commentLanalyse se focalise sur laspect mtier des fonctionnalits tandis que la conception se focalise sur laspect techniqueDans UP, le gros de lanalyse se fait durant la phase danalyse de besoins et dlaboration

Section 1 - introduction5Cours 5 AnalyseLactivit danalyse

Cours IGL, Copyright 2011, ESIModle danalyseSection 1 - introduction6Cours 5 AnalyseLactivit danalyseLanalyseProduit

Interactions (aspect dynamique)Classes(Vocabulaire, aspect statique)

Cours IGL, Copyright 2011, ESILanalyse produit un modle appel modle danalyseLe modle est compos de deux sous-modles : le vocabulaire et les interactionsLe vocabulaire dsigne les concepts du domaine. Il concerne tous les acteurs et entits manipules par ou dans le systmesLe vocabulaire ne concerne pas uniquement les concepts mais aussi les relations entre conceptsLes interactions reprsentent les activits impliquant plusieurs entits ou acteurs (du vocabulaire) afin de raliser un objectif mtier prcis. Gnralement, les interactions dtaillent les cas dutilisation.Section 1 - introduction7Cours 5 AnalyseLactivit danalyse

Cours IGL, Copyright 2011, ESI lESI, pour effectuer un stage, ltudiant doit chercher un encadreur interne ou dans une entreprise externe et un sujet raliser. Une fois le sujet trouv, ltudiant le dpose au niveau du service des stages. Ce dernier soccupe de la validation du sujet en faisant appel un enseignant de lESI.Section 1 - introduction8Cours 5 AnalyseLactivit danalyse - Exemple

Cours IGL, Copyright 2011, ESILe vocabulaire devra contenir les concepts suivants : enseignant, tudiant, encadreur, entreprise, sujet, service de stage et stageIl y a plusieurs interactions souligner : linteraction de recherche de sujet qui implique ltudiant, lentreprise, le sujet et lencadreur. Linteraction de validation qui implique ltudiant, le service de stages et lenseignant.Section 1 - introduction9Cours 5 AnalyseLactivit danalyse - Exemple

Cours IGL, Copyright 2011, ESISe limiter aux concepts mtier, sloigner des considrations techniquesLe langage du modle danalyse utilise le mme langage que le mtierLe modle capture une vision globale sur un concept ou un processus, ne pas aller trop dans le dtailLe modle doit toujours tre comprhensible et utile au clientPlus le modle est simple, plus il est meilleurSection 1 - introduction10Cours 5 AnalyseConstruire le modle danalyse - Rgles

Cours IGL, Copyright 2011, ESILe vocabulaire et les interactions peuvent tre formaliss de plusieurs manire (par exemple, en langage naturel)UML est un excellent moyen de formaliser le modle danalyseLe diagramme de classes et le diagramme dobjets permettent de formaliser le vocabulaireLes diagrammes dinteraction peuvent formaliser les interactionsSection 1 - introduction11Cours 5 AnalyseFormalisation du modle danalyse

Cours IGL, Copyright 2011, ESICours N 5Analyse12Cours iglDbat (05 Mns)

Cours IGL, Copyright 2011, ESI

Cours IGL, Copyright 2011, ESICours N 5Analyse13Cours iglSection 2 : Objets et classes

Cours IGL, Copyright 2011, ESI

Cours IGL, Copyright 2011, ESISection 2 objets et classes14Cours 5 AnalyseLobjet

Cours IGL, Copyright 2011, ESIRumbaugh dfinit lobjet comme tant une entit discrte ayant une limite bien dfinie qui possde un tat et un comportementUn objet reprsente une entit du monde relLtat de lobjet est lensemble des valeurs de ses attributsLe comportement dun objet est reprsent par les oprations quil peut effectuer. Souvent les oprations conduisent un changement de ltat dun objetLobjet a un identifiant unique qui permet de le distinguer des autres objets.Section 2 objets et classes15Cours 5 AnalyseLobjet

Cours IGL, Copyright 2011, ESISection 2 objets et classes16Cours 5 AnalyseLobjet

EtatComportementNumro de srie (Identifiant)MarqueModleAllumeMode (Photo / Vido)Connecte un ordinateurListe des photos en mmoireCapacitPhoto en coursAllumer()Eteindre()Connecter()Filmer()PrendreUnePhoto()

Cours IGL, Copyright 2011, ESILe diagramme qui est utilis pour la reprsentation des objets est le diagramme dobjetsSection 2 objets et classes17Cours 5 AnalyseNotation UML

Cours IGL, Copyright 2011, ESISection 2 objets et classes18Cours 5 AnalyseNotation UML des objets

Nom de linstanceNom de la classeAttributs

Cours IGL, Copyright 2011, ESILes noms sont crits en soulignLes noms des objets commencent par une minuscule. Si cest un nom compos, le dbut de chaque mot suivant commence par une majuscule. Par exemple : compte11256:Compte ou clientFavori:Client. Le symbole : spare le nom de linstance du nom de sa classe.Le nom de lobjet peut tre anonyme (ne comporte que le nom de la classe. Par exemple : :Compte ou :Client.Lobjet peut ne pas avoir de classe : par exemple amine ou compteTest.Section 2 objets et classes19Cours 5 AnalyseNotation UML des objets

Cours IGL, Copyright 2011, ESIUn lien lie deux instances entre objetsLobjet est une instance dune classe et le lien est une instance dune association Section 2 objets et classes20Cours 5 AnalyseNotation UML des objets - Liens

Cours IGL, Copyright 2011, ESISection 2 objets et classes21Cours 5 AnalyseNotation UML des objets - Liens

ObjetsLien

Cours IGL, Copyright 2011, ESISection 2 objets et classes22Cours 5 AnalyseNotation UML des objets - Exemple

Cours IGL, Copyright 2011, ESIUn diagramme dobjets prsente des objets et leurs relations un instant TLe diagramme dobjets est idal pour donner des exemples sur des situations particuliresLes liens bidirectionnels entre A B quand A et B senvoient des messagesUn lien unidirectionnel entre A vers B indique que A peut envoyer un message vers B mais pas linverseSection 2 objets et classes23Cours 5 AnalyseObjets Notation UML - Diagrammes

Cours IGL, Copyright 2011, ESISection 2 objets et classes24Cours 5 AnalyseObjets Notation UML - DiagrammesEXEMPLE

Cours IGL, Copyright 2011, ESI

Section 2 objets et classes25Cours 5 AnalyseObjets Notation UML - DiagrammesLien BidiectionnelRleDiagrammeNom du diagrammeLien Unidirectionnel

Cours IGL, Copyright 2011, ESILes diagrammes dobjets sont utiliss pour donner des exemples sur des situations complexes mettant en relation plusieurs concepts

Les diagrammes dobjet sont facultatifs et souvent les diagrammes de classes sont suffisants pour dcrire le domaine.Section 2 objets et classes26Cours 5 AnalyseDiagramme dobjet Quand lutiliser ?

Cours IGL, Copyright 2011, ESIRumbaugh dfinit la classe comme tant un descripteur dun ensemble dobjets qui partagent les mmes attributs, mthodes, relations et comportementLa classe est le modle dun ensemble dobjets similairesDans lexemple prcdent : Mostefai et Azouaou sont deux instances de la classe EnseignantUn objet appartient une seule classeLa classe dfinit la structure dun objet (aspect statique) , son comportement (aspect dynamique) et ses relationsSection 2 objets et classes27Cours 5 AnalyseLes classes

Cours IGL, Copyright 2011, ESIRumbaugh dfinit la classe comme tant un descripteur dun ensemble dobjets qui partagent les mmes attributs, mthodes, relations et comportementLa classe est le modle dun ensemble dobjets similairesDans lexemple prcdent : Mostefai et Azouaou sont deux instances de la classe EnseignantUn objet appartient une seule classeLa classe dfinit la structure dun objet (aspect statique) , son comportement (aspect dynamique) et ses relationsSection 2 objets et classes28Cours 5 AnalyseLes classes

Cours IGL, Copyright 2011, ESI

Section 2 objets et classes29Cours 5 AnalyseModlisation oriente objet

Comment classifier ces animaux ?

Cours IGL, Copyright 2011, ESICe nest pas facile davoir une conception objet du monde relLes classes rsultantes proviennent du point de vue de travailLes classes de lexemples prcdent peuvent tre : (Animal) ou (AnimalTerrestre / AnimalMarin) ou (AnimalDomestique / AnimalSauvage) ou (AnimalComestible / AnimalNonComestible) ou (Poisson / Mammifire / Crustac )Section 2 objets et classes30Cours 5 AnalyseModlisation oriente objet

Cours IGL, Copyright 2011, ESILobjet instancie la classeUML dfinit linstanciation comme une relation de dpendance avec le strotype instantiateSection 2 objets et classes31Cours 5 AnalyseClasses et objets

Cours IGL, Copyright 2011, ESISection 2 objets et classes32Cours 5 AnalyseClasses et objets

Cours IGL, Copyright 2011, ESI

Section 2 objets et classes33Cours 5 AnalyseClasses Notation UMLStrotypeNom de la classeAttributsOprationsMtadonnes

Cours IGL, Copyright 2011, ESIAttributs minuscules33

De prfrence, utiliser la convention UpperCamelCase. Le nom de classe est en minuscules et la premire lettre en majuscules. Si le nom de la classe est composite, le nom de chaque mot composant est en minuscule et la premire lettre en majuscule. Par exemple : Agent, Compte, LigneFacture, MandatPostalValide.Eviter les abbrvitiations : par exemple utiliser FactureValideDetaillee au lieu de FactureVD.Ne pas utiliser des noms verbaux car les classes reprsentent des choses.Section 2 objets et classes34Cours 5 AnalyseClasses Notation UML - Nom

Cours IGL, Copyright 2011, ESISection 2 objets et classes35Cours 5 AnalyseClasses Notation UML - VisibilitLa visibilit sapplique aussi bien aux attributs quaux oprationsDurant la phase danalyse, la visibilit nest pas importanteLes langages de programmation peuvent avoir une interprtation diffrente de la visibilit

Cours IGL, Copyright 2011, ESISection 2 objets et classes36Cours 5 AnalyseClasses Notation UML - VisibilitLe tableau suivant liste les visibilits utilises dans UMLVisibilitNomDescription+Visibilit publiqueAccs depuis la mme classe et lextrieur de la classe-Visibilit priveAccs depuis la mme classe uniquement#Visibilit protgeAccs depuis la mme classe et les classes descendantes~Visibilit paquetAccs depuis la mme classe et toutes les classes appartenant au mme paquet

Cours IGL, Copyright 2011, ESISection 2 objets et classes37Cours 5 AnalyseClasses Notation UML - TypesLe type peut tre un type dfini par UML ou lun des types suivants : boolean, byte, char, double, float, int, long, short

Cours IGL, Copyright 2011, ESIVisibilit Nom_Attribut : type [multiplicit] = valeur_initialeSection 2 objets et classes38Cours 5 AnalyseClasses Notation UML - AttributsLes attributs sont formuls en utilisant la syntaxe suivante :

Cours IGL, Copyright 2011, ESISection 2 objets et classes39Cours 5 AnalyseClasses Notation UML - AttributsLe type peut tre un type dfini par UML ou lun des types suivants : boolean, byte, char, double, float, int, long, shortLa valeur initiale indique la valeur de lattribut quand une instance de la classe est creUn attribut est dit statique sil appartient la classe, pas une instance en particulier. Les attributs statiques sont not en soulign.

Cours IGL, Copyright 2011, ESISection 2 objets et classes40Cours 5 AnalyseClasses Notation UML Attributs, multiplicitLa multiplicit indique les attributs multiples.Les multiplicits sont quivalentes aux tableaux mais ont plus de smantique.Exemple 1 : int valeurs[7]. La classe contient exactement 7 valeurs.Exemple 2 : int valeurs[2..*] : la classe contient au moins 2 valeurs.Exemple 3 : int valeurs[2..7] la classe contient au minimum 2 valeurs et au maximum 7 valeurs.Exemple 4 : int valeurs [0..1] la classe contient une valeur ou null.

Cours IGL, Copyright 2011, ESISection 2 objets et classes41Cours 5 AnalyseClasses Notation UML - AttributsEXEMPLEEtudiant+ matricule : int# nom : string# prenom : string~modules : int [2..9]- age :int = 18- chambreAffectee : Chambre [0..1]+ tuteursDeSuivi : Tuteur [2]+ nombreEtudiants : int+ inscriptions : Inscription [1..*]

Cours IGL, Copyright 2011, ESIVisibilit Nom_Operation (direction nom_paramtre: type = valeur_dfaut,.) : type_retourSection 2 objets et classes42Cours 5 AnalyseClasses Notation UML - OprationsLes oprations sont formuls en utilisant la syntaxe suivante :

Cours IGL, Copyright 2011, ESISection 2 objets et classes43Cours 5 AnalyseClasses Notation UML - OprationsLes oprations sont nommes en utilisant une formulation lowerCamelCaseDe prfrence, utiliser des expressions verbales pour les oprationsLes paramtres sont nomms en utilisant lowerCamelCaseNe pas utiliser des expressions verbales pour les paramtresDes valeurs par dfaut peuvent tre renseignes pour une opration.Les oprations statiques sont soulignes

Cours IGL, Copyright 2011, ESISection 2 objets et classes44Cours 5 AnalyseClasses Notation UML - OprationsDIRECTION DES PARAMTRESDirectionDescriptionin pLe paramtre p est un paramtre dentre. p est utilis par lopration mais nest pas modifi par lopration.inout pLe paramtre p est un paramtre dentre / sortie. p est utilis par lopration et sa valeur peut tre change par lopration.out pLe paramtre p est un paramtre de sortie. La valeur de p pourrait tre modifie par lopration. return pLe paramtre p est un paramtre de retour. Lopration doit retourner la valeur de p.

Cours IGL, Copyright 2011, ESISection 2 objets et classes45Cours 5 AnalyseClasses Notation UML - OprationsEXEMPLE

Cours IGL, Copyright 2011, ESISection 2 objets et classes46Cours 5 AnalyseClasses Notation UML - Strotypes

Les strotypes reprsentent un mcanisme pouvant tendre UMLUn strotype peut cibler une classe, un attribut ou une oprationPlusieurs dizaines de strotypes sont utiliss mais les plus connus sont : actor, boundary, entity et control.Le strotype acteur reprsente un acteurLe strotype entity reprsente une entit. Une entit est un concept mtier, par exemple Compte, Client, Fournisseur,

Cours IGL, Copyright 2011, ESISection 2 objets et classes47Cours 5 AnalyseClasses Notation UML - Strotypes

Le strotype control reprsente un contrleur. Un contrleur est un intermdiaire entre les limites et les entits. Le contrleur se charge de lexcution des commandes provenant de la limite.Le strotype boundary reprsente une limite du systme qui sinterface avec lacteur. Par exemple, interface utilisateur.

Cours IGL, Copyright 2011, ESISection 2 objets et classes48Cours 5 AnalyseClasses Notation UML - Strotypes

Cours IGL, Copyright 2011, ESISection 2 objets et classes49Cours 5 AnalyseClasses Notation UML - Strotypes

Cours IGL, Copyright 2011, ESISection 2 objets et classes50Cours 5 AnalyseClasses Notation UML - Associations

Une association est une relation entre deux classesUne association entre deux classes se traduit par un lien entre deux instances de ces classesUne association dcrit une relation qui a une smantique entre les deux classesUne association peut tre entre une classe et elle-mme. Lassociation est dite rflexive.La direction dtermine la navigation dun objet vers un autre.

Cours IGL, Copyright 2011, ESISection 2 objets et classes51Cours 5 AnalyseClasses Notation UML - Associations

EXEMPLE

Cours IGL, Copyright 2011, ESISection 2 objets et classes52Cours 5 AnalyseClasses Notation UML - Associations

Nom de lassociationDirectionMultiplicit

Cours IGL, Copyright 2011, ESISection 2 objets et classes53Cours 5 AnalyseClasses Notation UML - Associations

Rle

Cours IGL, Copyright 2011, ESISection 2 objets et classes54Cours 5 AnalyseClasses Notation UML - Associations

NOMS DES ASSOCIATIONSUtiliser des phrases verbalesIl nest pas recommand dutiliser les noms et les rles. Utiliser soit le nom soit le rle.Donner des noms explicites et lisibles.

Cours IGL, Copyright 2011, ESISection 2 objets et classes55Cours 5 AnalyseClasses Notation UML - Associations

MULTIPLICITMultiplicitSignification0..1Zro ou 11Exactement 10..*Zro ou plusieurs*Zro ou plusieurs1..*1 ou plusieurs1..91 99Exactement 91.5, 8, 20..*1 5, exactement 8 ou plus de 20

Cours IGL, Copyright 2011, ESISection 2 objets et classes56Cours 5 AnalyseClasses Notation UML - Associations

MULTIPLICITLa multiplicit dtermine le nombre dobjets impliqu dans une association un instant T

Cours IGL, Copyright 2011, ESISection 2 objets et classes57Cours 5 AnalyseClasses Notation UML - Associations

MULTIPLICIT EXEMPLE 1

Une voiture possde exactement 4 pneusUn pneu appartient exactement une voiture

Cours IGL, Copyright 2011, ESISection 2 objets et classes58Cours 5 AnalyseClasses Notation UML - Associations

MULTIPLICIT EXEMPLE 2Une socit peut avoir 0, 1 ou plusieurs employsUn employ est employ par exactement 1 socit

Cours IGL, Copyright 2011, ESISection 2 objets et classes59Cours 5 AnalyseClasses Notation UML - Associations

MULTIPLICIT EXEMPLE 3Une socit doit avoir au moins un employUn employ peut tre employ dans une seule socit ou aucune

Cours IGL, Copyright 2011, ESISection 2 objets et classes60Cours 5 AnalyseClasses Notation UML - Associations

MULTIPLICIT EXEMPLE 4Une socit peut avoir plusieurs employs (ou zro)Un employ peut tre employ dans au moins une socit

Cours IGL, Copyright 2011, ESISection 2 objets et classes61Cours 5 AnalyseClasses Notation UML - Associations

MULTIPLICIT EXEMPLE 5

Cours IGL, Copyright 2011, ESISection 2 objets et classes62Cours 5 AnalyseClasses Notation UML - Associations

MULTIPLICIT EXEMPLE 6Un employ a un ou 0 suprieur Un employ peut avoir 0 ou plusieurs subordonns

Cours IGL, Copyright 2011, ESISection 2 objets et classes63Cours 5 AnalyseClasses Notation UML - Associations

MULTIPLICIT EXEMPLE 6Un employ a un ou 0 suprieur Un employ peut avoir 0 ou plusieurs subordonns

Cours IGL, Copyright 2011, ESISection 2 objets et classes64Cours 5 AnalyseClasses Notation UML - Associations

MULTIPLICIT EXEMPLE 6

Cours IGL, Copyright 2011, ESISection 2 objets et classes65Cours 5 AnalyseClasses Notation UML - Associations

Navigation Exemple 1Socit vers Employ est navigableEmploy vers Socit est navigable

Cours IGL, Copyright 2011, ESISection 2 objets et classes66Cours 5 AnalyseClasses Notation UML - Associations

Navigation Exemple 2Employ vers Grade est navigableGrade vers Employ nest pas navigable

Cours IGL, Copyright 2011, ESISection 2 objets et classes67Cours 5 AnalyseClasses Notation UML - Associations

Navigation Exemple 3Employ vers Grade est navigableGrade vers Employ nest pas navigableX

Cours IGL, Copyright 2011, ESISection 2 objets et classes68Cours 5 AnalyseClasses Notation UML - Associations

Navigation Exemple 4Socit vers Employ est navigableEmploy vers Socit est navigable

Cours IGL, Copyright 2011, ESISection 2 objets et classes69Cours 5 AnalyseClasses Notation UML - Associations

Associations et attributsLes attributs peuvent tre un autre moyen de reprsenter une associationLes associations multiplicit multiple peuvent tre reprsentes par des tableaux ou des collectionsLors de la gnration de code, les associations sont gnres en tant quattributs

Cours IGL, Copyright 2011, ESISection 2 objets et classes70Cours 5 AnalyseClasses Notation UML - Associations

Associations et attributs Exemple 1

Cours IGL, Copyright 2011, ESISection 2 objets et classes71Cours 5 AnalyseClasses Notation UML - Associations

Associations et attributs Exemple

Cours IGL, Copyright 2011, ESISection 2 objets et classes72Cours 5 AnalyseClasses Notation UML - Associations

Classes dassociationParfois, quand il y a une association entre deux classes, lattribut ne peut tre dans aucune des classes.Exemple ci-dessous : o mettre la note ?

Cours IGL, Copyright 2011, ESISection 2 objets et classes73Cours 5 AnalyseClasses Notation UML - Associations

Classes dassociationLes classes dassociation sont de vraies classes qui peuvent avoir des attributs, oprations et mme dautres oprations

Cours IGL, Copyright 2011, ESISection 2 objets et classes74Cours 5 AnalyseClasses Notation UML - Associations

Classes dassociation - Exemple

Cours IGL, Copyright 2011, ESISection 2 objets et classes75Cours 5 AnalyseClasses Notation UML - Dpendance

En plus des associations, les classes peuvent tre lies par des relation de dpendancePlusieurs cas peuvent induire une dpendance entre une classe A et une classe B : A manipule B dans une opration, B est un paramtre dans une opration de A, B est le type de retour dune opration, A appelle une mthode B, etc.La dpendance nest pas rserve aux classes, elle peut tre utilise avec les paquets et les cas dutilisation

Cours IGL, Copyright 2011, ESISection 2 objets et classes76Cours 5 AnalyseClasses Notation UML - Dpendance

Cours IGL, Copyright 2011, ESISection 2 objets et classes77Cours 5 AnalyseClasses Notation UML - Hritage

Lhritage est une relation entre une classe gnrale et une classe plus spcifiqueEntre les deux, une relation de substitution : on peut substituer toute utilisation de llment gnral par llment plus spcifiqueLhritage est symbolis par le lien de gnralisationLa classe spcialise hrite de tous les attributs et les oprations de la classe parente

Cours IGL, Copyright 2011, ESI

Section 2 objets et classes78Cours 5 AnalyseClasses Notation UML - Hritage

EXEMPLE 1Gnralisation

Cours IGL, Copyright 2011, ESISection 2 objets et classes79Cours 5 AnalyseClasses Notation UML - Hritage

Parfois une classe ne peut exister que par lexistence des classes descendantesUne classe peut aussi dfrer limplmentation dune opration ses classes descendantesUne opration qui est sans implmentation dans la classe actuelle est une opration abstraiteUne classe qui contient une ou plusieurs oprations abstraites est dite classe abstraite

Cours IGL, Copyright 2011, ESI

Section 2 objets et classes80Cours 5 AnalyseClasses Notation UML - Hritage

EXEMPLE Classes abstraitesMthodes abstraitesMthodes concrtes

Cours IGL, Copyright 2011, ESISection 2 objets et classes81Cours 5 AnalyseClasses Notation UML - Hritage

LE POLYMORPHISMEUne opration polymorphique est une opration qui possde plusieurs implmentationsPar exemple, nimporte quel compte accepte les retraits et les versements. Par contre, les comptes entreprises ont un comportement diffrent des comptes particuliers. Les comptes entreprises acceptent les soldes ngatifs.

Cours IGL, Copyright 2011, ESISection 2 objets et classes82Cours 5 AnalyseClasses Notation UML - Hritage

EXEMPLE Polymorphisme

Cours IGL, Copyright 2011, ESISection 2 objets et classes83Cours 5 AnalysePaquets

QUEST-CE QUUN PAQUET ?Un paquet UML est un lment de groupage qui contient plusieurs lments UML dont ventuellement dautres paquetsLes paquets servent organiser les lments UMLLes paquets dfinissent des frontires smantiques du modleChaque lment UML appartient exactement un paquet. Les lments de haut niveau appartiennent un paquet implicite appel root ou topLevel

Cours IGL, Copyright 2011, ESISection 2 objets et classes84Cours 5 AnalysePaquets Notation UML

Cours IGL, Copyright 2011, ESISection 2 objets et classes85Cours 5 AnalysePaquets Notation UML

Cours IGL, Copyright 2011, ESISection 2 objets et classes86Cours 5 AnalysePaquets Espaces de noms

Le paquet dfinit une frontire o les noms des lments doivent tre uniquesSi un lment doit rfrer un autre lment se trouvant dans un autre paquet, il doit utiliser un nom qualifi.Le nom qualifi se fait en prfixant le nom de llment par les noms des paquets qui le contiennentPar exemple, si un paquet P1 contient un sous-paquet P2 contenant une classe C1, le nom qualifi de C1 est P1:P2:C1.

Cours IGL, Copyright 2011, ESISection 2 objets et classes87Cours 5 AnalysePaquets Dpendance

Un paquet P1 dpend de P2 si un lment de P1 utilise dune manire ou dune autre un lment de P2

Cours IGL, Copyright 2011, ESISection 2 objets et classes88Cours 5 AnalysePaquets Dpendance

Cours IGL, Copyright 2011, ESICours N 5Analyse89Cours iglSection 2, Classes et Objets, Dbat (05 mns)

Cours IGL, Copyright 2011, ESI

Cours IGL, Copyright 2011, ESICours N 5Analyse90Cours iglSection 3 : Classes danalyse

Cours IGL, Copyright 2011, ESI

Cours IGL, Copyright 2011, ESILes classes danalyse sont les classes dcouvertes durant lactivit danalyseLes classes danalyse correspondent des concepts relsLanalyse fait ressortir les lments suivants dune classe : Nom, Attributs les plus importants, Oprations les plus importantes, strotypes (non techniques)Les lments suivants ne sont pas importants dans lanalyse : mtadonnes, paramtres des oprations, visibilitSection 3 classes danalyse91Cours 5 AnalyseLes classes danalyse

Cours IGL, Copyright 2011, ESISection 3 classes danalyse92Cours 5 AnalyseSources de recensement

Cours IGL, Copyright 2011, ESILes classes danalyse sont reprsents en utilisant le diagramme des classesLensemble des classes sont appels vocabulaire, glossaire mtier ou taxonomie du domaineLes classes danalyse sont une reprsentation de haut niveau : elles sont caractrises par un nom, des attributs et ventuellement des oprations.Le nom de la classe est obligatoire.Les noms des attributs sont obligatoires. Leurs types facultatifs.Les paramtres et les types de retour des oprations ne sont montrs que sils apportent une comprhension au systmeSection 3 classes danalyse93Cours 5 AnalyseReprsentation dune classe danalyse

Cours IGL, Copyright 2011, ESILa visibilit est gnralement omiseLes strotypes ne sont montrs que sils augmentent la reprsentativitLes mtadonnes ne sont montrs que sils augmentent la reprsentativitSection 3 classes danalyse94Cours 5 AnalyseReprsentation dune classe danalyse

Cours IGL, Copyright 2011, ESIEXEMPLESection 3 classes danalyse95Cours 5 AnalyseReprsentation dune classe danalyseComptenumeroproprietairesoldeverser()retirer()

Cours IGL, Copyright 2011, ESICARACTRISTIQUES DUNE BONNE CLASSE DANALYSESon nom reflte son objectifCest une abstraction dun lment clairement identifiable dans le domaineA un ensemble limit et clair de responsabilitsA une grosse cohsionA un faible couplageSection 3 classes danalyse96Cours 5 AnalyseReprsentation dune classe danalyse

Cours IGL, Copyright 2011, ESISection 3 classes danalyse97Cours 5 AnalyseTechniques de recensement

Cours IGL, Copyright 2011, ESITechnique simple qui analyse du texte pour trouver des classes, des attributs et des oprationsLes noms et les phrases nominales reprsentent les classes et les attributsLes verbes et les phrases verbales reprsentent les oprationsDifficults avec les termes difficiles, les synonymes et les homonymesDifficult trouver les classes cachesSil y a des termes qui ne sont pas compris, voir avec les experts du domaineSection 3 classes danalyse98Cours 5 AnalyseTechnique des noms / verbes

Cours IGL, Copyright 2011, ESISection 3 classes danalyse99Cours 5 AnalyseTechnique des noms / verbes

Cours IGL, Copyright 2011, ESISection 3 classes danalyse100Cours 5 AnalyseTechnique des noms / verbes - Exemple

Cours IGL, Copyright 2011, ESISection 3 classes danalyse101Cours 5 AnalyseTechnique des noms / verbes - Exemple

Cours IGL, Copyright 2011, ESICette technique se concentre sur trois strotypes : boundary, entity et controlCette technique est complmentaire avec la technique des verbes / nomsSection 3 classes danalyse102Cours 5 AnalyseTechnique des strotypes

Cours IGL, Copyright 2011, ESISection 3 classes danalyse103Cours 5 AnalyseTechnique des strotypes

Cours IGL, Copyright 2011, ESILes classes boundary reprsentent les limites du systmeCes classes communiquent avec les acteursTrois types de classes boundary : classes dinterface utilisateur, classes qui sinterfacent avec dautres systmes et des classes qui sinterfacent avec un matriel externe (priphrique,)Ces classes doivent rester de haut niveau (ne pas soccuper des dtails)Section 3 classes danalyse104Cours 5 AnalyseTechnique des strotypes - Limites

Cours IGL, Copyright 2011, ESILes contrleurs sont responsable de la coordination des action permettant daccomplir un cas dutilisationSi un contrleur est trop compliqu, il est suggr de le diviser en plusieurs contrleursSection 3 classes danalyse105Cours 5 AnalyseTechnique des strotypes - Contrleurs

Cours IGL, Copyright 2011, ESIReprsentent les concepts manipuls par le systmeUtiliss par plusieurs cas dutilisation et plusieurs contrleursCes classes sont souvent persistantes (enregistres dans des fichiers ou des BDD)Section 3 classes danalyse106Cours 5 AnalyseTechnique des strotypes - Entits

Cours IGL, Copyright 2011, ESILe systme doit permettre lutilisateur de sinscrireLe systme doit permettre lutilisateur connect de consulter les formations assurs, leurs dates et les formateurs associsLe systme doit envoyer un message mensuellement qui avertit les utilisateurs inscrits des nouvelles formations

Section 3 classes danalyse107Cours 5 AnalyseTechnique des strotypes - Exemple

Cours IGL, Copyright 2011, ESISection 3 classes danalyse108Cours 5 AnalyseTechnique des strotypes - ExempleActeursEntitsContrleursLimites

Cours IGL, Copyright 2011, ESILes classes danalyse sont regroupes dans des paquets danalyseLes classes se trouvant dans le mme paquet sont des classes ayant un certain lien smantiqueUn bon regroupement des paquets produit une haute cohsion lintrieur dun paquet et un faible couplage entre paquetsSection 3 classes danalyse109Cours 5 AnalysePaquets danalyse

Cours IGL, Copyright 2011, ESISection 3 classes danalyse110Cours 5 AnalysePaquets danalyse - Exemple

Cours IGL, Copyright 2011, ESICours N 5Analyse111Cours iglSection 3 : Classes danalyse Dbat (05 Mns)

Cours IGL, Copyright 2011, ESI

Cours IGL, Copyright 2011, ESICours N 5Analyse112Cours iglSection 4 : Interactions

Cours IGL, Copyright 2011, ESI

Cours IGL, Copyright 2011, ESILes classes danalyse reprsentent la structure statique du systmeLes interactions expriment comment les instances de ces classes interagissent pour raliser une fonction du systmeLes interactions expriment laspect dynamique du systmeSection 4 Interactions113Cours 5 AnalyseIntroduction

Cours IGL, Copyright 2011, ESITrouver quelles classes qui interagissent pour un cas dutilisation donnTrouver les messages envoys entre les classes pour raliser un certain comportement (attributs, oprations, relations)Eventuellement, mettre jour les modles de besoins et danalyseNe pas crer dinteractions pour tous les cas dutilisation, Uniquement pour les CUs les plus importants et les plus complexesSection 4 Interactions114Cours 5 AnalyseObjectifs des interactions

Cours IGL, Copyright 2011, ESILes diagrammes comportementaux est la meilleure faon de reprsenter les interactionsLes diagrammes de squence illustrent une squence de messages ordonne dans le tempsLe diagramme de communication dcrit les relations entre objets dans un contexte donnLe diagramme dactivit dcrit le flux dactions menant la ralisation dune fonction mtierLe diagramme dtat dmontre le changement dtat dune entit dans le tempsSection 4 Ralisation des cas dutilisation115Cours 5 AnalyseDiagrammes comportementaux

Cours IGL, Copyright 2011, ESICours N 5Analyse116Cours iglSection 4 : Interactions, dbat (05 mns)

Cours IGL, Copyright 2011, ESI

Cours IGL, Copyright 2011, ESICours N 5Analyse117Cours iglSection 5 : Diagrammes de squence

Cours IGL, Copyright 2011, ESI

Cours IGL, Copyright 2011, ESILes diagrammes de squence (DSQ) dcrivent une action ordonne dans le tempsLes DSQ document les CU et font partie du modle danalyseLes DSQ sont composs de trois concepts principaux : les lignes de vie, les messages et les fragmentsSection 5 Diagrammes de squence118Cours 5 AnalysePrsentation

Cours IGL, Copyright 2011, ESIUne ligne de vie reprsente un seul participant dans une interactionUne ligne de vie peut reprsenter un objet, une instance dune classe ou un acteurPour reprsenter une interaction, des messages lient les lignes de vieSection 5 Diagrammes de squence119Cours 5 AnalyseLignes de vie

Cours IGL, Copyright 2011, ESISection 5 Diagrammes de squence120Cours 5 AnalyseLignes de vie Reprsentation UML

Cours IGL, Copyright 2011, ESIUn message reprsente une communication entre deux lignes de vie durant une interactionUn message peut sagir de lappel dune oprationUn message peut sagir de la cration ou de la destruction dinstanceUn message peut sagir denvoi dun signalQuand une ligne de vie reoit un message, a correspond gnralement lappel dune opration ayant la mme signatureQuand une ligne de vie reoit un message, elle obtient sont activation. Lactivation change de ligne de vie travers le temps.Section 5 Diagrammes de squence121Cours 5 AnalyseMessages

Cours IGL, Copyright 2011, ESISection 5 Diagrammes de squence122Cours 5 AnalyseMessagesType de messageDescriptionMessage synchroneLmetteur attend que le rcepteur termine lopration pour passer ltape suivanteMessage asynchroneLmetteur envoie le message puis continue son excution sans attendre la fin chez le rcepteurMessage de retourLmetteur rcupre lactivation suite lavoir perdu en envoyant un message au destinataireMessage de crationLe message provoque la cration du destinataireMessage de destructionLe message provoque la destruction du destinataireMessage foundLmetteur de ce message ne fait pas partie de linteraction.Message lostLe destinataire ne reoit jamais ce message. Peut indiquer des situation derreur.

Cours IGL, Copyright 2011, ESISection 5 Diagrammes de squence123Cours 5 AnalyseMessages

Message SynchroneMessage AsynchroneMessage de retourActivation

Cours IGL, Copyright 2011, ESI

Section 5 Diagrammes de squence124Cours 5 AnalyseMessagesMessage De CrationMessage De Destruction

Cours IGL, Copyright 2011, ESI

Section 5 Diagrammes de squence125Cours 5 AnalyseMessagesMessage FoundMessage Lost

Cours IGL, Copyright 2011, ESISection 5 Diagrammes de squence126Cours 5 AnalyseDSQ - Exemple

Cours IGL, Copyright 2011, ESISection 5 Diagrammes de squence127Cours 5 AnalyseDSQ - Exemple

Cours IGL, Copyright 2011, ESISection 5 Diagrammes de squence128Cours 5 AnalyseDSQ - Exemple

Cours IGL, Copyright 2011, ESISection 5 Diagrammes de squence129Cours 5 AnalyseDiagrammes de squences - ExempleCU: AppliquerUnEffetID: 1Description brve : Appliquer un effet spcial une photo dun album. Chaque effet est identifi par un numro.Acteurs primaires : UtilisateursActeurs secondaires : AucunPrconditions : le client doit tre authentifiEnchanement principal1. Lutilisateur slectionne un album2. Lutilisateur slectionne la photo dsire de lalbum3. Lutilisateur applique leffet dsir en indiquant son numro.Postconditions :Enchanement s alternatifs :

Cours IGL, Copyright 2011, ESISection 5 Diagrammes de squence130Cours 5 AnalyseDSQ Appliquer un effet

Lignes de vieActivationMessages

Cours IGL, Copyright 2011, ESISection 5 Diagrammes de squence131Cours 5 AnalyseDSQ Appliquer un effet

Cours IGL, Copyright 2011, ESISection 5 Diagrammes de squence132Cours 5 AnalyseDSQ Ajouter un albumCU: AjouterUnAlbumID: 2Description brve : Cration dun nouvel album par lutilisateurActeurs primaires : UtilisateursActeurs secondaires : AucunPrconditions : le client doit tre authentifiEnchanement principalLe CU dmarre quand lutilisateur clique sur le bouton nouveau Lutilisateur donne un nom lalbumLutilisateur enregistre lalbumPostconditions :Enchanement s alternatifs :

Cours IGL, Copyright 2011, ESISection 5 Diagrammes de squence133Cours 5 AnalyseDSQ Ajouter un album

Cours IGL, Copyright 2011, ESISection 5 Diagrammes de squence134Cours 5 AnalyseDSQ Consulter un albumCU: Consulter un albumID: 3Description brve : Lutilisateur consulte un album et les photos qui le composentActeurs primaires : UtilisateursActeurs secondaires : AucunPrconditions : le client doit tre authentifiEnchanement principalLe CU dmarre quand lutilisateur clique sur lalbum slectionnLalbum adapte son affichage selon la rsolutionLalbum affiche les photos le composant selon la rsolutionPostconditions :Enchanement s alternatifs :

Cours IGL, Copyright 2011, ESISection 5 Diagrammes de squence135Cours 5 AnalyseDSQ Consulter un album

Activations rflexives

Cours IGL, Copyright 2011, ESISection 5 Diagrammes de squence136Cours 5 AnalyseDSQ Consulter un album

Cours IGL, Copyright 2011, ESIUn DSQ peut tre compos de plusieurs fragmentsUn fragment est caractris par un nomUn fragment peut contenir un ou plusieurs messagesUn fragment est compos dun oprateur et de un ou plusieurs oprandesLoprateur dcide comment les oprandes sont excutesUn fragment peut tre caractris par une ou plusieurs conditionsLes fragments peuvent tre imbriqusSection 5 Diagrammes de squence137Cours 5 AnalyseFragments

Cours IGL, Copyright 2011, ESISection 5 Diagrammes de squence138Cours 5 AnalyseFragments OprateursOprateursNomDescriptionoptoptionnelLoprande nest excute que si la condition est vrifiealtAlternativesPlusieurs alternatives. Uniquement loprande dont la condition est vrifie sexcuteloopItrationItre lexcution tant que la condition est vrifierefRfrenceRfre une autre interaction

Cours IGL, Copyright 2011, ESISection 5 Diagrammes de squence139Cours 5 AnalyseDSQ Dupliquer un albumCU: DupliquerUnAlbumID: 4Description brve : Lutilisateur cre un nouvel album portant le mme nom et contenant les mmes photosActeurs primaires : UtilisateursActeurs secondaires : AucunPrconditions : le client doit tre authentifiEnchanement principalLe CU dmarre quand lutilisateur clique sur le bouton dupliquerLe systme cre un nouvel albumLe systme donne le mme nom au nouvel albumSi lalbum original contient des photos et sil nest pas verrouill4.1 Copier les photos de lalbum original vers la copiePostconditions :Enchanement s alternatifs :

Cours IGL, Copyright 2011, ESISection 5 Diagrammes de squence140Cours 5 AnalyseDSQ Dupliquer un album

FragmentOprateurConditionOprandeNom

Cours IGL, Copyright 2011, ESISection 5 Diagrammes de squence141Cours 5 AnalyseDSQ Dupliquer un album

Cours IGL, Copyright 2011, ESISection 5 Diagrammes de squence142Cours 5 AnalyseDSQ MAJ Statistiques AlbumCU: MAJ statistiquesID: 5Description brve : Chaque jour, des statistiques sont mises jour pour tous les albums. Si lalbum est public, on prend le nombre de visite et les miniatures sinon on prend uniquement le nombre de visites.Acteurs primaires : UtilisateursActeurs secondaires : AucunPrconditions : le client doit tre authentifiEnchanement principalLe CU dmarre chaque fin de journeLe systme rcupre la liste des albumsPour chaque album3.1 si lalbum est public,3.1.1 prendre le nombre de visites et les miniatures3.2 sinon3.1.2 prendre le nombre de visitesPostconditions :

Cours IGL, Copyright 2011, ESISection 5 Diagrammes de squence143Cours 5 AnalyseDSQ MAJ Statistiques Album

Cours IGL, Copyright 2011, ESISection 5 Diagrammes de squence144Cours 5 AnalyseDSQ Exemple

Cours IGL, Copyright 2011, ESICours N 5Analyse145Cours iglSection 5 : Diagrammes de squence, dbat (05 mns)

Cours IGL, Copyright 2011, ESI

Cours IGL, Copyright 2011, ESICours N 5Analyse146Cours iglSection 6 : Diagrammes dactivit

Cours IGL, Copyright 2011, ESI

Cours IGL, Copyright 2011, ESILes diagrammes dactivit (AD) reprsentent des processus en tant quune activit compose de plusieurs nuds connects.Dans UML 1, les AD taient des sous-ensembles des diagrammes dtat. Dans UML 2, cest des diagrammes part entire.Une activit peut tre attache nimporte quel lment du modle (cas dutilisation, classe, ). Une activit modlise essentiellement un comportement.

Section 6 Diagramme dactivit147Cours 5 AnalysePrsentation

Cours IGL, Copyright 2011, ESILes diagrammes dactivit sont idaux pour reprsenter des processus mtier.Les ADs nont pas besoin de connatre la structure statique du modle (classes, objets) ce qui permet leur utilisation dans les premiers moments de lanalyse.Les ADs sont trs simples comprendre par le client.

Section 6 Diagramme dactivit148Cours 5 AnalysePrsentation

Cours IGL, Copyright 2011, ESILes activits sont des rseaux composs de nuds et de connecteurs.Il y a trois types de nuds : des nuds daction, des nuds de contrle et des nuds dobjet.Un nud daction reprsente une unit de travail atomique (indivisible)Un nud decontrle contrle le flux au sein dune activitUn nud dobjet reprsente un objet manipul dans lactivit.Section 6 Diagramme dactivit149Cours 5 AnalyseActivits

Cours IGL, Copyright 2011, ESILes connecteurs reprsentent le flux entre les nuds.Il y a deux types de connecteurs : des connecteurs de contrle et des connecteurs dobjet.Un connecteur de contrle reprsente leflux dactivitUn connecteur dobjet reprsente le flux dobjetUne activit dmarre avec un nud spcial appel nud initialLactivit se termine avec un nud spcial appel nud finalSection 6 Diagramme dactivit150Cours 5 AnalyseActivits

Cours IGL, Copyright 2011, ESISection 6 Diagramme dactivit151Cours 5 AnalyseActivits

Cours IGL, Copyright 2011, ESISection 6 Diagramme dactivit152Cours 5 AnalyseDiagramme dactivit

Nud initialNud finalNuds dactionConnecteurs

Cours IGL, Copyright 2011, ESISection 6 Diagramme dactivit153Cours 5 AnalyseDiagramme dactivit

Cours IGL, Copyright 2011, ESILe diagramme dactivit suit une squence dtermine par un jetonLe jeton transite du nud initial vers le nud finalLe jeton peut tre un des lments suivants : le flux actuel, un objet ou des donnesLtat dun AD est dtermin par ses jetonsLes jetons transitent dun nud lautre via les connecteursSection 6 Diagramme dactivit154Cours 5 AnalyseFonctionnement

Cours IGL, Copyright 2011, ESILes activits smantiquement lies peuvent tre regroupes en partitionsUne partition dsigne gnralement le rle excutant laction en coursLes partitions rendent les ADs plus faciles lire et plus expressifsLes partitions peuvent tre reprsentes dune manire horizontale ou verticaleExemple : pour valider une facture, le gestionnaire lance la validation, le magasinier prpare le stock et enfin, le comptable vrifie le paiement

Section 6 Diagramme dactivit155Cours 5 AnalysePartitions

Cours IGL, Copyright 2011, ESISection 6 Diagramme dactivit156Cours 5 AnalysePartitions

Partitions

Cours IGL, Copyright 2011, ESISection 6 Diagramme dactivit157Cours 5 AnalysePartitions

Cours IGL, Copyright 2011, ESIUn nud de dcision a un connecteur en entre et deux (ou plusieurs e sortie)Le chemin suivre par le jeton est celui de la condition vrifie du nud de dcisionPlusieurs chemins sortent du nud de dcisionUn nud de fusion fusionnent les connecteurs sortis dun nud de dcisionExemple : une fois une commande reue, si le stock est disponible faire linventaire du reste, sinon lancer un approvisionnement

Section 6 Diagramme dactivit158Cours 5 AnalyseDcisions et fusions

Cours IGL, Copyright 2011, ESI

Section 6 Diagramme dactivit159Cours 5 AnalyseDcisions et fusionsNud de dcisionNud de fusion

Cours IGL, Copyright 2011, ESI

Section 6 Diagramme dactivit160Cours 5 AnalyseDcisions et fusions

Cours IGL, Copyright 2011, ESIDans un AD, on peut crer des flux parallles en utilisant le nud forkPour fusionner les flux parallles, un nud join est utilisExemple : aprs rception dune commande, deux activit sont lances en parallle, une pour la vrification du paiement et lautre pour la prparation du stockSection 6 Diagramme dactivit161Cours 5 AnalyseActivits parallles

Cours IGL, Copyright 2011, ESISection 6 Diagramme dactivit162Cours 5 AnalyseActivits parallles

Nud forkNud join

Cours IGL, Copyright 2011, ESISection 6 Diagramme dactivit163Cours 5 AnalyseActivits parallles

Cours IGL, Copyright 2011, ESILes nuds dobjet sont des nuds spciaux qui indiquent que des instances dune classe donnes sont disponible un point donn du tempsExemple, dans une activit industrielle, la spcification produit un cahier de charges et le dveloppement produit un prototypeSection 6 Diagramme dactivit164Cours 5 AnalyseNuds dobjet

Cours IGL, Copyright 2011, ESISection 6 Diagramme dactivit165Cours 5 AnalyseNuds dobjet

Nud dobjet

Cours IGL, Copyright 2011, ESILorsque les activits produisent beaucoup dobjets, il serait intressant de les organiser en PINSPar exemple, pour lauthentification, le username et le mot de passe sont des objets produitsSection 6 Diagramme dactivit166Cours 5 AnalyseNuds dobjet

Cours IGL, Copyright 2011, ESISection 6 Diagramme dactivit167Cours 5 AnalyseNuds dobjet

Sans utilisation des PINs

Cours IGL, Copyright 2011, ESISection 6 Diagramme dactivit168Cours 5 AnalyseNuds dobjetAvec utilisation des PINs

Cours IGL, Copyright 2011, ESIPour modliser des processus paralllesPour modliser des processus mtier indpendamment de la structure statique (classes danalyse)Section 6 Diagramme dactivit169Cours 5 AnalyseQuand utiliser le diagramme dactivit ?

Cours IGL, Copyright 2011, ESICours N 5Analyse170Cours iglSection 6 : Diagrammes dactivit, Dbat (05) mns

Cours IGL, Copyright 2011, ESI

Cours IGL, Copyright 2011, ESICours N 5Analyse171Cours iglSection 7 : Diagrammes dtats-transitions

Cours IGL, Copyright 2011, ESI

Cours IGL, Copyright 2011, ESIUn diagramme dtats-transitions (DET) modlise le cycle de vie dun objet dit objet ractifUn objet ractif est un objet qui change dtat suite un vnement donnUne machine dtat reprsente un nombre fini de ces tatsSection 7 Diagramme dtats transitions172Cours 5 AnalyseIntroduction

Cours IGL, Copyright 2011, ESILes DETs sont composs de trois lments principaux : tats, transitions et vnementsUn tat reprsente une condition dans laquelle se trouve un objet un instant TUn vnement est une action particulire qui se dclenche sous des conditions spcifiques Une transition est le mouvement dun tat vers un autre suite un vnement donnSection 7 Diagramme dtats transitions173Cours 5 AnalyseIntroduction

Cours IGL, Copyright 2011, ESIUne lampe est initialement teinte. Si on lallume, elle passe dans ltat allume. Si on lteint, elle repasse dans ltat teinte. Si elle saute, elle passe dfinitivement ltat final dfectueuxSection 7 Diagramme dtats transitions174Cours 5 AnalyseExemple

Cours IGL, Copyright 2011, ESISection 7 Diagramme dtats transitions175Cours 5 AnalyseExemple

Etat finalEtatTransitionEtat initial

Cours IGL, Copyright 2011, ESIDurant le temps, un objet peut envoyer un message un autre objet qui peuvent changer sont tatLtat dun objet est dtermin par ses attributs, ses relations dautres objets et les activits dans lesquelles il est impliquIl ne faut modliser que les tats qui ajoutent de lexpressitivit au systmeLes tats de jonction (pseudo-tats) peuvent connecter plusieurs transitionsUn pseudo-tat de choix exprime un ou plusieurs choix mutuellement exclusifsSection 7 Diagramme dtats transitions176Cours 5 AnalyseEtats

Cours IGL, Copyright 2011, ESISection 7 Diagramme dtats transitions177Cours 5 AnalyseEtatsPseudo-tat de jonctionPseudo-tat de choix

Cours IGL, Copyright 2011, ESISection 7 Diagramme dtats transitions178Cours 5 AnalyseEtats

Cours IGL, Copyright 2011, ESIPour modliser des entits ractives (dont les tats changent)Section 7 Diagramme dtats transitions179Cours 5 AnalyseQuand utiliser le DET ?

Cours IGL, Copyright 2011, ESICours N 5Analyse180Cours iglSection 7 : Diagrammes dtats-transitions, dbat (05 mns)

Cours IGL, Copyright 2011, ESI

Cours IGL, Copyright 2011, ESIUML Distilled 3rd Edition, Martin Fowler, 2003, Addison Wesley

UML2 and the Unified Process, Second Edition, Addison Wesley 2005

Wikipedia : Unified Modeling Language, http://fr.wikipedia.org/wiki/Unified_Modeling_Language bibliographie181Cours 3 Introduction UMLBibliographie

Cours IGL, Copyright 2011, ESI