Top Banner
Pierre PARREND 1 Mars 2005 Cours de Génie Logiciel Sciences-U Lyon Diagrammes UML http://www.rzo.free.fr
86

Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Oct 16, 2018

Download

Documents

hoangbao
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 1 Mars 2005

Cours de Génie Logiciel

Sciences-U Lyon

Diagrammes UML

http://www.rzo.free.fr

Page 2: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 2 Mars 2005

Sommaire

● Les Diagrammes UML● Niveaux de modèles

● Eléments communs aux diagrammes

● Diagrammes de cas d'utilisation

● Diagrammes de Classes

● Diagrammes d'Objets

● Diagrammes de Séquence

Page 3: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 3 Mars 2005

Niveaux de Modèles

● Les Niveaux de modèles

UML

Page 4: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 4 Mars 2005

Sommaire

● Les Diagrammes UML● Niveaux de modèles

● Eléments communs aux diagrammes

● Diagrammes de cas d'utilisation

● Diagrammes de Classes

● Diagrammes d'Objets

● Diagrammes de Séquence

Page 5: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 5 Mars 2005

Eléments communs

● Eléments communs aux diagrammes● Note

● Dépendance● Modification dans la cible implique modification dans la source

Page 6: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 6 Mars 2005

Eléments communs

● Eléments communs aux diagrammes● Héritage ● Packages

Page 7: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 7 Mars 2005

Eléments communs

● Eléments communs aux diagrammes● Stéreéotypes

● Classe prédéfine

● <<acteur>>

Page 8: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 8 Mars 2005

Sommaire

● Les Diagrammes UML● Niveaux de modèles

● Elements communs aux diagrammes

● Diagrammes de cas d'utilisation

● Diagrammes de Classes

● Diagrammes d'Objets

● Diagrammes de Séquence

Page 9: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 9 Mars 2005

Cas d'utilisation

● Les Diagrammes de cas d'utilisation● Objectif : détermination des besoins

● Fonctionnalités du système

● Acteurs

● Cas d'utilisation

● Relations entre les 2● association

● Système

Page 10: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 10 Mars 2005

Cas d'utilisation

● Les Diagrammes de cas d'utilisation● Formalisation du cahier des charges

● Evolutions du système

● Centrés sur l'utilisateur

● Expression simple● Permet le dialogue entre le client et le développeur

● Point de départ du développement

Page 11: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 11 Mars 2005

Cas d'utilisation

● Les Diagrammes de cas d'utilisation

Utilisateur Analyste Architecte Programmeur Testeur

Exprimer

ComprendreConcevoir

Réaliser

Vérifier

Page 12: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 12 Mars 2005

Cas d'utilisation

● Les acteurs● 1 acteur = plusieurs personnages

● Ex : acheteurs

● 1 personnage = plusieurs acteurs● Ex : boulanger, vendeur

● Toute personne qui interagit avec le système

Page 13: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 13 Mars 2005

Cas d'utilisation

● Les acteurs● Acteurs principaux

● Ex : client, dans le cas d'un distributeur de billets

● Acteurs secondaires● Maintenance, tâches administratives

● Matériel externe● Indispensable au domaine. Ex : imprimante pour le reçu

● Autres systèmes● Ex : système bancaire

Page 14: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 14 Mars 2005

Cas d'utilisation

● Les cas d'utilisation● Stéréotype

● <<acteur>>

● Nom● Eleve

● Propriété● Cours = “Genie Logiciel”

Page 15: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 15 Mars 2005

Cas d'utilisation

● Les cas d'utilisation● Relation de généralisation

● Relation d'inclusion●

● Relation d'extension

Page 16: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 16 Mars 2005

Cas d'utilisation

● Les cas d'utilisation● Représentent

● Les tâches de l'acteur

● Informations créées ou utilisées par l'acteur

● Changements externes nécessaires au système

● Doivent être simples● Possibilité de les fractionner

● A partir de scénarii

Page 17: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 17 Mars 2005

Cas d'utilisation

● Les cas d'utilisation● Analyse

● Pas conception

● 'Build the right system'● Pas 'Build the system right'

● Passage à une vue Objet indispensable● Pour la réalisation du système

Page 18: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 18 Mars 2005

Sommaire

