Vous êtes sur la page 1sur 7

Cours Base UML

Orient objet

systme : objets en interaction.

objet (ou instance) : ensemble d'attributs et de mthodes (oprations).

classe : regroupement d'objets ayant des caractristiques communes (informations/


comportements).

une classe est un modle.

une classe est un "moule".

Chaque instance est forcment associe une classe.


Quand on instancie une classe, on obtient un objet.

association : lien entre les classes.

hritage (gnralisation / spcialisation) : mise en commun d'informations communes.

Exemple 1 :

classe Personne : ge, dors.

classe Homme : statut marital, mange, tudie.

classe Bb : mange.

Homme et bb hritent de la classe Personne.


Exemple 2 :

classe Personne : ge, dors, mange.

classe Homme : statut marital, tudie.

classe Bb : mange (mthode rcrite pour le bb car il mange diffremment).

Homme et bb hritent de la classe Personne.


Avantage :

partage de code.

rutilisable.

fiabilit.

Inconvnients :

dcoupage excessif du code.

non-respect de la gnralisation/spcialisation.

agrgation : composition (plus fort). L'objet contient, regroupe, possde.

association : communication entre objets. Un objet envoie un message/stimulus un


autre.

encapsulation : sparation interface/implmentation. L'objet peut accder l'objet 1


que par ses mthodes publiques.

polymorphisme : un objet peut envoyer un message un autre objet sans connatre le


type de la classe qui va le recevoir.

Rsum :

un objet/instance contient les donnes (attributs) et les traitements (mthodes).

...

Exemple modliser :

au dpart : 2 lves un 1 professeur. Le professeur demande un rapport et les lves


envoient des parties de rapport.

Si on fait qu'une classe Personne : statut, nom, demande de rapport, envoie d'une partie de
rapport.
Problme : L'instance de Lucie ne connat qu'elle-mme et l'instance de professeur ne
connapit pas de binme ni d'lve.
Solution possible :

une classe Professeur : demande rapport.

une classe Elve : envoie partie rapport.

une classe Personne : nom.

une classe Binme : numro, demande de rapport, remise de rapport.

Professeur et Elve hritent de Personne. Binme appartient Elve.


Problme : le professeur n'interagit pas avec le binme.
Solution possible :

classe Professeur : nom, demande de rapport.

classe Elve : nom, envoie partie rapport.

classe Binome : numro, demande de rapport, envoie partie rapport.

Le professeur connait un lve et un binme. Le binme est compos d'lves. L'lve connat
le professeur.

UML (Unified Modeling Language)


Introduction
Un logiciel peut tre reprsent sous 2 formes :

symbolique.

excutable.

On peut modliser :

un modle du domaine.

une architecture du logiciel.

une communication utilisateur/informaticien.

Vue d'ensemble
L' OMG (Object Management Group) regroupe les principaux acteurs en informatique
utilisant l'approche objet :

UML :

UML 1 : 1997.

UML 2 : 2005.

XML, MOF, CORBA, ...

Il y a des :

entits.

associations (entre entits).

diagrammes (entits + associations).

Reprsentation :

classe : rectangle.

acteur : petit bonhomme.

cas d'utilisation : eclipse.

paquetage : rectangle + petit rectangle.

tat/activits : rectangle arrondi.

Associations (entre entits) :

dpendance.

association.

agrgation.

gnralisation/spcialisation.

Diagrammes : reprsentations graphiques du logiciel. Il y a 13 types de diagrammes


disponibles :

diagramme de classes.

diagramme de cas d'utilisation.

diagramme d'activits.

...

Remarque : on n'est pas oblig d'utiliser les 13 diagrammes.

Fonctionnalits

Chaque type d'utilisateur va avoir des besoins spcifiques / des utilisations du logiciel
diffrentes.
Il va donc y avoir un dcoupage par fonctions, responsabilits, domaines d'expertise, par
quipes, ...
Exemple : Logiciel d'achat : secrtaire, responsable contrat achat, service informatique.
Le type d'utilisateur devient un acteur en UML.
Modlisation du type d'acteur : petit bonhomme avec un nom en-dessous.
Il faut dfinir les fonctionnalits du logiciel pour chacun des acteurs.
Exemple : Logiciel d'achat : consulter un prix, passer une commande, ajouter un nouveau
compte utilisateur, inscrire un nouveau fournisseur.
Une fonctionnalit devient un cas d'utilisation en UML.
Modlisation du cas d'utilisation : ovale avec le nom du cas d'utilisation l'intrieur de
l'ovale.
Le diagramme des cas d'utilisation contient les acteurs et les cas d'utilisation.
Modlisation du diagramme des cas d'utilisation : un rectangle avec un petit rectangle
l'intrieur contenant le nom du diagramme. Les acteurs se trouvent l'extrieur du diagramme
alors que les cas d'utilisation se trouvent l'intrieur. On reprsente les actions des acteurs sur
les cas d'utilisation avec des flches.
Par la suite, il faut dtailler chaque cas d'utilisation.
Exemple : Logiciel d'achat - Passer une commande

Secrtaire
Saisir code article
Saisie quantit
Saisie code quipe
...
Il y a deux couches sparer :

technique.

mtier.

Logiciel
Contrle code correct et renvoi libell
enregistre
contrle code correct
...

Ici, on va plutt essayer de modliser la couche mtier.


Plusieurs questions :

comment raliser les fonctionnalits ?

quelles parties du systme interviennent pour raliser le cas d'utilisation ?

dcrire la structure du systme (statique).

comment font ces parties pour ralise le cas d'utilisation ?

dcrire la dynamique du systme.

Structure du logiciel (vue mtier)


Les dpendances entre les systmes sont reprsents avec les diagrammes de paquetage.
Ceci permet de synthtiser les systmes complexes.
Les entits de base du systme est l'objet. Un objet est unique, il a des caractristiques et un
comportement.
En UML, on a des formes :

simplifie : Renard.

dtaille : Renard avec les attributs et les mthodes.

On peut mettre des cardinalits (*attention : inverse Merise).


Modlisation de gnralisation/spcialisation :
classe + gnrale <----------- classe + spcialise
Modlisation de l'agrgation : losange blanc.
Modlisation de la composition : losange color.

Dynamique interne au logiciel (vue mtier)


La dynamique interne peut tre inter objets ou intra objets.
Remarque : pPartie non dtaille.

Conception (vue informatique)


On a une succession de types de diagrammes que l'on va utiliser.

Remarque :

on ne va pas utiliser les 13 types de diagrammes en gnral.

on n'est pas oblig d'utiliser UML. Un logiciel peut tre cr sans forcment tre
modlis au pralable.

si on choisit de modliser, il n'est pas forcment obligatoire de tout modliser.

gnralement, on ne met pas jour son diagramme UML avec l'volution de son code.

il y a beaucoup d'outils libres ou non.

Vous aimerez peut-être aussi