Uml diagramme de classes
Download
1 / 34

UML : DIAGRAMME DE CLASSES - PowerPoint PPT Presentation


  • 289 Views
  • Uploaded on

UML : DIAGRAMME DE CLASSES. UML : DIAGRAMME DE CLASSES. APPROCHE OBJET: Représentation d’un concept ou d’une chose , ayant des limites et un sens dans un contexte donné. Physique ou Abstraite Caractéristiques : Informations Identifiant Comportement Messages

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'UML : DIAGRAMME DE CLASSES' - yates


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

Uml diagramme de classes1
UML : DIAGRAMME DE CLASSES

APPROCHE OBJET:

Représentation d’un concept ou d’une chose, ayant des limites et un sens dans un contexte donné.

Physique ou Abstraite

Caractéristiques :

Informations

Identifiant

Comportement

Messages

Encapsulation


Uml diagramme de classes2
UML : DIAGRAMME DE CLASSES

CARACTERISTIQUES :

Informations : attributs décrivant l’objet

Identifiant : permet d’individualiser les objets entre eux

Comportement : implémenter sous forme de « méthodes »

Messages : moyen de communication entre objets

Encapsulation : gestion des accés


Uml diagramme de classes3
UML : DIAGRAMME DE CLASSES

DEFINITION :

Classe :

modélisation de l’ensemble des objets ayant :

attributs similaires

comportement en commun

relations communes avec d’autres objets

Œuvre littéraire

<< classe >>

‘Titre d’objet’: ‘Titre de classe’

Les Miséra-bles

Les fleurs

du mal

« Objet »

<< objet >>


Uml diagramme de classes4
UML : DIAGRAMME DE CLASSES

NOTATION :

Tout nom de classe commence par une majuscule

NomAttribut : type = ValeurInitiale

NomOpération(ListeArguments) : typeRetour

NomClasse

attributs

opérations


Uml diagramme de classes5
UML : DIAGRAMME DE CLASSES

ATTRIBUT :

Donnée gérée par la classe (donc pour toutes les instances)

Valeur unique par instance (mais la même peut être dans plusieurs occurrences)

Identifiant est un attribut :

particulier, autant de valeurs que d’instances

valeurs déterminent les instances de la classe

LIVRE

Référence

Nombre de page

Etat Prêté

Date du prêt en cours

Date de restitution


Uml diagramme de classes6
UML : DIAGRAMME DE CLASSES

OPERATIONS - METHODES:

Opération: effectuée par l’objet

Méthode : effectuée par la classe

Signature (notation) : NomOperation(arg1,arg2) : TypeOutput

Comportement : effets observables des opérations

LIVRE

Référence

Nombre de page

Date du prêt en cours

Créer(arg1,arg2…) : bool

Prêter(arg1,arg2…) : bool


Uml diagramme de classes7
UML : DIAGRAMME DE CLASSES

OPERATIONS :

Peut :

Accéder à ses propres attributs

Invoquer une autre opération de son propre objet

Invoquer une autre opération d’un autre objet (même classe ou autre classe)

Ne peut pas:

Accéder directement aux attributs d’un autre objet


Uml diagramme de classes8
UML : DIAGRAMME DE CLASSES

LIENS & ASSOCIATIONS:

Lien :

connexion physique ou conceptuelle entre instances de classes

Association:

Instance du lien (ex : rédiger, créer)

Rôle :

Spécifie la contribution (ex : être rédigée par)

Notation :

Nom : verbe

Navigation : via flèche

Par défaut : 2 sens


Uml diagramme de classes9
UML : DIAGRAMME DE CLASSES

TYPES ASSOCIATIONS:

Association binaire : associe 2 classes

AUTEUR

OEUVRE

créer


Uml diagramme de classes10
UML : DIAGRAMME DE CLASSES

TYPES ASSOCIATIONS:

Association n-aire : associe plus de 2 classes

PERSONNE

PROJET

affecter

FONCTION


Uml diagramme de classes11
UML : DIAGRAMME DE CLASSES