● Les Diagrammes UML● Niveaux de modèles

● Eléments communs aux diagrammes

● Diagrammes de cas d'utilisation

● Diagrammes de Classes

● Diagrammes d'Objets

● Diagrammes de Séquence

Page 19: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 19 Mars 2005

Sommaire

● UML : Diagrammes de Classes● Présentation

● Classes

● Associations

● Autres types de classes

● Exemples

Page 20: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 20 Mars 2005

Diagrammes de Classes

● Présentation● Structure statique des systèmes

● Contient● Classes

● Relations entre ces classes

● Interfaces

● Packages

Page 21: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 21 Mars 2005

Diagrammes de Classes

● Présentation● Classe

● Instanciée par des objets

● Unique dans un package

● Syntaxe : 'nomPackage :: nomClasse'

● Stéréotype, propriétés

● Associations● Instanciées par des liens

Page 22: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 22 Mars 2005

Diagrammes de Classes

● Présentation● Interface

● 'Vue totale ou partielle sur un ensemble de services'

● Descripteur des opérations

● Sans code

● Pas d'attribut

● Pas d'association

Page 23: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 23 Mars 2005

Diagrammes de Classes

● Présentation● Package

Page 24: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 24 Mars 2005

Sommaire

● UML : Diagrammes de Classes● Présentation

● Classes

● Associations

● Autres types de classes

● Exemples

Page 25: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 25 Mars 2005

Sommaire

● UML : Diagrammes de Classes : Classes● Attributs et Opérations

● Classes paramètrables

● Stéréotypes

● Mots Clés

Page 26: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 26 Mars 2005

Diagrammes de Classes

● Classes : Attributs et Opérations● Les compartiments

● Nom de la classe

● Attributs

● Opérations

Page 27: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 27 Mars 2005

Diagrammes de Classes

● Classes : Attributs et Opérations● Attributs

● Ce qu'est la classe

● Nom : type = valeur initiale

● Test : boolean = false

● Peut être constant

● 'const'

● Représentation par la composition

● Voir Associations

● Représentation implicite

Page 28: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 28 Mars 2005

Diagrammes de Classes

● Classes : Attributs et Opérations● Attributs

● Attributs dérivés

● '/surface'

Page 29: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 29 Mars 2005

Diagrammes de Classes

● Classes : Attributs et Opérations● Opérations

● Ce que fait la classe

● Nom (nom de paramètre : type de paramètre) : type de Retour

● multiplier(a : int, b : int) : int

● Propriétés

● Direction des arguments des opérations

● Types d'opération

Page 30: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 30 Mars 2005

Diagrammes de Classes

● Classes : Attributs et Opérations● Opérations

● Propriétés

● Directions d'un argument d'une opération

● In – argument en entrée, non modifié par l'opération

● Out – argument en sortie, récupération d'information

● Inout – argument passé à l'opération et modifiable

Page 31: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 31 Mars 2005

Diagrammes de Classes

● Classes : Attributs et Opérations● Opérations

● Propriétés

● Des Opérations

● {request} – pas de modification de l'état de l'instance appelée

● {abstract} – opération non implémentée

● {final} – opération qui ne peut pas être redéfinie dans une sous-

classe

● {isRoot} – racine, opération définie pour la première fois dans la

hiérarchie des classes

Page 32: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 32 Mars 2005

Diagrammes de Classes

● Classes : Attributs et Opérations● Visibilité

● Pour attributs et opérations

● + public

● Accessible par tous les objets (dans et hors de la classe)

● # protected

● Accessible seulement par la classe et les sous-classes

● - private

● Accessible seulement par les objets de la classe

Page 33: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 33 Mars 2005

Diagrammes de Classes

● Classes : Attributs et Opérations● Compartiments supplémentaires

● En plus du Nom de Classe, Attributs, Opérations

● Responsabilité de la classe

● Evènements générés

● Représenté aussi par une relation de dépendance stéréotypée

<<envoie>>

● Exceptions acceptées

Page 34: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 34 Mars 2005

Sommaire

● UML : Diagrammes de Classes : Classes● Attributs et Opérations

● Classes paramètrables

● Stéréotypes

● Mots Clés

Page 35: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 35 Mars 2005

Diagrammes de Classes

● Classes : Classes paramètrables● = classes templates

