Vous êtes sur la page 1sur 19

Mr.

KAIS BEN SALAH

MOOC

Chapitre 2 Introduction UML


I- Introduction
UML pour Unified Modeling Language standardis par lOMG (Object Management Group :
www.OMG.org) est une notation base principalement sur les mthodes BOOCH (de
BOOCH), OMT de Rumbaugh et OOSE de Jacobson.
LUML a t propos afin de standardiser les produits de dveloppement (modle, notation,
diagramme) sans standardiser le processus de dveloppement. Il est en fait trs difficile de
standardiser le processus de dveloppement qui dpend des personnes, des applications, des
cultures, etc.
UML se propose de crer un langage de modlisation utilisable la fois par les humains
(forme graphique) et les machines (syntaxe prcise). La Figure suivante rsume UML avec
ses 5 vues et ses 9 diagrammes.

Les vues et les diagrammes dUML

En rsum :

UML est une notation, pas une mthode.


UML est un langage de modlisation objet.
UML convient pour toutes les mthodes objet.
UML est dans le domaine public.
UML a pour but de documenter les modles objets.

Mr. KAIS BEN SALAH

MOOC

UML sert :
- dcomposer le processus de dveloppement
- mettre en relation les experts des mtiers et les analystes
- coordonner les quipes danalyse et de conception
- sparer lanalyse de la ralisation
- prendre en compte lvolution de lanalyse et du dveloppement
- migrer facilement vers une architecture objet dun point de vue statique et dynamique

La vue statique est caractrise par :


-

Les cas dutilisation


Diagramme dobjet
Diagramme de classes
Diagramme de composants
Diagramme de dploiement

La vue dynamique est caractrise par :


-

Diagramme de collaboration
Diagramme de squence
Diagramme dtat-transition
Diagramme dactivits

II- Concept objet


La mthode Merise utilise deux types de modles pour dcrire une application :
- Un modle de donnes
- Un modle de traitement
Lapproche objet repose sur :
- Lassociation des donnes et des traitements dans une mme entit
- Lencapsulation masquant les donnes et traitements internes
- Un niveau abstrait de manipulation des entits base de classes et un niveau concret
base dinstance
- Lidentification de chaque instance
- Des niveaux daccs aux donnes et traitements (publique, priv et protg)
- La sparation des interfaces de manipulation de limplmentation des traitements
- Un mcanisme dhritage (hritage pour gnraliser ou spcialiser)
- Le polymorphisme : ad hoc (surcharge), paramtrique (gnricit) et dhritage
(redfinition).

III- Phase danalyse et de Conception UML


Les tapes de construction dapplication aboutissent sur lmergence de modles.
1- Les uses cases (les cas dutilisation)
Ils sont issus de la mthode OOSE de Jakobson. Il sagit dune reprsentation oriente
fonctionnalit du systme rsultant de la spcification.
9

Mr. KAIS BEN SALAH

MOOC

Ils intgrent :
- Des acteurs externes au systme (primaires ou secondaires).
- Des actions (cas dutilisation) permises par le systme.
Les cas dutilisation dlimitent le systme, ses fonctions (ses cas), et ses relations avec son
environnement. Ils constituent un moyen de dterminer les besoins du systme. Ils permettent
dimpliquer les utilisateurs ds les premiers stades du dveloppement pour exprimer leurs
attentes et leurs besoins (analyse des besoins).
Ils constituent un fil conducteur pour le projet et la base pour les tests fonctionnels.
Un acteur est une personne ou un systme qui interagit avec le systme tudi en changeant
de linformation (en entre et en sortie). On trouve les acteurs en observant les utilisateurs
directs du systme, les responsables de la maintenance ainsi que les autres systmes qui
interagissent avec lui.
Un acteur reprsente un rle jou par un utilisateur qui interagit avec le systme. La mme
personne physique peut jouer le rle de plusieurs acteurs. Dautre part, plusieurs personnes
peuvent jouer le mme rle et donc agir comme un mme acteur.

uses

Authentification
Adhrent

Rservation
uses

uses

Restitution

Emprunt
Bibliothcaire
extends

Emprunt
Compte VIP
Le cadre
Dlimite le
champs du
systme
dinformation

