Introduction à UML - IBISC

1y ago
18 Views
2 Downloads
806.10 KB
99 Pages
Last View : 2d ago
Last Download : 3m ago
Upload by : Karl Gosselin
Transcription

Introduction à UMLJean-Yves Didier18/12/06Introduction à UML1

Détails pratiques En cas de questions :didier@iup.univ-evry.fr Où trouver ce cours :http://lsc.univ-evry.fr/ didier/pedagogie/uml2.pdf18/12/06Introduction à UML2

Plan Introduction générale, Meta-modèle UML, Notion de vues d'un système, Diagrammes UML,18/12/06Introduction à UML3

Le méta-modèle UML UML : langage permettant de créer des modèles, UML : modélisation des modèles, un méta-modèle.Le méta-modèle UML est en 4 couches: (M3) métamétamodèle : (concept de métaclasse)Définit le langage pour la spécification des metamodèles, (M2) métamodèle : (concept de classe)Définit le langage pour la spécification des modèles, (M1) modèle : (classe)Définit le langage pour les éléments d' un domaine, (M0) objets utilisateur : (objet)Définit les données spécifiques du domaine.18/12/06Introduction à UML4

Le modèle 4 1 vueVue logiqueVue d'implémentationVue des cas d'utilisationVue des processus18/12/06Vue de déploiementIntroduction à UML5

Diagrammes UMLDiagrammeUML 1.4.2UML 2.0Diagrammede structureDiagrammede classesDiagrammede composantsDiagrammede structurescomposites18/12/06Diagrammede comportementDiagrammed'objetsDiagrammede déploiementIntroduction à UMLDiagrammedes paquetages6

Diagrammes UMLDiagrammeUML 1.4.2UML 2.0Diagrammede structure18/12/06Diagrammede tionDiagrammede ammede séquenceDiagramme decommunicationDiagrammede tempsDiagrammed'interactionglobaleIntroduction à UML7

Diagrammes UMLDiagrammeUML 1.4.2UML 2.0Diagrammede structure18/12/06Diagrammede tionDiagrammede ammede séquenceDiagramme decommunicationDiagrammede tempsDiagrammed'interactionglobaleIntroduction à UML8

Notations du diagramme decas d'utilisationSystèmeCas 2/06DépendanceIntroduction à UML9

Diagrammes UMLDiagrammeUML 1.4.2UML 2.0Diagrammede structureDiagrammede classesDiagrammede composantsDiagrammede structurescomposites18/12/06Diagrammede comportementDiagrammed'objetsDiagrammede déploiementIntroduction à UMLDiagrammedes paquetages10

Représentation complèted'une classeFraction- numerateur : int 0- dénominateur : int 1{! 0}- /quotientEntier : int 0 getNumerateur() : int setNumerateur(numerateur : int 0) : void getDenominateur() : int setDenominateur(denominateur : int 1 {! 0} ) : void getQuotientEntier() : int18/12/06Introduction à UML11

Diagramme de tationIntroduction à UML12

Diagrammes UMLDiagrammeUML 1.4.2UML 2.0Diagrammede structureDiagrammede classesDiagrammede composantsDiagrammede structurescomposites18/12/06Diagrammede comportementDiagrammed'objetsDiagrammede déploiementIntroduction à UMLDiagrammedes paquetages13

Diagramme des objets: MoléculeEau: MoléculeEau: Molécule-MasseMolaire: entier 18-Densité: float 1-Formule: caractères H2OContient Eau: MoléculeHydrogène: AtomeHydrogène: AtomeOxygène: Atome18/12/06Introduction à UML14

Diagrammes UMLDiagrammeUML 1.4.2UML 2.0Diagrammede structure18/12/06Diagrammede tionDiagrammede ammede séquenceDiagramme decommunicationDiagrammede tempsDiagrammed'interactionglobaleIntroduction à UML15

Diagramme d'activités Cycle de développementecrire programmeprendre un cafecompiler programmemodifier programme[compilation echouee][compilation reussie]executer programme18/12/06Introduction à UML16