● Patron de classe : attributs, valeurs par défaut, opérations

● Langages Eiffel, C++

● Utilisé en conception détaillée

Classe paramétrable

Paramètreformel

Table génétique

Elément dela table

Page 36: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 36 Mars 2005

Sommaire

● UML : Diagrammes de Classes : Classes● Attributs et Opérations

● Classes paramètrables

● Stéréotypes

● Mots Clés

Page 37: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 37 Mars 2005

Diagrammes de Classes

● Classes : Stéréotypes (1)● Définition

● Extension du langage UML

● Précision sur le type

● De Classe

● D'Association

'Création d'un nouvel élément de modélisation par extensionde la sémantique d'un élément du méta-modèle'

Page 38: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 38 Mars 2005

Diagrammes de Classes

● Classes : Stéréotypes (2)● Différents stéréotypes

● <<classe implémentation>>

● Dans un langage de programmatin donné

● <<énumération>>

● Domaine de valeur d'un type

● <<méta-classe>>

● Classe d'une classe

● <<powertype>>

● Représente un type

● Ses instances sont des sous-types de ce type

Page 39: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 39 Mars 2005

Diagrammes de Classes

● Classes : Stéréotypes (3)● Différents stéréotypes

● <<processus>>

● Flux de contrôle lourd

● <<thread>>

● Flux de contrôle léger

● <<type>>

● Domaine d'objets

● Opération sur ce domaine

● <<utilitaire>>

● Regroupement d'opérations (Ex : Math)

● Pas instanciables

Page 40: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 40 Mars 2005

Sommaire

● UML : Diagrammes de Classes : Classes● Attributs et Opérations

● Classes paramètrables

● Stéréotypes

● Mots Clés

Page 41: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 41 Mars 2005

● Classes : Mots clés (1)● Différents des stéréotypes

● Propre à un métamodèle donné

● Pas partie intégrante des spécifications UML

Diagrammes de Classes

Page 42: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 42 Mars 2005

● Classes : Mots clés (2)● Exemples fréquents

● <<acteur>>

● Ensemble de rôles joués par un acteur dans le système

● <<interface>>

● Descripteurs des opérations, sans code

● <<signal>>, <<exception>>

● Communication entre les classes

● Hors appel de méthode

Diagrammes de Classes

Page 43: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 43 Mars 2005

Sommaire

● UML : Diagrammes de Classes● Présentation

● Classes

● Associations

● Autres types de classes

● Exemples

Page 44: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 44 Mars 2005

● Associations● Relation structurelle entre deux classes d'objets

● Durée de vie non négligeable● Par rapport aux objets qui instancient les classes concernées

● Relie deux classificateurs● Classes, interfaces

● Parfois plus : association représentée par une classe

Diagrammes de Classes

Page 45: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 45 Mars 2005

● Associations● Représentation

Diagrammes de Classes

● Signification● On accède à la classe 1 depuis la classe 2

● On accède à la classe 2 depuis la classe 1

Page 46: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 46 Mars 2005

● Associations● Nommage

● Souvent forme verbale

● Active : travaille pour (Personne<->societe)

● Passive : est employé par (Personne<->societe)

● Lecture

● Sens précisé par < ou >

● De gauche à droite par défaut

Diagrammes de Classes

Page 47: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 47 Mars 2005

● Associations● Rôles

● Extrémité d'une association

● Indication des rôles relatifs des deux classes reliées par association

● Pseudo-attribut de la classe source

● Ex : Employeur est un pseudo attribut de la classe Personne

● Indication de visibilité

● Public par défaut

