Vous êtes sur la page 1sur 7

Mthodes danalyse et de conception

orient objet

Introduction
L'approche objet a pour but une modlisation des proprits statiques et dynamiques
de l'environnement dans lequel sont dfinis les besoins. Il est appel le domaine de problme.
Elle formalise notre perception du monde et des phnomnes qui s'y droulent et met en
correspondance l'espace de problme et l'espace de la solution, en prservant la structure et
le comportement du systme analys.

L'approche objet est loin d'tre une ide rcente. Simula, premier langage de
programmation a implment le concept de type abstrait l'aide de classes, date de 1967. En
1976, Smalltalk implment les concepts fondateurs de l'approche objet: encapsulation,
agrgation et hritage.

L'approche objet est donc devenue une ralit. Utiliser l'approche objet n'est plus une
mode, mais un rflexe quasi-automatique ds lors qu'on cherche concevoir des logiciels
complexes qui doivent rsister des volutions incessantes.

Bien que les racines de l'objet soient solidement ancres dans les annes 60, ce n'est
que vers les annes 80 que les mthodes objet ont commenc merger. Par la suite,
l'approche objet est devenue incontournable pour le dveloppement de systmes, qu'ils soient
industriels ou de gestion, de simulation ou de contrle de processus. Devant cet engouement
pour les techniques orientes objet, il est naturel de s'attendre une augmentation
du nombre de mthodes.

Aprs une dfinition des concepts de l'approche objet, une tude comparative des
quatre mthodes, les plus diffuses l'heure actuelle savoir.
OOA (Oriented Object Analysis);
OOD (Oriented Object Design);
OMI {Object Modeilng iechnic];
OOSE [Oriented Object Software Engineering].
Suivit d'une prsentation du langage UML et nous terminerons pas une conclusion sur
la modlisation et la conception oriente objet.


I. Les concepts de base de l'approche Object

Trois points de vue ont conduit la notion d'objet : le point de vue structurel, point de
vue conceptuel et le point de vue acteur.

Le point de vue structurel : l'objet est peru comme une instance d'un type de
donnes (classe) caractris par une structure coche par des oprations ;

Le point de vue conceptuel : l'objet correspond e un concept du monde rel qui
peut tre spcialis ;

Le point de vue acteur : l'objet est une entit autonome et active qui rpond a des
messages.

1. Objet
1.1. Dfinition

L'objet est une abstraction d'une occurrence d'entit du monde rel ou virtuel caractrise par
un identificateur unique et invariant, une classe d'appartenance et un tat reprsent par une
valeur simple ou structure. Il peut tre vu :

Objet = identit + comportement + tat.

L'identit : caractrise l'existence propre d'un objet. elle permet de le distinguer de
faon non ambigu, et cela indpendamment de son tat ;

Le comportement : regroupe toutes les comptences d'un objet et dcrit les actions et
les ractions de cet objet. Chaque atome de comportement est appel opration ou
mthode. Les oprations d'un objet sont dclenches suite l'envoi de message par un
autre objet.

l'tat : l'tat d'un objet, un moment donn, correspond une slection de valeurs,
parmi toutes les valeurs possibles des diffrents attributs d'un de cet objet, sachant
qu'un attribut est une information qui qualifi l'objet.

Exemple dobjet.

Lemploy, ALAMI Ayoub, n0001, g de 32 ans, travaille en tant que directeur de
lagence B.M.R
Nemploy : 0001 ;
Nom : Alami ;
Prnom : Ayoub ;
Age : 32 ;
Grade : directeur ;
Agence : B.M.R.
Le comportement de lobjet Employ est caractris par les oprations quil peut excuter.
Dans notre cas, nous pouvons avoir les oprations suivantes.
Nom en majuscule ;
Changer ge ;
Changer agence ;
Changer grade.

1.2. Communication entre objets
Le comportement global dune application repose sur la communication entre les objets qui
la composent. la communication entre objets du domaine dapplication est de premire
importance dans la modlisation objet , elle est ralise laide des envois de message.
Les messages : le message est lunit de communication entre objets, lenvoi de
message est le seul moyen daccder un objet, les messages permettent laction des
mthodes des objets. Envoyer un message un objet cest lui signifier ce quil doit
faire.

Figure 1 : Messages
Catgories de messages : il existe cinq catgories principales de messages.

Les constructeurs qui crent les objets ;
Les destructeurs qui dtruisent les objets ;
Les slecteurs qui renvoient tout ou une partie de ltat dun objet ;
Les modificateurs qui changent tout ou une partie de l'tat d'un objet ;
Les itrateurs qui visitent l'tat d'un objet ou le contenu d'une structure de
donnes qui contient plusieurs objets.

2. Classe
2.1. Dfinition
C'est une abstraction d'un ensemble d'objets qui possdent une structure identique (liste
des attributs) et mme comportement (liste des oprations). Un objet est une instance d'une et
une seule classe [MUL 98]. Une classe peut tre vue ainsi.