Diagrammes UMLDiagrammeUML 1.4.2UML 2.0Diagrammede structure18/12/06Diagrammede tionDiagrammede ammede séquenceDiagramme decommunicationDiagrammede tempsDiagrammed'interactionglobaleIntroduction à UML17

Diagramme d'états-transitionsAprès (2 min)attenteArrêt d'urgenceHlustrageAprès (2 min)lavageAprès (4 min)séchageAprès (2 min)Arrêt d'urgence18/12/06Introduction à UML18

Plan Introduction générale, Meta-modèle UML, Notion de vues d'un système, Diagrammes UML, 18/12/06A quelle étape de la création du logiciel utiliserles diagrammes UML ?Synthèse et conclusion.Introduction à UML19

Plan Introduction générale, Meta-modèle UML, Notion de vues d'un système, Diagrammes UML, 18/12/06A quelle étape de la création du SI utiliser lesdiagrammes UML ?Synthèse et conclusion.Introduction à UML20

Diagrammes UMLDiagrammeUML 1.4.2UML 2.0Diagrammede structure18/12/06Diagrammede tionDiagrammede ammede séquenceDiagramme decommunicationDiagrammede tempsDiagrammed'interactionglobaleIntroduction à UML21

Diagramme de séquence Représente des collaborations entre objets selonun point de vue temporel, Se concentre sur l'expression des interactions, Peut servir à décrire un cas d'utilisation, Modélisation au niveau des objets, 3 éléments importants :18/12/06–Les objets,–Ligne de vie des objets,–Message/stimulus,Introduction à UML22

Objets et Lignes de vie 18/12/06Les objets sont représentés avecla même notation que dans lediagramme des objets (les objetspeuvent aussi être des acteurs),Eau: MoléculeLigne de vie : ligne verticalepointillée dirigée vers le bas àpartir de chaque objet,La ligne de vie symbolise unedurée qui dépend du scénario etdu comportement modélisé,Introduction à UML23

Objets et Lignes de vie La ligne de vie peut être remplacée par unrectangle : la barre d'activation,Elle traduit l'activation de l'objet.:CentraleClignotant18/12/06Introduction à UML:Lampe24

Message/stimulus Généralement un appel, un signal ou uneréponse. Représenté par une flèche,Le type de flèche correspond au type demessage,TypeMessage asynchroneAppel de méthodeRéponse, création d'objetsMessage perduMessage trouvéMessage minuté (timeout)18/12/06ReprésentationIntroduction à UML25

Message/stimulus Un libellé accompagne les messages qui décritune interface/opération à effectuer,Le message contient la signature de l'opération :–Son nom, ses arguments, le type retourné : 18/12/06quotientEntier(Fraction):intUne opération peut être effectuée de manièrerépétée ou de manière conditionnelle :–[pour chaque élève]–[élève suit matière oui]La flèche inclinée si délai de propagation.Introduction à UML26

Création/destruction d'objets 2 façons de modéliser la création d'objets :Toto:Client1:Commande()Cmd. de Toto :CommandeToto:ClientCmd. de Toto :Commande1:Commande() 18/12/06Le destruction est marqué par un 'X' en fin deligne de vie de l'objet détruit.Introduction à UML27

Diagrammes UMLDiagrammeUML 1.4.2UML 2.0Diagrammede structure18/12/06Diagrammede tionDiagrammede ammede séquenceDiagramme decommunicationDiagrammede tempsDiagrammed'interactionglobaleIntroduction à UML28

Diagramme decommunication Appelé aussi diagramme de collaboration(UML1.4),Montre des interactions entre objets (instancesde classe et acteurs), Représente le contexte d'une interaction, Précise les états des objets qui interagissent, Fournit des outils pour déterminer les interfacesdes objets :–18/12/06La description du message donne la signature del'opération pour l'objet récepteur.Introduction à UML29

Diagramme de communicationet de séquences Deux vues du même phénomène :– 18/12/06Il existe des outils de passage de l'un à l'autre,Diagramme de communications :–Donne la priorité à la figuration des interactions,–Aide à valider le diagramme de classes en mettant enévidence la nécessité de chaque association commemoyen de transmission des messages,Diagramme de séquences :–Modélise la création/destruction d'objets,–Montre l'activation des objets,Introduction à UML30