Diagramme de cas dutilisation : Mdiathque

10

Mr. KAIS BEN SALAH

MOOC

Il est possible de simplifier les actions avec deux types de relations :

La relation "extends" : Intgre les caractristiques du use case point


La relation "uses" : Indique qu'un use case fait partie d'un sous-ensemble

Les cas dutilisation reprsentent le dialogue entre lacteur et le systme de manire abstraite.
Les communications peuvent tre orientes ou pas.
2- Les diagrammes dobjets
a- Les objets
Les objets informatiques dfinissent une reprsentation simplifie des entits du monde rel,
quil sagisse dentits concrtes (avec une ralit physique) ou conceptuelles. Les objets
sont des abstractions qui mettent en avant les caractristiques essentielles et dissimulent les
dtails. Une abstraction se dfinit par rapport un point de vue (tout dpend de lintrt que
lon porte lobjet).
Les trois caractristiques fondamentales des objets sont :
- Ltat
- Le comportement
- Lidentit
Ltat correspond aux valeurs instancies de tous les attributs de lobjet. Ltat volue au
cours du temps.
Exemple : pour une voiture, ltat est, la valeur de la marque, de la puissance, de la couleur

: Un e v o i t u r e
Couleur = Gris
Poids = 1200 k g
Puissance = 5 C V
Es s e n c e = 30 litres

Son tat

Le comportement dcrit les actions et les ractions dun objet. Le comportement matrialise
sous la forme dun ensemble doprations (mthodes et fonctions).
Un objet peut faire appel aux comptences dun autre objet par linvocation dune opration
(ou envoi de message).
Les messages servent implanter les flots de donnes, les flots de donnes, les vnements,
Ltat et le comportement sont lis :
- Le comportement dpend de ltat (la prcondition de lopration de lopration : le
message peut tre accept ou refus).
- Ltat est modifi par le comportement (la postcondition de lopration).

11

Mr. KAIS BEN SALAH

MOOC

: Un e v o i t u r e
Couleur = Gris
Poids = 1200 k g
Puissance = 5 C V
Essence =

Se-Dplacer (120 km)

30 litres
Changement dtat

: Un e v o i t u r e
Couleur = Gris
Poids = 1200 k g
Puissance = 5 C V
Essence =

24 litres

Tout objet possde possde une identit (non modifiable) qui lui est propre et qui le
caractrise. Lidentit permet de distinguer tout objet de faon non ambigu indpendamment
de son tat (valeurs de ses attributs).
Classe dobjet

instances dobjet

Etudiant

: Etudiant

Mohammed : Etudiant
OU

3- Les diagrammes de Classes


La classe est la description abstraite dun ensemble dobjets. Elle peut tre vu comme la
factorisation des lments communs un ensemble dobjets.
Nom de la classe

+ Attribut public : Type = valeur initiale


- Attribut priv : Type 1
# Attribut protg : Type n
+ Opration publique ( )
- Opration prive ( )
# Opration protge ( )

12

Mr. KAIS BEN SALAH

MOOC

Exemples :
1Commentaires

2Tlviseur

TV1 : Tlviseur

+ Modle : string
Instanciation
Allumer ( )
Eteindre ( )
Changer de programme ( )
Rgler le volume ( )

Modle : Tlviseur
LCD Full HD Sony
KDL40W4000 - cran
102 cm

3Tlviseur

Tlviseur

Association

Utilisateur

Compos de :
Agrgation
Circuit

13

Mr. KAIS BEN SALAH

MOOC

4-

Tlviseur
1

* (ou 4)
Roue

1
Moteur

1
Carrosserie

5Tarte

Fruit

Hrite

Tarte aux pommes


Compose de

Pomme
pommes

14

Mr. KAIS BEN SALAH

MOOC

4- Les diagrammes de Collaboration


Les diagrammes de collaborations font partie de la vue dynamique. Ils mettent laccent sur les
relations spatiales entre les objets. Les messages entre ces derniers peuvent tre numrots
pour introduire la dimension temporelle (point de vue ordre des messages).
Exemple :
Les messages
entre les objets
numrots

Message rflexif

Les objets