TYPES ASSOCIATIONS:

Association réflective : associe une classe à elle même

Dans ce cas, indispensable de nommer les associations (rôles)

Être pré requis de

UE

ANNEE

associer

A pour pré requis


Uml diagramme de classes12
UML : DIAGRAMME DE CLASSES

CLASSE D’ASSOCIATION:

Définition : classe liée à une association

Classe qui a les caractéristiques d’une association ou Association qui a les caractéristiques d’une classe.

Nécessaire quand attributs ou opérations liées à l’ensemble des classes de l’association

Utile pour simplifier

ARTICLE

ENTREPOT

0..*

0..*

Référence article

Libellé article

Numéro entrepôt

Nom entrepôt

stocker

Quantité stockée


Uml diagramme de classes13
UML : DIAGRAMME DE CLASSES

MULTIPLICITES (cardinalités):

SERVICE

0 .. 1

0 .. 1

0 .. 1

rattacher à

diriger

prêter

*

1

1 .. *

PERSONNE


Uml diagramme de classes14
UML : DIAGRAMME DE CLASSES

CLASSES PERSISTANTES :

DEFINITION :

Une classe est persistante quand elle perdure dans le temps

LISTE DES

COMMANDES

A LIVRER

COMMANDE

 inclure

Id Commande

Livrée O/N

etc...

0..1

0..*

Classe persistante

Classe non persistante


Uml diagramme de classes15
UML : DIAGRAMME DE CLASSES

CONCEPTS AVANCES…


Uml diagramme de classes16
UML : DIAGRAMME DE CLASSES

AGREGATION

DEFINITION :

Forme d’association qui spécifie qui spécifie la relation entre un ensemble ou « composé » et sa partie ou « composant ».

Contrainte D’intégrité Fonctionnelle FAIBLE

Agrégation

composant

0 .. 1

composé


Uml diagramme de classes17
UML : DIAGRAMME DE CLASSES

AGREGATION

La partie (composant) peut exister sans l’agrégat (composé)

Si le composé (agrégat) disparaît, le composant (partie) peut continuer d’exister

VOITURE

1..1

1..1

1..1

4..4

Roue

Chassis

Moteur

Carrosserie


Uml diagramme de classes18
UML : DIAGRAMME DE CLASSES

COMPOSITION

DEFINITION :

Forme d’agrégation quand l’ensemble ou « composé » est responsable de la création et de la destruction de ses parties.

Le Composant n’existe que dans l’association au composé.

Contrainte D’intégrité Fonctionnelle FORTE

Composition

Hôtel

Chambre d’hôtel

1 .. 1

composant

composé


Uml diagramme de classes19
UML : DIAGRAMME DE CLASSES

COMPOSITION

La partie (composant) n’existe pas sans l’agrégat (composé)

Si le composé (agrégat) disparaît le composant (partie) disparait aussi

SOCIETE

1..*

1..*

1..1

SIEGE

AGENCE

USINE


Uml diagramme de classes20
UML : DIAGRAMME DE CLASSES

MULTIPLICITES DES AGREGATIONS ET COMPOSITIONS:

Une agrégation peut avoir N maxi du côté de la classe agrégat

car l’élément agrégeant peur servir (en même temps ou successivement) à plusieurs agrégats

Une composition ne peut avoir que 1..1 du côté de la classe composée

car le composant, ne pouvant exister indépendamment du composé, est obligatoirement lié à un seul

ETABLISSEMENT

VOITURE

SOCIETE

MOTEUR

1..1

1..N

1..1

O..N

Un moteur peut appartenir à plusieurs voitures (mais à une seule voiture en même temps)


Uml diagramme de classes21
UML : DIAGRAMME DE CLASSES

LA CLASSIFICATION :

2 Approches :

La généralisation

La spécialisation

généralisation

spécialisation

SUPER CLASSE

Classe plus générale

SOUS CLASSE

Classe plus détaillée


Uml diagramme de classes22
UML : DIAGRAMME DE CLASSES