Exemple de diagramme7: ajouterProduit(chaîne)1: Commande()3: ajouterArticle(chaîne)Cmde de Toto :CommandeToto:Client2: retourne Commande8: retourne vrai4: produitDisponible(chaîne)6: [Produit disponible]reduireStock(noProduit,quantité)5: retourne produit disponible:Stock18/12/06Introduction à UML31

Exemple de diagramme7: ajouterProduit(chaîne)1: Commande()3: ajouterArticle(chaîne)Cmde de Toto :CommandeToto:Client2: retourne Commande8: retourne vrai4: produitDisponible(chaîne)6: [Produit disponible]reduireStock(noProduit,quantité)Objet :5: n identique audiagramme de séquences:Stock18/12/06Introduction à UML32

Exemple de diagramme7: ajouterProduit(chaîne)1: Commande()3: ajouterArticle(chaîne)Cmde de Toto :CommandeToto:Client2: retourne Commande4: produitDisponible(Evènement8:ouappel deretournevraiprocédure synchrone :chaîne)Evènement synchrone : message nécessitant une réponse,6: [Produit disponible]Implique un message de retour,reduireStock(noProduit,5: retournesontproduitLes appels de procédureunedisponibleautre façon de décrirequantité)le même mécanisme.:Stock18/12/06Introduction à UML33