Ce diagramme est donc utilis pour illustrer comment les objets interagissent entre eux en
changeant des messages.
Ainsi, un diagramme de collaboration reprsente une collaboration, c'est--dire un ensemble
de rles d'objet lis dans un contexte particulier, et une interaction, qui reprsente l'ensemble
des messages changs entre les objets pour effectuer une opration ou produire un rsultat. Il
s'agit d'un diagramme d'interaction qui affiche, pour un vnement systme dfini par un cas

15

Mr. KAIS BEN SALAH

MOOC

d'utilisation (cas d'utilisation : dans un diagramme de cas d'utilisation, reprsentation d'un


ensemble d'vnements qui se produit lorsqu'un acteur utilise un systme pour terminer un
processus. En temps normal, un cas d'utilisation est un processus relativement important (il ne
s'agit pas d'une tape ou d'une transaction individuelle.), le mode de collaboration d'un groupe
d'objets avec un autre.
5- Les diagrammes de squence
Les principales informations contenues dans un diagramme de squence sont les messages
changs entre les lignes de vie, prsents dans un ordre chronologique. Ainsi, contrairement
au diagramme de communication, le temps y est reprsent explicitement par une dimension
(la dimension verticale) et scoule de haut en bas.
Ainsi, ces diagrammes mettent laccent sur les relations temporelles. Et des nombreuses
notations annexes permettent de prciser la nature des messages (appel de procdure, simple
signal, message rptitif, conditionnel, rflexif,) et les donnes transfres.

: Classe A

: Classe B
Message simple()

Objet en attente

Objet actif

Tant queFaire

Rpter

Fin Tant que

Jusqu

Message aprs un temps (avec dlai)

Message rflexif ()
Message Synchrone ()

Message Asynchrone ()

16

Mr. KAIS BEN SALAH

MOOC

6- Les diagrammes dtat (diagramme dtat transition)


Les diagrammes dtat servent dcrire le comportement des objets (classes) complexes. Ce
sont des diagrammes dtat tendus avec des conditions (gardes) sur les transitions et des
actions sur les transitions et les tats.
Ils sont attachs une classe dobjets. Ils dcrivent les squences dtats dun objet :
en rponse aux stimuli reus
en utilisant ses propres actions
Dfinitions :
Un tat est une condition dans la vie dun objet, pendant laquelle il satisfait quelques
conditions, excute quelques actions ou attend quelques vnements.
Un vnement est une occurrence remarquable, qui a la capacit de dclancher une transition
dun tat vers un autre tat

Etat intermdiaire
Etat initial

Etat final

Evnement
Etat 1

Etat 2

Comme nous lavons dj indiqu, ltat dun objet est dfini par les valeurs de ses attributs.
Dans un diagramme dtat, il faut toujours avoir un tat initial, mais nous pouvons avoir
plusieurs tats de fin.

17

Mr. KAIS BEN SALAH

MOOC

Exemple :

Diagramme dtat (ordinateur)

Dmarrer
En Attente

Dmarrage en cours
Echec de dmarrage

Dmarrage OK

Arrter le Traitement

En marche

Arrter
lordinateur

Arrt

7- Les diagrammes dactivit


Ces diagrammes sont des variantes des diagrammes dtat-transition, ils dcrivent le
comportement dune opration ou dune mthode, ils permettent la mise en vidence de
lorganisation des activits. Ils reprsentent la fois, les comportements conditionnels et
parallles. Ils regroupent graphiquement les activits par objet.
A un niveau macroscopique, les diagrammes dactivit permettent de dcrire des
enchanements de fonctionnalits. Ils compltent donc bien les cas dutilisation au niveau de
lanalyse des besoins.
A un niveau microscopique, les diagrammes dactivit permettent, par exemple, de dcrire
lalgorithme dune action dun diagramme dtats.

18

Mr. KAIS BEN SALAH

MOOC

Exemple :

Client

Fournisseur

Commander un
produit

Grer la
commande

Recevoir le
produit

Expdier le
produit

Rgler la facture

Encaisser la
facture

8- Les diagrammes de composants


