Vous êtes sur la page 1sur 37

Analyse et conception

oriente objet

FORMATRICE : A.KHALIL

Plan

Dmarche danalyse et conception oriente

objet
Dfinition des besoins
Analyse
Conception
Outils de modlisation

Analyse
Diagramme de classe

Il

reprsente les lments de modlisation


statique : les classes, leur contenu et leurs relations

Vhicule

Voiture

Moteur

Bus

Constructeur

Analyse
Diagramme de classe

Une classe dcrit un groupe d'objets ayant des

proprits similaires (attributs), un comportement


commun (oprations), des relations communes
avec les autres objets
Reprsentation graphique dune classe :

NomDeLaClasse
attributs
oprations ( )

Analyse
Diagramme de classe

Un attribut est une valeur de donne dtenue par

les objets d'une classe


Syntaxe :

visibilit nom : type = valeur-initiale

Visibilit : marqueur optionnel utilis en conception


+ (public): accessible tous
# (protg): accessible la classe et aux classes qui en
hritent
- (priv): accessible la classe seule
Rien : accessible aux classes du mme package
Valeur-initiale : servira donner la valeur initiale d'un
attribut la cration d'un nouvel objet

Analyse
Diagramme de classe

Exemple:

Les variables de classe (variable globale pour la

classe, partage par tous les objets de la classe et


accessible tous) sont prcdes par le symbole
$ ou elles sont soulignes

Analyse
Diagramme de classe

Une

opration est un service que l'on peut


demander un objet pour raliser un
comportement

Syntaxe :

visibilit nom (liste-paramtres) : type-retour


Liste-paramtres

: chacun tant spcifi comme suit :


Nom : type [= valeur-dfaut]
Type-retour : (optionnel) Si lopration en retourne un

Analyse
Diagramme de classe

Exemple:

Analyse
Diagramme de classe

Liens et association

Un lien est une instance d'association

Une association dcrit un groupe de liens ayant une


structure et une smantique commune

Pour amliorer la lisibilit, l'association peut tre


dcore par une forme verbale active ou passive

Le sens de la lecture peut tre prcis

Analyse
Diagramme de classe

Une association peut tre binaire, ternaire, d'ordre


quatre ou plus

Une association ternaire est ncessaire quand elle ne


peut pas tre subdivise en associations binaires sans
perte d'information

Analyse
Diagramme de classe

Multiplicit

Prcise combien d'instances d'une classe peuvent se


rattacher une seule instance d'une classe donne

La notation gnrale adopte est :


1

min . . Max

obligatoire

0..1

optionnel

0..*

(ou *) quelconque (cas gnral)

1..*

au moins 1

1..5,10entre 1 et 5, ou 10

Analyse
Diagramme de classe

La multiplicit est crite au bout du trait symbolisant


l'association

Analyse
Diagramme de classe

Contrainte:

C'est une relation smantique entre des lments du


modle qui spcifie des conditions ou propositions
devant rester vraies pour que le modle soit valide
Employ

Est membre

Dpartement

{sous ensemble}

Est chef

(Contrainte dinclusion)

Analyse
Diagramme de classe

La contrainte {or} ou {ou-exclusif} prcise qu'une seule


association est valide

Analyse
Diagramme de classe

L'agrgation est une forme d'association forte

dans laquelle un objet agrgat est fait de


composants
L'agrgation met en relation des instances d'objets:

Deux objets distincts sont englobs, lun des deux


est une partie de lautre
La dcision d'utiliser l'agrgation est affaire de

jugement et frquemment arbitraire


Une agrgation peut tre fixe si le nombre et les

types des sous-parties sont prdfinis

Analyse
Diagramme de classe

Agrgation

Analyse
Diagramme de classe

Une composition est une forme forte d'agrgation

dans laquelle le cycle de vie des


composantes est li celui du compos

parties

Les composants n'existent pas seuls: Ils peuvent

tre crs aprs le compos, mais ensuite ils vivent


et meurent avec lui
Si on dtruit le compos, les composants n'existent

plus

Analyse
Diagramme de classe

Composition

Analyse
Diagramme de classe

La gnralisation met en relation les classes et

constitue une faon de structurer la description dun