Exemple de diagramme7: ajouterProduit(chaîne)1: Commande()3: ajouterArticle(chaîne)Cmde de Toto :CommandeToto:Client2: retourne Commande8: retourne vraiRetour :Réponseà un événementsynchrone5: retourneproduit disponible4: produitDisponible(chaîne)6: [Produit 18/12/06Introduction à UML34

Exemple de diagramme7: ajouterProduit(chaîne)1: Commande()3: ajouterArticle(chaîne)Cmde de Toto :CommandeToto:Client2: retourne Commande8: retourne vraiAutoréférence:Objet se parlant à lui-même5: retourne produit disponible4: produitDisponible(chaîne)6: [Produit 18/12/06Introduction à UML35

Exemple de diagramme7: ajouterProduit(chaîne)1: Commande()3: ajouterArticle(chaîne)Cmde de Toto :CommandeToto:Client2: retourne CommandeNuméro de séquence:8: retournevraiReprésente l'ordre d'exécution des messages,Ici les numéros sont obligatoires.5: retourne produit disponible4: produitDisponible(chaîne)6: [Produit 18/12/06Introduction à UML36

Exemple de diagramme7: ajouterProduit(chaîne)1: Commande()3: ajouterArticle(chaîne)Cmde de Toto :CommandeToto:Client2: retourne Commande8: retourne vrai4: produitDisponible(chaîne)6: [Produit disponible]reduireStock(noProduit,quantité)5: retourne produit disponible*18/12/06Répéter les étapes 3 à 7pour chaque article quele client souhaite ajouterIntroduction à UML:Stock37

Diagrammes UMLDiagrammeUML 1.4.2UML 2.0Diagrammede structureDiagrammede classesDiagrammede composantsDiagrammede structurescomposites18/12/06Diagrammede comportementDiagrammed'objetsDiagrammede déploiementIntroduction à UMLDiagrammedes paquetages38

Diagramme de composants 18/12/06Décrit l'architecture physique et statique d'uneapplication en termes de modules : fichierssources, librairies, exécutables, .Montre la mise en oeuvre physique des modèlesde la vue logique avec l'environnement dedéveloppement,Identifie les contraintes de compilation grâce à lamise en évidence des dépendances,Les composants peuvent être organisés enpaquetage,Introduction à UML39

Diagramme de composants 3 catégories principales de composants :–Les composants de déploiement : –Les composants de travail : –18/12/06Englobent les modèles, le code source et les fichiers dedonnées utilisés pour créer les composants de déploiement,Les composants d'exécution : Nécessaires pour faire fonctionner le système,Composants créés pendant le fonctionnement del'application.Il existe des dépendances entre composantsIntroduction à UML40

Composant : notation Rectangle avec 2 rectangles plus petits du côtégauche et le nom au centre ( stéréotype) : stéréotype NomComposantNomComposant Notation changée avec UML 2.0 ! component NomComposantNomComposant18/12/06Introduction à UML41

Stéréotypes de composants Décrivent le rôle joué par le composant : executable : composant exécutable, library : bibliothèque de fonction, table : composant de base de données, file : fichier de données, source document script 18/12/06: code destiné à être compilé,: document, par exemple texte ou image,: script qui peut être interprété par le SI,Ce sont ce que l'on appelle des artefactsd'implémentation.Introduction à UML42

Interfaces de composants 18/12/06Une interface représente la déclaration d'unensemble cohérent de fonctionnalités etd'obligations.Une interface spécifie un contrat : chaqueinstance qui réalise cette interface doit respecterce contrat.Les interfaces sont des déclarations, elles nesont pas instanciables.Une spécification d'interface est implémentée parl'instance d'une classe concrète.Introduction à UML43

Interfaces de composant Un composant réalise une interface, c'est à direl'applique,L'interface implémentée par un composant est enfait implémentée par les classes de celui-ci,– Un composant peut implémenter plusieursinterfaces,–18/12/06Cette interface doit se retrouver dans le diagrammedes classes,Leur nombre est dicté par les classes implémentant lecomposant.Introduction à UML44

Interfaces de composants 2 manières de modéliser la réalisation :–A l'aide d'une classe stéréotypée : interface Serializable executable JButton.class- A l'aide d'une ''sucette'' :Serializable executable JButton.class18/12/06Introduction à UML45

Interfaces de composants 2 manière de modéliser la connaisance etl'utilisation d'une interface :–A l'aide d'une classe stéréotypée : executable JButton.class– use interface ActionListenerA l'aide d'une ''coupe'' :ActionListener executable JButton.class18/12/06Introduction à UML46

Dépendances de composants Flèche pointillée du composant dépendant àcelui qui fournit l'aide,–Exemple :Composants pour une classe exécutable Java :18/12/06 source Toto.java executable Toto.class library libjava.so executable javaIntroduction à UML47

Diagrammes UMLDiagrammeUML 1.4.2UML 2.0Diagrammede structureDiagrammede classesDiagrammede composantsDiagrammede structurescomposites18/12/06Diagrammede comportementDiagrammed'objetsDiagrammede déploiementIntroduction à UMLDiagrammedes paquetages48

Diagramme de déploiement L'implantation physique doit tenir compte de troisproblèmes :–Le logiciel, –Le matériel, –Diagramme de déploiement,L'intégration des deux élements : 18/12/06Diagramme de composants,Ensemble des deux diagrammes.Introduction à UML49

Diagramme de déploiement Montre la disposition physique des matériels, Montre la répartition des composants, Ressources matérielles : sous forme de noeuds, 18/12/06Connections sous forme de supports decommunication,Montre des instances de noeuds ou des classesde noeuds,Correspond à la vue de déploiement.Introduction à UML50

Diagramme de déploiement Composé :–Des artefacts : les pièces physiques d'informationutilisées ou produites par le SI, 18/12/06Les artefacts sont équivalents aux composants,Les notations de UML1.4 et UML 2.0 diffèrent !–Les Chemins de communication : des associationsentre 2 cibles de déploiement au travers desquellesles informations sont échangées,–Les noeuds, les ressources de calcul sur lesquellesles artefacts peuvent être déployés,Introduction à UML51

Premières notations Noeud : boîte 3D, Associations : traits pleins, Les 2 entités peuvent être stéréotypées ! ethernet processor Serveur1.11.* processor Client1.11.* ethernet 1.1 processor Serveur deBase de Données18/12/06 parrallèle 1.*Introduction à UML périphérique Imprimante52

Contraintes sur les noeuds Un noeud peut posséder des compartimentsavec attributs et opérations : processor ens-unix:ServeurVit. Proc 2GHzMémoire 1GoOS Linux18/12/06 processor :Client TCP/IP 1.1Vit. Proc 1,2GHz1.* Mémoire 512MoDéploieXWin32.exeIntroduction à UML53

Artéfacts déployés Les artéfacts sont mis à l'intérieur des noeuds : processor ens-unix:Serveur processor ens-unix:Serveur executable java.exe executable java.exeNotation UML 1.4 18/12/06Notation UML 2.0Il est possible de combiner diagramme decomposants et diagramme de déploiement dansun seul diagramme.Introduction à UML54

Diagrammes UMLDiagrammeUML 1.4.2UML 2.0Diagrammede structureDiagrammede classesDiagrammede composantsDiagrammede structurescomposites18/12/06Diagrammede comportementDiagrammed'objetsDiagrammede déploiementIntroduction à UMLDiagrammedes paquetages55

Diagramme de structurescomposites Structure composite :– 18/12/06Composition d'éléments interconnectés représentantdes instances collaborant par le biais de liens decommunication afin de parachever des objectifscommuns.5 éléments :–Les Classificateur structuré,–Les parties,–Les ports,–Les connecteurs,–Les collaborations,Introduction à UML56

Diagramme de structurescomposites Classificateur structuré :– Partie :– Rôle joué à l'exécution par une instance ou unecollection d'instances de classes,Port :–18/12/06Classe, souvent abstraite, dont le comportementpeut-être déterminé suivant ses interactions avec lesdifférentes parties,Point d'interaction utilisé pour connecter lesclassificateurs structurés avec leurs parties et leurenvironnement.Introduction à UML57

Diagramme de structurescomposites Connecteur :– 18/12/06Lien entre au minimum 2 entités,Collaboration :–Structure purement abstraite,–Représentée comme un ovale pointillé contenant lerôle que l'instance peut jouer dans la collaboration.Introduction à UML58

Exemple de diagramme destructures composite 18/12/06La suite de Fibonacci :–F(n) F(n-1) F(n-2), F(0) 0, F(1) 1,–Les parties sont NMinus2, NMinus1 et N,Introduction à UML59

Exemple de diagramme destructures compositeRevente au détailacheteurVente de ndeuracheteurVente de détail:Vente18/12/06Introduction à UML60

Diagrammes UMLDiagrammeUML 1.4.2UML 2.0Diagrammede structure18/12/06Diagrammede tionDiagrammede ammede séquenceDiagramme decommunicationDiagrammede tempsDiagrammed'interactionglobaleIntroduction à UML61

Diagramme de temps 18/12/06Se concentre sur les conditions de changement àl'intérieur et parmi les lignes de vies suivant unaxe linéaire. Complémentaire au diagramme deséquences,Décrit le comportement du classificateur et desinteractions avec le classificateur, se concentrantsur l'instant d'occurrence des évènementsmodifiant l'état du classificateur,Comparable à un chronogramme,Notation des messages et des destructionssimilaires au diagramme de séquences,Introduction à UML62

Exemple de diagramme detemps{d.d*3}sd teCarteRetireeIdleOk {t.t 3}Code018/12/061t2Introduction à UML63

Exemple de diagramme detemps{d.d*3}sd AccesUtilisateur:UtilisateurAttenteAccesLigne de vieAttenteCarteCarteRetireeIdleOk {t.t 3}Code018/12/061t2Introduction à UML64

Exemple de diagramme detemps{d.d*3}sd AccesUtilisateur:UtilisateurAttenteAccesÉtat ou conditionAttenteCarteCarteRetireeIdleOk {t.t 3}Code018/12/061t2Introduction à UML65

Exemple de diagramme detemps{d.d*3}sd AccesUtilisateur:UtilisateurAttenteAccesContrainte de duréeAttenteCarteCarteRetireeIdleOk {t.t 3}Code018/12/061t2Introduction à UML66

Exemple de diagramme detemps{d.d*3}sd AccesUtilisateur:UtilisateurAttenteAccesContrainte de tempsAttenteCarteCarteRetireeIdleOk {t.t 3}Code018/12/061t2Introduction à UML67

Exemple de diagramme detemps{d.d*3}sd AccesUtilisateur:UtilisateurAttenteAccesEvènement ou stimuliAttenteCarteCarteRetireeIdleOk {t.t 3}Code018/12/061t2Introduction à UML68

Exemple de diagramme detemps{d.d*3}sd AccesUtilisateur:UtilisateurAttenteAccesMarques de tempsAttenteCarteCarteRetireeIdleOk {t.t 3}Code018/12/061t2Introduction à UML69

Exemple de diagramme detempsNotation compacte {d.d*3}sd teIntroduction à UMLAttenteAcces Idle70

Exemple de diagramme detempsAvec plusieurs lignes de vie : {d.d*3}:SystemeAcces:Utilisateursd t.t 3}1t nowt2Introduction à UML71

Exemple de diagramme detempsAvec plusieurs lignes de vie : {d.d*3}:SystemeAcces:Utilisateursd 8/12/06{t.t 3}1t nowt2Introduction à UML72

Exemple de diagramme detempsAvec plusieurs lignes de vie : {d.d*3}:SystemeAcces:Utilisateursd AccesUtilisateurAttenteAccesObservation de �verouillerACarted018/12/06{t.t 3}1t nowt2Introduction à UML73

Exemple de diagramme detempsAvec plusieurs lignes de vie : {d.d*3}:SystemeAcces:Utilisateursd AccesUtilisateurAttenteAccesObservation eDéverouillerACarted018/12/06{t.t 3}1t nowt2Introduction à UML74

Diagrammes UMLDiagrammeUML 1.4.2UML 2.0Diagrammede structure18/12/06Diagrammede tionDiagrammede ammede séquenceDiagramme decommunicationDiagrammede tempsDiagrammed'interactionglobaleIntroduction à UML75

Diagramme d'interactionglobale 18/12/06Définit les interactions au travers d'une variantedu diagramme d'activités,Cherche à mettre en évidence une vue globaledu flux de contrôle,Les noeuds sont des interactions,Les lignes de vie et les messages n'apparaissentpas à ce niveau,Mélange diagramme de séquences etdiagramme d'activités.Introduction à UML76

Exemple de diagrammed'interaction globalerefEtablireAcces(){0.25}sd: Utilisateur: uction à UML77

Exemple de diagrammed'interaction globale[CodeValide]sd: Utilisateur: SystemeAccesMsg(''Svp Entrez'')ref18/12/06OuvrirPorte()Introduction à UML{0.14}78

Exemple de diagrammed'interaction globalerefEtablireAcces(){0.25}sd use :Interaction: Utilisateur: SystemeAccesRéférence simplifiéeà une interactionreprésentée de manière Introduction à UML79

Exemple de diagrammed'interaction globalerefEtablireAcces(){0.25}sd: UtilisateurContrainte: SystemeAccesde duréeCarteRetiree[CodeValide]18/12/06Introduction à UML80

Exemple de diagrammed'interaction globalerefEtablireAcces(){0.25}sd: Utilisateur: SystemeAccesCarteRetireeInteractionInteraction développée dans[CodeValide]un sous diagramme.18/12/06Introduction à UML81

Exemple de diagrammed'interaction globale[CodeValide]sd: Utilisateur: SystemeAccesMsg(''Svp Entrez'')Contrainte d'interactionref(à rapprocher des uction à UML{0.14}82

Plan Introduction générale, Meta-modèle UML, Notion de vues d'un système, Diagrammes UML, 18/12/06A quelle étape de la création du SI utiliser lesdiagrammes UML ?Synthèse et conclusion.Introduction à UML83

Conception et UML 18/12/06Étude des diagrammes :–Une étude exhaustive des notations,–N'explique pas quand les appliquer,–Ni quels sont les diagrammes les plus importants,UML est simplement un outil pour aider à laconception :–Seul, il ne sert à rien,–Est englobé dans une méthodologie de conception,Introduction à UML84

Méthodologie de conceptionobjet 18/12/06Plusieurs méthodologies de conceptionexploitent l'outil UML :–Le Rational Unified Process (RUP),–La méthode Shlaer-Mellor,–CRC (Class, Responsabilities and Collaborators),–Extreme Programming (XP),Introduction à UML85

Méthodologies 18/12/06RUP :–Fournit une planification exhaustive des activités etartéfacts nécessaires au processus dedéveloppement,–Insiste sur l'aspect incrémental et itératif dudéveloppement,–Adaptée aux gros projets,Shlaer-Mellor–Insiste sur l'intégration et la simulation pour valider lesproduits pendant le processus de développement,–Adaptée aux projets temps réel,Introduction à UML86

Méthodologies 18/12/06CRC :–Basée sur la simplicité et sur la détermination desrôles pour mettre en évidence les classesnécessaires à la conception du système,–Utile pour aider les programmeurs à apprendre latechnologie orientée objet,XP :–Se concentre sur un environnement dedéveloppement idéal,–Mets l'accent sur le test continu et la communication,–Adapté pour les petits projets évolutifs.Introduction à UML87

Méthodologies Chaque méthodologie a ses avantages et sesinconvénients :– Choisir la méthodologie adaptée au projet mené.En savoir plus sur les méthodologies dedéveloppement orientées objets :–http://www.cetus-links.org 18/12/06Lien OOAD methodologiesListe assez exhaustive de ressources sur le sujet,Environ une cinquantaine de méthodologies répertoriées.Introduction à UML88

Étapes importantes deconception Itérations comportant 5 étapes :–Étape 1 : Analyse des besoins –Étape 2 : Détermination des interfaces, –Diagramme de séquences,Étape 5 : Regroupement des fonctionnalités, 18/12/06Diagramme de classes,Étape 4 : Définition des interactions, –Diagramme de collaborations/communications,Étape 3 : Élaboration de la vue statique, –Diagramme des cas d'utilisation,Diagramme de paquetages et de composants,Introduction à UML89

Étape 1 : Analyse des besoins 18/12/06Phase où techniciens et non techniciens seréunissent pour définir les fonctionnalités et lesobjectifs du système.En général : création de 10 à 12 cas d'utilisationde haut niveau,Puis subdivision :–L'équipe de test prépare les tests à l'aide desscénarios de cas d'utilisation,–L'équipe de développement re-subdivise les casd'utilisation en cas d'utilisation bas-niveau.Introduction à UML90

Étape 2 : détermination desinterfaces 18/12/06A partir des cas d'utilisation, le diagramme descollaborations peut être tracé,Il permet de trouver le comportement des diversobjets au travers des cas d'utilisation,Clarification du fonctionnement :–Transition d'un modèle haut-niveau aux objets,–Définition du cycle de vie des objets rattachés àchaque cas d'utilisation,–Permet de déterminer quelles invocations deméthodes créent des collaborations,Introduction à UML91

Étape 3: Élaboration de la vuestatique 18/12/06Le diagramme de collaboration donne lesinterfaces des objets et donc des classes,Les relations statiques entre les objets doiventêtre déterminées :–Types d'objets employés,–Interfaces spéciales à implémenter,–Détermination des dépendances,–Détermination des compositions et des agrégations,–Attributs et opérations à créer pour chaque classe,Introduction à UML92

Etape 4 : Définition desinteractions 18/12/06Les diagrammes de séquence vont aider àstructurer les appels de méthodes,Permet d'approfondir les séquences decollaboration,Permet d'analyser la conception des classes,Fournit un fil directeur clair pour l'implémentationdes classes.Introduction à UML93

Étape 5 : Regroupement desfonctionnalités 18/12/06Les diagrammes de paquetages et decomposants vont aider à définir les relations dedépendances entre objets à un plus haut niveauque celui des classes,Permet de faire comprendre comment l'itérationde développement va s'intégrer aux itérationsprécédentes.Introduction à UML94

Plan Introduction générale, Meta-modèle UML, Notion de vues d'un système, Diagrammes UML, 18/12/06A quelle étape de la création du SI utiliser lesdiagrammes UML ?Synthèse et conclusion.Introduction à UML95

Synthèse et conclusion Programmation objet :–Programmer en langage objet n'est pas concevoirobjet : –UML ne reste qu'un support de communication : 18/12/06Seule une analyse objet conduit à une solution objet (quirespecte les concepts de l'approche objet),Le langage de programmation est un moyend'implémentation, il ne garantit pas le respect des conceptsobjets,Son utilisation seule ne garantit pas le respect des conceptsobjets : il faut s'en servir à bon escient.UML et le langage ne restent que des outils !Introduction à UML96

Synthèse et conclusion Utilisation d'UML :–Multiplier les vues sur les modèles : –Rester simple : –18/12/06Un diagramme n'est qu'une vue partielle mais néanmoinsprécise d'un modèle,Utiliser les vues complémentaires (statiques/dynamiques),Utiliser plusieurs niveaux d'abstraction,Ne pas trop surcharger les diagrammes,Commenter les diagrammes (notes, textes, . )Utiliser des outils appropriés pour réaliser lesmodèles !Introduction à UML97

Ressources sur UML–Site officiel d'UML : –Site français sur UML (plus vieux) : –http://www.omg.org/Sondage : ite officiel de l'OMG : –http://uml.free.fr/Site d'IBM sur UML : /gtmodelisation5.htmIntroduction à UML98

Logiciels de modélisationUML 18/12/06Logiciels libres :–Umbrello: http://uml.sourceforge.net/–ArgoUML : http://argouml.tigris.org/–BoUML: http://bouml.free.fr/Logiciels propriétaires :–EclipseUML: http://www.eclipseuml.com–Poseidon : http://www.gentleware.com/–Rational rose : http://www.rational.com/–Together: http://www.borland.com/Introduction à UML99

18/12/06 Introduction à UML 4 Le méta-modèle UML UML : langage permettant de créer des modèles, UML : modélisation des modèles, un méta-modèle. Le méta-modèle UML est en 4 couches: (M3) métamétamodèle : (concept de métaclasse) Définit le langage pour la spécification des metamodèles, (M2) métamodèle : (concept de classe)

Related Documents:

to Design Patterns Part III Modeling Behavior: State Machines etc. Literature on UML §Official standard documents by OMG: www.omg.org, www.uml.org §Current version is UML 2.0 (2004/2005) §OMG documents: UML Infrastructure, UML Superstructure §Books: Pfleeger: Software Engineering 3rd ed., 2005 (mostly Chapter 6) Rumbaugh, Jacobson, Booch:

Praise for UML Distilled “UML Distilled remains the best introduction to UML notation. Martin’s agile and pragmatic approach hits the sweet spot, and I wholeheartedly recommend it!” —Craig Larman Author of Applying UML and Patterns “Fowler cuts through the complexity of UML to get users started quickly.”

diagramme de classes stereotype NomClasseAbstraite from nomPaquetage - attributPrivate : Type valeur # attributProtected : Type attributPublic . [UML 1.3] OMG UML Specification v. 1.3, OMG doc# ad/06-08-99 [UML 1.4] OMG UML Specification v. 1.4, UML Revision Task Force recommended final draft,

OOAD with UML Object Oriented Analysis and Design Using the UML . 2 UML Applied - Object Oriented Analysis and Design using the UML . . Objects 23 Terminology 24 The Object Oriented Strategy 24 Summary 25 AN OVERVIEW OF THE UML 26 The Use Case Diagram 27 The Class Diagram 28

UML unifies a number of visual design methodologies in software engineering, business modeling and management, database design, and others. UML Class diagrams are a subset of UML that is suitable for conceptual modeling of classes and databases Most used type of UML diagrams UML is also a graphic language for modeling dynamic aspects of a

To understand the UML, you need to form a conceptual model of the language, and this requires learning three major elements: Basic building blocks of the UML Rules Common Mechanisms in the UML Basic building blocks of the UML: Vocabulary of the UML can be defined 1. Things 2. Relationships 3. Diagrams Things in the UML

Visual Paradigm for UML Quick Start Page 5 of 30 Starting Visual Paradigm for UML You can start Visual Paradigm for UML by selecting Start Menu Visual Paradigm Visual Paradigm for UML 7.1 Enterprise Edition. Importing license key 1. After you enter VP-UML, you will be asked to provide license key in License Key Manager.

Andreas Wagner - Curriculum Vitae CURRICULUM VITAE Name Wagner Andreas . Date of birth 14.April 1966 . Place of birth Leibnitz, Austria . Nationality Austrian . Address CERN IT/IS . CH-1211 Geneva 23, Switzerland . Telephone 41.22.76.74888 . Private address Espace République, Rue de la Liberté 65