Les composants sont les parties lmentaires dun systme. Et puisque le systme est
limplmentation dune ou plusieurs classes, un composant rside au niveau dun ordinateur et
non pas dans la tte dun analyste.
Les fichiers de donnes, les fichiers excutables, les documents et les librairies sont
considrs comme des composants.
Les diagrammes de composants sont en quelque sorte, la description de larchitecture
logicielle.

19

Mr. KAIS BEN SALAH

MOOC

Ainsi, nous modlisons les composants et les relations qui permettent de les lier pour que:
- Les clients peuvent visualiser la structure et les fonctionnalits du systme finalis,
- Les dveloppeurs admettent une structure sur laquelle, ils peuvent travailler,
- Les rdacteurs techniques peuvent fournir une documentation et des fichiers daide
expliquant parfaitement le systme implment,
- Le processus de rutilisation soit facile.
Syntaxe

UML propose deux strotypes pour les composants : processus et Thread

Le module reprsente une unit pour le regroupement et la manipulation de composants.


Exemple : le module Java java.lang contient les composants String, Integer, ...

20

Mr. KAIS BEN SALAH


Exemples :
1-

Module

MOOC

Interface

Composants

2-

9- Les diagrammes de dploiement


Ces diagrammes montrent comment les composants sont dploys sur le matriel (Hardware)
et comment les composants hardware sont connects ensemble.
Ainsi, ils reprsentent une description de larchitecture Hardware.

21

Mr. KAIS BEN SALAH

MOOC

Exemples :
1-

2-

22

Mr. KAIS BEN SALAH

MOOC

IV- Elments dune dmarche


UML nimpose pas de processus. La dmarche naturelle, implique par la notation UML,
part des cas dutilisation qui expriment un point de vue fonctionnel sur le systme.
Puis les diagrammes de collaboration et de squence associs aux cas font apparatre les
classes dobjets impliques dans le systme et donc passer une vue objets (cf. figure 26).
Mais on peut aussi bien passer une vue hirarchie de fonctions partir des cas
dutilisation.
Diagrammes essentiels par phase :
Analyse des besoins : cas dutilisation.
Analyse du systme : diagrammes de classes, de collaboration, dactivits (enchanement
des cas).
Conception : diagrammes de classes, de squences, dactivits (conception des mthodes),
dtats, de composants, de dploiement.

23

Mr. KAIS BEN SALAH

MOOC

24

Mr. KAIS BEN SALAH

MOOC

ANNEXE

Introduction JDBC
La technologie JDBC (Java DataBase Connectivity) est une API fournie avec Java (depuis sa
version 1.1) permettant de se connecter des bases de donnes, c'est--dire que JDBC
constitue un ensemble de classes permettant de dvelopper des applications capables de se
connecter des serveurs de bases de donnes (SGBD).
L'API JDBC a t dveloppe de telle faon permettre un programme de se connecter
n'importe quelle base de donnes en utilisant la mme syntaxe, c'est--dire que l'API JDBC
est indpendante du SGBD.
De plus, JDBC bnficie des avantages de Java, dont la portabilit du code, ce qui lui vaut en
plus d'tre indpendant de la base de donnes d'tre indpendant de la plate-forme sur laquelle
elle s'excute.

L'accs aux bases de donnes avec JDBC


Dans un systme client/serveur, l'accs aux bases de donnes avec JDBC peut s'effectuer
selon un modle deux couches ou bien un modle trois couches.
Pour le modle deux couches, une application Java est intimement lie avec une base de
donnes. A cet effet, il faut bien videmment disposer, pour la base de donnes concerne,
d'un pilote JDBC adquat. Les instructions SQL sont directement envoyes la base, cette
dernire renvoyant les rsultats par un biais tout aussi direct. La base de donnes peut tre
excute sur la machine locale (celle sur laquelle l'application Java fonctionne) ou bien sur
tout autre ordinateur du rseau (Intranet ou Internet).

Dans le modle 3 couches, une troisime couche (le serveur d'application) vient s'intercaler
entre l'application Java et la base de donnes. Les instructions SQL et les rsultats livrs en

25

Mr. KAIS BEN SALAH

MOOC

retour y transitent. Ce modle prsente l'avantage d'intgrer dans cette couche un contrle
d'accs.

26

Vous aimerez peut-être aussi