objet
La relation de classification correspond des

phrases du type : "est une sorte de"


Une instance d'une sous-classe est simultanment

une instance de toutes ses classes anctres


Principe de substitution de Liskov: une instance de

l'lment plus spcifique peut tre utilis l o


l'lment plus gnral est autoris

Analyse
Diagramme de classe

Analyse
Diagramme de classe

Un agrgat rcursif contient directement ou

indirectement une instance de la mme sorte


d'agrgat
Le nombre de niveaux est illimit
Un programme informatique est un agrgat de

blocs, incluant ventuellement des expressions


composes rcursives: Les blocs peuvent tre
imbriqus sur un nombre arbitraire de niveaux

Analyse
Diagramme de classe

Analyse
Diagramme de classe

Un package est un regroupement d'lments du

modle
Il peut comporter plusieurs types dentits (classes,
associations, package)
Un lment du modle, et plus particulirement une
classe, peut tre reprsente plusieurs fois dans un
modle
est alors bon dindiquer le package
Il
dappartenance dune classe comme suit :
NomPackage : : NomClasse

Analyse
Diagramme de classe
Packages

Analyse
Diagramme de classe

Le nom dune classe est unique dans un package


Par contre il est possible davoir deux classes de

mme nom dans des packages diffrents


Le systme entier peut tre vu comme un package

unique de haut niveau contenant tout le reste


On peut aussi reprsenter les dpendances entre

packages

Analyse
Diagramme de classe

Un strotype est un nouveau type d'lment de

modlisation
Un strotype permet de classer les lments du

modle en grandes familles


Il peut tre associ tout lment du modle

(classe, association, opration, attribut, package )


On

peut dfinir ses propres strotypes; par


exemple les classes dinterface

On peut mme y associer une icne

Analyse
Diagramme de classe

Analyse
Diagramme de classe

Exemples de strotypes:
Le strotype control : une classe interne au systme
qui contrle le comportement dun ou plusieurs cas
dutilisation

Le strotype entit : reprsente des phnomnes


internes au systme (souvent des objets persistants)

Analyse
Diagramme de classe

Pattern : Modle gnrique rsolvant un problme

classique et rcurrent

Solution qui a fait ses preuves, fonde sur l'exprience

Solution rutilisable dans des contextes diffrents

De plus en plus de Patterns sont disponibles au

travers de livres et publications

Design Patterns

Analysis Patterns

L'agrgat rcursif qui modlise les structures

arborescentes, est un exemple d'Analysis Pattern

Analyse
Diagramme de classe

Un attribut d'association est une proprit des

liens d'une association


Les associations plusieurs plusieurs sont la

justification la plus contraignante de l'existence des


attributs d'association
Un tel attribut est sans conteste une proprit du

lien et ne peut tre rattach l'un ou l'autre des


objets

Analyse
Diagramme de classe

Analyse
Diagramme dobjets

Les

diagrammes dobjets, ou diagramme


dinstances, montrent des objets et des liens

Ils sutilisent principalement pour montrer un

contexte ou pour faciliter la comprhension des


structures de donnes complexes
Un diagramme dobjets se distingue graphiquement

dun diagramme de classe car les noms dobjets sont


souligns

Analyse
Diagramme dobjets

Reprsentation:

Le nom seul correspond une modlisation incomplte


dans laquelle la classe de lobjet na pas encore t
prcise

Le nom de lobjet et sa classe spare par un double


point

La classe seule (lobjet est alors dit anonyme)

Analyse
Diagramme dobjets

Analyse
Diagrammes dobjets

Une note est un commentaire exprim dans un

format libre, afin de faciliter la comprhension du


diagramme
Les

traits discontinus permettent


nimporte quel lment une note

de

relier

Exercice
Diagrammes de classe

Soient les cas suivants :

Un rpertoire contient des fichiers

Une pice contient des murs

Les modems et claviers sont des priphriques dentre


/ sortie

Une transaction boursire est un achat ou une vente

Un compte bancaire peut appartenir une personne


physique ou morale

Elaborez les diagrammes de classe correspondants

chaque cas en choisissant le type de relation


appropri

Analyse
Diagrammes de classe

TD n 3

Vous aimerez peut-être aussi