Classe = attributs + mthodes + lnstanclatlons.

Attribut : Une structure de donnes (identicateur et domaine de valeur)
caractrisant un aspect (ou une caractristique) de l'objet ;

Mthode : une opration (fonction ou procdure) reprsentant les services offerts
par l'objet et qui se traduisent par des applications sur les mmes objets. Chaque
mthode est dfinie par un nom, appel slecteur de la mthode. une liste de
paramtres (arguments de la mthode) et un corps de la fonction (ou de la
procdure) ;

Instanciation : Une classe est l'entit conceptuelle qui dcrit l'objet. Sa dfinition
sert de modle pour construire ses reprsentants physiques appels instances. Une
instance est ainsi. un objet particulier cre pour sa classe. qui joue le rle de moule
permettant de produire plusieurs exemplaires.

Exemple de classe

Nom de la classe
Employ
Attributs
N Nemploy ;
Nom ;
Prnom ;
Age ;
Grade ;
Agence.

Mthodes
Nom en majuscule ;
Changer ge ;
Changer grade ;
Changer agence


2.2. Les relations entre les classes
Les liens particuliers qui relient les objets peuvent tre vus de manire abstraite dans le
monde des classes : chaque famille de tiens entre objet correspond une relation entre les
classes de ces mmes objets. De mme que les objets sont instances de classes, les liens entre
objets sont instances de relations entre classes.
Association : Une association est une abstraction des liens qui existent entre les
objets instances des classes associes.
Exemple

Figure 2 : Association

Lassociation peut tre dcode par une forme verbale active ou passive comme il est
possible de prciser le rle dune classe au sein dune association, le rle est crit du cot de
la classe qui le joue.

Exemple


Figure 3 : Exemple Association
La classe Universit joue le rle de lemployeur pour les enseignants de la classe
personne, et la classe personne joue le rle denseignant pour la classe universit.
Les rles portent galement une information de multiplicit qui prcise le nombre
dinstances qui participent la relation.
Le tableau suivant rsume les valeurs de multiplicit les plus courantes.
1 Un et un seul
0.1 Zro ou un
M..N De M N (entiers naturels)
* De zro plusieurs
0..* De zro plusieurs
1..* De un plusieurs

Lagrgation
Lagrgation est une forme particulire dassociation qui exprime un couplage plus fort
entre les classes. L'une des classes joue un rle plus important que l'autre dans la relation.
L'agrgation permet de reprsenter des relations de type matre et esclave, tout et partie ou
compos et composant.
Exemple

Figure 4 : Agrgation
La socit reprsente l'agrgat pour la classe division qui reprsente lagrg pour
socit et l'agrgat pour dpartement. Lorsque la multiplicit de l'agrgat (comme pour notre
exemple) vaut l, la destruction de l'agrgat entrane la destruction des composants (agrgs).
2.3. Les hirarchies de classe
Les hirarchies de classe ou classification permettent de grer la complexit en ordonnant les
objets au sein d'arborescence de classes d'abstraction croissante.
La gnralisation
C'est un point de vue port sur les hirarchies de classe. Elle consiste factoriser les
lments communs (attributs, oprations et contraintes) d'un ensemble de classes dans
une classe plus gnrale appele super-classe ;

La spcialisation
C'est un autre point de vue parl sur les hirarchies de classe, elle permet de capturer les
particularits d'un ensemble d'objets non discrimins par les classes identifies. Les
nouvelles caractristiques sont reprsentes par une nouvelle classe, sous-classe des
classes existantes.

2.4. L'hritage
C'est une technique offerte par les langages de programmation pour construire une
classe partir d'une ou plusieurs autres classes, en partageant les attributs, des oprations
et parfois des contraintes, au sein d'une hirarchie de classe. L'hritage est donc le
mcanisme de transmission des proprits d'une classe vers une sous-classe.

Il existe deux types d'hritage.

Hritage simple : une sous-classe hrite des proprits d'une classe {super-classel au
maximum.
Hritage multiple : une sous-classe hrite des proprits de plus d'une super-classe.
ce type d'hritage n'est pas support par tous les langages de programmation. ll pose
un problme au niveau des proprits de classes qui peuvent avoir le mme nom et des
fonctions diffrentes.

3. Autres caractristiques de l'approche objet

Encapsulation : principe consistant cacher les donnes et les algorithmes des objets
en ne laissant visible que les interfaces ;

Rutilisabilit : tant donn qu'un objet est dfini par son comportement, il est facile
de l'inclure dans une bibliothque et l'utiliser pour construire soit des objets de mme
type, soit des objets spcifiques par spcialisation et composition des objets existants;

Modularit : principe consistant regrouper plusieurs classes en un ensemble
cohrent de classes ;

Polymorphisme : concept selon lequel un nom peut rfrencer des objets instances de
plusieurs classes regroupes dans une hirarchie de gnralisation ;

Surcharge : redfinition d'une mthode hrite avec un code diffrent.

Vous aimerez peut-être aussi