● Privé (-) ou protégé (#)

Diagrammes de Classes

Page 48: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 48 Mars 2005

● Associations● Associations multiples

● Concepts distncts dans la classe source

● Ici : dans Avion, attributs Pilote et Passagers

● Pas les mêmes personnes

● Sinon, erreur

Diagrammes de Classes

Page 49: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 49 Mars 2005

● Associations● Associations multiples

Diagrammes de Classes

Public class Avion{

Personne pilote;Personne passager1;Personne passager2;

Personne getPilote(){return pilote;}

List getPassagers(){return List.add(passager1, pas-sager2)}}

Page 50: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 50 Mars 2005

● Associations● Types

● Généralisation

● Agrégation

● Composition

Diagrammes de Classes

Page 51: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 51 Mars 2005

● Associations● Généralisation

● Une classe générique (super classe)

● Une classe spécialisée (classe fille)

Diagrammes de Classes

Page 52: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 52 Mars 2005

● Associations● Généralisation

● Exemple

Diagrammes de Classes

public class SuperClasse{}

public class Classe extends SupperClasse{}

Page 53: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 53 Mars 2005

● Associations● Généralisation

● Classes abstraites

Diagrammes de Classes

Page 54: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 54 Mars 2005

● Associations● Agrégation

● Les Elements existent indépendamment de l'ensemble

Diagrammes de Classes

Page 55: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 55 Mars 2005

● Associations● Agrégation

● Modélisation d'une contrainte d'intégrité

● Propagation de valeur d'une classe vers une autre

● Propagation d'action d'une classe vers une autre

● Exemple

● personne propriétaire d'un immeuble

● Proprétaire multiple: co-propriétaires

Diagrammes de Classes

Page 56: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 56 Mars 2005

● Associations

Diagrammes de Classes

public class Immeuble {/** * @poseidon-type Personne */ public java.util.Collection Proprietaire = new java.util.TreeSet(); }

public class Personne {/** * @poseidon-type Immeuble */ public java.util.Collection immeuble = new java.util.TreeSet(); }

Page 57: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 57 Mars 2005

● Associations● Composition

● Les élements sont spécifiques à l'ensemble : ne peuvent pas être

partagés (ex : roue de vélo)

● L'ensemble n'existe que par la présence des éléments

● Et disparait avec le dernier élément

Diagrammes de Classes

Page 58: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 58 Mars 2005

● Associations● Composition

● Cas particulier d'agrégation

● Couplage plus fort

● Durée de vie identique pour le composant et le composite

Diagrammes de Classes

Page 59: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 59 Mars 2005

● Associations● Composition

Diagrammes de Classes

public class Velo {/** * @poseidon-type Roue */ public java.util.Collection roue = new java.util.TreeSet(); }

public class Roue {/** * <p></p> */ public Vélo vélo; }

Page 60: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 60 Mars 2005

● Associations● Classe d'association

● L'association peut être manipulée

Diagrammes de Classes

Page 61: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 61 Mars 2005

● Associations● Arité

● Associations binaires - classiques

● Associations n-aires

● Parfois représentées par un losange

Diagrammes de Classes

Page 62: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 62 Mars 2005

● Associations● Multiplicité

● Contraintes liées au domaine d'application

● Valable pendant toute la vie de l'objet

● Pas d'influence sur l'ordre de création des objets (associations simples)

Diagrammes de Classes

Page 63: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 63 Mars 2005

● Associations● Multiplicité

● possibilités

Diagrammes de Classes

1Un seul0..1 Zéro ou unN N (entier naturel)M..N De M à N (entiers naturels)* De zéro à plusieurs0..* De zéro à plusieurs1..* D'un à plusieurs

Page 64: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 64 Mars 2005

● Associations● Contraintes : exemples

● Peuvent être également exprimer par le langage OCL

● Object Contraint Language

Diagrammes de Classes

{ordonné}

{sous-ensemble}

Page 65: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 65 Mars 2005

● Associations● Navigabilité

● Possibilité d'accès d'une classe à l'autre

● Association orientée

● Compte est un attribut de Personne

Diagrammes de Classes

Page 66: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 66 Mars 2005

● Associations● Navigabilité

● Association bidirectionnelle

● Une modification dans une classe est répercutée dans la classe

associée

● Complexe si association en chaîne

● Erreur si boucle d'associations

Diagrammes de Classes

Page 67: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 67 Mars 2005

● Associations● Dépendances

● 'Associations légères'

Diagrammes de Classes

<<appelle>>

● Liaison● <<lie>>

● Permission● <<ami>>

● Abstraction● <<crée>>

● <<dérive>>

● <<raffine>>

● <<réalise>>

● <<trace>>

● Liaison● <<lie>>

● Permission● <<ami>>

● Utilisation● <<utilise>>

● <<instancie>>

● <<appelle>>

Page 68: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 68 Mars 2005

Sommaire

● UML : Diagrammes de Classes● Présentation

● Classes

● Associations

● Autres types de classes

● Exemples

Page 69: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 69 Mars 2005

Sommaire

● Autres Classes● Classes actives

● Réification de flots de contrôle

● = classe stéréotypée

● <<thread>> ou

● <<processus>>

● Émission et réception de signaux, d'évènements

Page 70: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 70 Mars 2005

Sommaire

● UML : Diagrammes de Classes● Présentation

● Classes

● Associations

● Autres types de classes

● Exemples

Page 71: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 71 Mars 2005

● Exemples● Interfaces

Diagrammes de Classes

Page 72: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 72 Mars 2005

Sommaire

● Les Diagrammes UML● Niveaux de modèles

● Eléments communs aux diagrammes

● Diagrammes de cas d'utilisation

● Diagrammes de Classes

● Diagrammes d'Objets

● Diagrammes de séquence

Page 73: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 73 Mars 2005

Sommaire

● UML : Diagrammes d'Objet● = Diagrammes d'instances

● Objets et liens

● Structure statique

● Permet d'identifier les objets présents● Avant de réaliser le diagramme de classe

Nom de l'objet:Classe[Etat]

Page 74: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 74 Mars 2005

Sommaire

● UML : Diagrammes d'Objet● Exemple

Tuture:Voiture[Roule]

Paul:Personne[Conduit]

Proprietaire

Tuture:Voiture[EnPanne]<<Devient>>

Page 75: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 75 Mars 2005

Sommaire

● Les Diagrammes UML● Niveaux de modèles

● Eléments communs aux diagrammes

● Diagrammes de cas d'utilisation

● Diagrammes de Classes

● Diagrammes d'Objets

● Diagrammes de Séquence

Page 76: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 76 Mars 2005

Diagrammes deSéquence

● Les Diagrammes de séquence● Interactions entre objets

● Voir diagrammes de collaboration

● Représentation des interactions dans le temps

● Scénarii complexes● Avec un nombre limité d'objets

Page 77: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 77 Mars 2005

Diagrammes deSéquence

● Les Diagrammes de séquence● Instances

● Objet

● Ligne de vie

● Message● Activation de l'instance émitrice

● Message

● Activation de l'instance receptrice

● Réponse

● Activation de l'instance émitrice

Page 78: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 78 Mars 2005

Diagrammes deSéquence

● Les Diagrammes de séquence● Message de Creation

● Message de Termination

Page 79: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 79 Mars 2005

Diagrammes deSéquence

● Les Diagrammes de séquence● Catégories de messages

● Synchrone

● Asynchrone

Page 80: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 80 Mars 2005

Diagrammes deSéquence

● Les Diagrammes de séquence● Appel de procédure

● Plusieurs représentations

Page 81: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 81 Mars 2005

Diagrammes deSéquence

● Les Diagrammes de séquence● Catégories d'envoi de message

● Appel d'un objet à lui-même

● Flot de contrôle à plat

● Appel de procédure

● = flot de contrôle emboité

● Retour d'appel de procédure

Page 82: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 82 Mars 2005

Diagrammes deSéquence

● Les Diagrammes de séquence● Catégories d'envoi de message

● Appel d'un objet à lui-même

Page 83: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 83 Mars 2005

Diagrammes deSéquence

● Les Diagrammes de séquence● Catégories d'envoi de message

● Flot de contrôle à plat

Page 84: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 84 Mars 2005

Diagrammes deSéquence

● Les Diagrammes de séquence● Catégories d'envoi de message

● Appel de procédure

● = flot de contrôle emboité

Page 85: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 85 Mars 2005

Diagrammes deSéquence

● Les Diagrammes de séquence● Catégories d'envoi de message

● Retour d'appel de procédure

● Fin d'activation d'objet

● != fin de vie d'objet

Page 86: Cours de Génie Logiciel - rzo.free.fr · Pierre PARREND 2 Mars 2005 Sommaire Les Diagrammes UML Niveaux de modèles Eléments communs aux diagrammes Diagrammes de cas d'utilisation

Pierre PARREND 86 Mars 2005

Diagrammes UML

● Bilan● Analyse : diagrammes de cas d'usage

● Conception : diagramme de classes

● Implémentation : classes et séquences