GENERALISATION:

Factoriser les éléments communs (attributs, opérations, contraintes) d’un ensemble de classes dans une classe plus générale appelée Super-Classe (ou classe mère).

Tous les attributs qui se trouvent dans la Super-Classe sont vrais dans toutes les sous-classes.

OISEAU

Plume

Bec

Voler

MESANGE

MOINEAU


Uml diagramme de classes23
UML : DIAGRAMME DE CLASSES

VEHICULE

HERITAGE MULTIPLE:

TAPIS

MARIN

TERRESTRE

AERIEN

TAPIS VOLANT


Uml diagramme de classes24
UML : DIAGRAMME DE CLASSES

CONTRAINTES DE GENERALISATION:

Une classe peut être spécialisée selon plusieurs critères.

Certaines contraintes peuvent être posées sur les relation de généralisations.

Par défaut, la généralisation symbolise une décomposition exclusive.

VEHICULE

motorisation

milieu

MARIN

A MOTEUR

A VOILE

TERRESTRE

AERIEN


Uml diagramme de classes25
UML : DIAGRAMME DE CLASSES

CHAMPIGNON

CONTRAINTES DE GENERALISATION :

{ INCOMPLET DISJOINT} ( = {EXCLUSION} )

Un champignon peut être :

Soit un agaricus

Soit un Boletus

Ou Aucun des deux.

{exclusion}

Agaricus

Boletus

Pied Bleu

Bolet de Loup


Uml diagramme de classes26
UML : DIAGRAMME DE CLASSES

CONTRAINTES DE GENERALISATION :

{ COMPLET DISJOINT} ( = {PARTITION} )

Une personne est :

Soit Mineure

Soit majeure

Mais pas les deux.

PERSONNE

{partition}

MINEUR

MAJEUR


Uml diagramme de classes27
UML : DIAGRAMME DE CLASSES

CONTRAINTES DE GENERALISATION:

{ COMPLET RECOUVREMENT} ( = {TOTALITE} )

Un Musicien est obligatoirement :

Soit un compositeur

Soit un interprète

Soit les deux.

MUSICIEN

{Totalité}

Compositeur

Interprète


Uml diagramme de classes28
UML : DIAGRAMME DE CLASSES

CONTRAINTES D’ASSOCIATIONS:

{ INCOMPLET RECOUVREMENT} ( = {AUCUNE CONTRAINTE} )

Une Société peut être :

Client

Fournisseur

Ou autre chose…

Société

{aucune contrainte}

Client

Fournisseur


Uml diagramme de classes29
UML : DIAGRAMME DE CLASSES

POLYMORPHISME

Une opération est polymorphe lorsque :

Elle est appelée sous forme générique au niveau de la Super-Classe

Elle est spécifiée au niveau de chaque Sous-Classe

Forme

surface

CalculerSurface()

Cercle

Carré

R

Pi

Cote

CalculerSurface(){

Sf = pi * R * R;

}

CalculerSurface(){

Sf = cote*cote;

}


Uml diagramme de classes30
UML : DIAGRAMME DE CLASSES

CONSEILS Généralisation - spécialisation:

Ne spécialiser que si cela apporte un gain.

Ne spécialiser que sur un seul niveau

Par défaut, la généralisation symbolise une décomposition exclusive.


Uml diagramme de classes31
UML : DIAGRAMME DE CLASSES

CLASSES ABSTRAITES :

Ne peut être instanciée

On instancie une sous-classe.

Indiquée en italique de manière générale.


Uml diagramme de classes32
UML : DIAGRAMME DE CLASSES

<<Interface>> Vendeur

CLASSES D’INTERFACE:

Décrit le comportement externe visible d’une classe, d’un objet ou d’une autre entité.

1

Créer()

Modifier()

Consulter()

Client

1

Public Créer()

Public Modifier()

Public Consulter()

<<Interface>> Secrétaire

1

1

Consulter()

Client

Vendeur

Public Créer()

Public Modifier()

Public Consulter()

Secrétaire