Vous êtes sur la page 1sur 8

I.N.S.F.

P de Mostaganem
MODULE : Système d’Information UML Enseignant : Mr BENSAHA D.
CHAPITRE 3 : Modélisation Structurelle (Diagrammes de Structures)

1- Introduction : Les diagrammes de structure décrivent l’aspect statique du système. Ils permettent de
représenter les éléments d’analyse : Classes, et Objets ainsi que les composants, les structures composites, les
déploiement (file) et les packages. Dans ces diagrammes on ne s’intéresse pas aux interactions entre les
éléments représentés, mais plutôt à leur relation statique.

2- Diagrammes de Classes:
2.1 Définition :
 Une Classe est la description abstraite d’un ensemble d’objets ayant une sémantique et des propriétés
(attributs) communes. Un Objet est une instance d’une classe. Une classe est une entité discrète dotée
d’une identité, d’un état et d’un comportement que l’on peut invoquer. Exemple : l’Objet YAZID
Larbi est une instance de la classe Personnage.
 Les diagrammes de classes sont sans doute les diagrammes les plus utilisés d’UML. Ils décrivent les
types d’objets qui composent un système et les différents types de relations statiques qui existent
entre eux. Les diagrammes de classes font abstraction du comportement du système.
Exemple :
FABRICANT PRODUIT UNITE de VENTE
NumFab 1..* 1..* NumPr 1..* 1..* NumFab
NomFab Fabriqué par DesigPr Vend NomFab
AdrFab PrixPr AdrFab
+ Ajouter(..)
- Demand-Prix(..)

2.2 Attributs de classe: un attribut décrit un domaine de valeurs possibles partagées par tous les objets de la
classe.

2.3 Opérations d’une classe: (Comportement d’une classe)


Une opération permet d’invoquer une fonctionnalité offerte par une classe. Les opérations sont placées dans
un compartiment séparé des attributs et sont décrites au travers d’une signature.
La déclaration d’une opération contient les types de paramètres et le type de la valeur de retour, sa syntaxe
est la suivante : [visibilité] <Nom> [liste de paramètres][ :Type]
 Visibilité : indique Public (+) ou Privé (-)
 Nom : nom donné à l’opération
 Liste de paramètres : la syntaxe d’ paramètre est comme suit :
[Direction] <Nom> :Type [valeur par défaut]
Ou : * Direction : IN (en entrée), OUT (en sortie), InOut (en Entrée/Sortie). La direction par
Défaut est In ;
* Nom : nom du paramètre ;
* Type : type du paramètre.
* valeur par défaut : valeur par défaut associée au paramètre.

Exemple : + DemanderPrix() :Monnaie


Dans cet exemple, DemanderPrix() est une opération publique qui effectue le calcul du prix d’une
formation. Le résultat retourné est de type monay. Remarquons que Formation n’est pas donnée comme
paramètre à l’opération, ceci est du au fait que DemanderPrix() doit être une opération de la classe
FORMATION.
+ CalculerNbAbsences(date_A : Date) : Int
Dans cet exemple, CalculerNbAbsences est une opération publique qui effectue le calcul du nombre
d’absences d’un employé à une date donnée. Le résultat retourné est de type entier. Ici, aussi EMPLOYE
n’est pas donnée comme paramètre à l’opération.
+ DemanderSalairedeBase(categorie :Int, section :Int) :Monnaie
DemanderSalairedeBase() est une opération de la classe GRILLE d SALAIRE, appelée par
l’opération CalculerSalaire(…) de la classe EMPLOYE. Le résultat retourné est de type monnaie.

2.4 Associations entre classe: Indique que deux classes communiquent entre elles (dans un sens ou dans les
deux sens). Une association est représentée par une ligne pleine entre 2 classes.
1..1 0..*
CLIENT COMMANDE
Identite_Cl 1 * NumCom
AdrCl Passer DateCom
….. …….

a) Multiplicité : indique le nombre d’objets d’une classe qui peuvent participer à l’association. Elle est
généralement définie par une borne supérieure et une borne inférieure.
- la borne inférieure est 1 entier positif ou nul 0 ou 1
- la borne supérieure est 1 entier strictement positif ou infini (*)
1..1 est équivalent à 1
0..* est équivalent à *
Dans l’exemple, une commande donnée ne peut être associée qu’à 1 et 1 seul client. On met 1 à côté du
client. Alors qu’un client peut ne pas faire de commandes ou peut faire un nombre illimité de commandes.
On met * à côté de commande.
b) Association N-aires : il s’agit d’une association qui relie plus de 2 classes.
Exemple :
COMMANDE
1
1 1..*
CLIENT FACTURE

Avoir
Un Client pour une même Commande peut avoir une ou plusieurs Factures : 1..* à côté de Facture.
Un Client pour une Facture est lié à une et une seule Commande : 1du côté Commande
Une Facture et une Commande sont liées à un et un seul Client : 1du côté Client.
c) Classes d’Associations: (Classe associative)
Lorsqu’une association possède des propriétés caractérisant le lien entre les classes associées, celles-ci est
remplacée par une classe appelée CLASSE ASSOCIATIVE et les propriétés du lien deviennent attributs de
cette classe. COMMANDE
1..* 1..* PRODUIT
Exemples :
* Les classes COMMANDE et PRODUIT sont
Reliées par une classe associative CDE-PROD
Commande_Produit ayant pour attribut Qte_Cde Qte_Cde

ENSEIGNANT 1..* 1..* MODULE

* * *
SECTION SALLE

COURS
- Jour
- HeureDebut
VerifierChargeH(..)
Les classes ENSEIGNANT, SECTION, SALLE sont reliées par une classe associative COURS ayant
pour attribut Jour relatif au jour de la semaine dans lequel se déroule un Cours et HeureDébut signifie l’heure
du début du cours.
2.5 Agrégation: elle représente une relation de type ‘ensemble-élément’.
Une agrégation peut notamment exprimer :
-qu’une classe (agrégée) fait partie d’une autre classe (agrégat) ;
- qu’un changement d’état d’une classe, entraîne un changement d’état d’une autre ;
L’agrégation est représentée par une ligne droite terminée par un losange vide (diamant) du coté de l’agrégat.
2.6 Composition: elle représente le type le plus fort de relations entre classes. Elle n’est utilisée que pour
représenter la possession totale d’une classe par une autre.
En UML, la composition est représentée de la même manière que l’agrégation, mais le diamant est plein.
Exemple : composition : ici, on exprime que les pages sont physiquement
contenues dans le livre.
LIVRE PAGE
1 1..*

1
ici, on indique qu’un livre peut être constitué d’une couverture.

1
COUVERTURE

3- Diagrammes d’Objets ou Diagrammes d’Instances: Un Diagramme d’Objets représente un instantané


des objets d’un système à un moment donné. Ces diagrammes sont souvent appelés Diagrammes d’Instances.
Exemple : On reprend le diagramme de classes entre les classes : Commande et Client.
Si nous nous intéressons à un client en particulier pour voir les commandes qu’il a effectué, nous
représentons ceci par le diagramme d’objet suivant :
C1 : COMMANDE
NumCom=A1001 : CLIENT
DateCom=23/04/2010 Identite_Cl=SONATRACH
MontantCom=50 000,00 DA AdrCl= Alger
…..

C2 : COMMANDE
NumCom=A1013
DateCom=01/12/2010
MontantCom=130 000,00 DA

4- Diagrammes de Composants: Les Diagrammes de Composants décrivent l’architecture interne d’une


classe. Ils sont très utilisés pour représenter l’architecture physique et statique d’une application en terme de
module (Fichiers, Sources, Librairies, Exécutables,…) pour monter la mise en œuvre physique des modèles
statiques avec l’environnement de développement.
Notation graphique : ajouter une icône à une boite de classe.
Nom du composant.
Remarque :
* ces diagrammes sont très utilisés pour décrire des structures composites ;
* généralement le concept de composant est également très utilisé dans la conception des interfaces
graphique : (un bouton, Zone Edit, … sont des composants).
5- Diagrammes de Structure Composite: ces Diagrammes font partie des nouveautés ramenées par UML
2.0. il permettent de décomposer hiérarchiquement une classe en une structure interne.
Ils permettent d’établir des liens entre les diagrammes de classes et les diagrammes de composants.
Exemple : 1) si nous regardons la structure interne d’une commande, nous pouvons dire qu’elle est composée
de lignes de commandes.
COMMANDE
Ligne de Commande

Un Diagrammes de Structure Composite décrivant une Commande

2) si nous considérons l’interface graphique de la fenêtre correspondant à la classe COMMANDE

Fenêtre Commande
Image
Zone Saisie 1

Zone Saisie 1

Zone Saisie 1
Bouton 1

Bouton 2

Un Diagrammes de Structure Composite décrivant une Commande

6-Diagrammes de Déploiement: les Diagrammes de Déploiements représentent


l’agencement physique d’un système montrant sur quels composants matériels les différents
composants logiciels s’exécutent. Les principaux éléments sont des nœuds connectés par des
voies de communication. Un nœud représentera une unité qui va héberger un logiciel ; un
équipement matériel ou ordinateur, un environnement d’exécution, un système d’exploitation,
…etc.
Département
Administratif BD
Utilisateur
BD Employé B.D
SERVEUR

BD Finance
Département Formation et
Information
BD Client
7- Diagrammes de Package (Paquetage)
Les Diagrammes de Package permettent de grouper des éléments UML dans des unités de
plus haut niveau. En effet, ils peuvent servir à organiser des éléments UML selon leurs
types, leurs fonctionnalités ou leurs architectures.
Notation graphique : un package est représenté graphiquement par un dossier
Exemple : l’Utilisation des packages avec des diagrammes de classes.

Stagiaire Section Module

Sec-Mod
Enseignant
Coeff
Package
Section Inscription
Spécialité Package de Formation

Stagiaire Module

Stag-Mod
Note1
Note2
Note D-S
Package Résultat
MG Stagiaire
I.N.S.F.P de Mostaganem
MODULE : Système d’Information UML Enseignant : Mr BENSAHA D.
FICHE de T.D N°02 « CHAP. 3 »

ETUDE de CAS 1:
Soit une procédure d’une gestion commerciale dont Les documents sont décrits comme suit :
Doc1 : Fiche Client

Code client : 140 Nom :ABDI prénom : Mustapha


Rue : 5 rue avenue rénale ville : Mostaganem

N° agence pour le client : 10


Taux de remise consentie (pris) [T.R]: 20%

Doc2 : Bon de Commande Doc3 : Bon de Livraison


N° Agence : 10 Nom agence :Unité Mesra N° Agence : 10 Nom agence :Unité M.
Commande N° : 840 Date : 12/06/2012 Bon de livraison : 900 Date : 22/08/2012
Client : Abdi M. N° de commande : 840
Client : Abdi Mustapha
Ref Désignation Quantité
R22 micro ordinateur I3 10 Ref Désignation Quantité
R23 Imprimante HP 600 4 R22 micro ordinateur I3 10
… …………….. …… R23 Imprimante HP 600 4
… …………….. ……

Doc4 : Catalogue Semestriel Doc5 : Taux de TVA en Vigueur

Date limite de validité des prix : 31/12)2012 Code TVA TAUX


1 0.11
Ref Désignation Prix Unitaire Applicable 2 0.17
R22 micro ordinateur I3 10 3 0.21
R23 Imprimante HP 600 4
… …………….. …… … …………….
… …………….. ……

Règles de Gestion :
1- Un client peut passer une ou plusieurs commandes
2- Un client relève d’une seule agence
3- Une commande contient un ou plusieurs produits pour une quantité commandée
4- Une livraison se compose d’un ou plusieurs produits pour une quantité livrée
5- Un produit peut figurer ou non sur des bon de commandes
6- Une commande peut provoquer plusieurs livraisons
7- Un bon de livraison est provoqué par une seule commande
8- Chaque produit à un seul taux de TVA
9- Les prix des produits seront modifiés sur le catalogue semestriel deux (02) fois par an.

 Etablir le Diagramme de Classes correspondant.


ETUDE de CAS 2:
On s’intéresse à la gestion économique des Wilayates en fonction de leurs production
agricole et industrielle en vue de leurs affecter un budget. On donne les descriptions suivantes :
 une wilaya est caractérisée par son code, son nom, le nombre de villes quelle comporte, ainsi
que la région où elle se trouve qui est connue par son nom.
 Chaque ville est caractérisée par son nom, le nombre de ses habitants et son caractère
(Industrielle ou Agricole).
 Une ville agricole est reconnue comme telle par ses produits avec leurs références, libellés
ainsi que leurs qualités et quantités.
 Une ville industrielle est reconnue par ses installations ;
 Chaque installation est caractérisée par son numéro, nom, sa localisation et le nombre de
travailleurs qu’elle emploie ;
 En plus de ces informations, on donne pour chaque wilaya des indications sur son budget,
numéro, année, valeur, calcule du pourcentage affecté au secteur agricole et celui affecté au
secteur industriel.
Etablir le diagramme de Classes.

ETUDE de CAS 3:
Soit un organisme de commercialisation de produits alimentaires structuré en plusieurs
coopératives qui achètent des produits auprès de différents fournisseurs pour les revendre à des
clients.
On souhaite modéliser la partie statique de ce système en tenant compte des informations
suivantes :
 chaque coopérative est identifiée par un numéro unique, elle est installée dans une ville, fait
travailler un certain nombre d’employés et regroupe un certains nombre de clients.
 Les produits alimentaires sont codifiés et caractérisés par une désignation, une unité de
mesure.
 Chaque fournisseur (fournissant ces produits aux coopératives) est identifié par un code et
décrit par une raison sociale (nom du fournisseur), une adresse, un numéro de fax et son pays
d’origine.
 On doit pouvoir renseigner les coopératives sur les derniers tarifs des produits appliqués par
les fournisseurs.
 Un même produit peut être acheté par une coopérative auprès de plusieurs fournisseurs à
différentes dates et différents prix unitaire d’achat.
 On doit fournir les quantités disponibles de chaque produit dans une coopérative. Chaque
coopérative applique ses propres prix de vente des produits.
 Un client est identifié par un numéro unique et décrit par son nom, prénom, numéro de
téléphone et numéro de fax. ;
 On suppose que chaque client s’approvisionne toujours auprès d’une seule et même
coopérative.

Elaborer le diagramme de Classes.


ETUDE de CAS 4: « Etude d’un système de réservation de Vol pour une agence de voyage »
Les interviews avec les spécialistes ont permis de dégager les phrases suivantes :
1- des compagnies aériennes désignées par un nom proposent différents vols et qu’un vol est
proposé par une seule compagnie aérienne ;
2- un vol est ouvert à la réservation et refermé sur ordre de la compagnie aérienne ;
3- un Vol à un numéro, un jour et une heure de départ, et un jour et une heure d’arrivée ;
4- un Vol à un aéroport de départ et un aéroport d’arrivée ;
5- chaque aéroport caractérisé par un nom dessert (servir) une ou plusieurs villes caractérisées par
un nom, alors qu’une ville peut être desservie par 0 ou plusieurs aéroports ;
6- un Vol peut comporter des Escales dans des aéroports ;
7- une Escale à une heure d’arrivée et une heure de départ;
8- un Passager caractérisé par (nom, prénom, rue, ville, tel, e-mail) peut effectuer ou non plusieurs
réservations qui concernent plusieurs vols, et une réservation est effectuée par un et un seul
passager;
9- une Réservation caractérisée par (numéro, date) concerne un seul vol et qu’un même vol peut
être concerné par 0 ou plusieurs réservations ;
10- une Réservation peut être annulée ou confirmée ;

Décrire cette situation à l’aide du diagramme de classes d’U.M.L ?

ETUDE de CAS 5:

Une académie souhaite gérer les cours dispensés dans plusieurs collèges. Pour cela, on
dispose des renseignements suivants :
Chaque collège possède d’un site Internet, définie par une adresse Site
Chaque collège est structuré en départements définit par : code département, nom département, qui
regroupent chacun des enseignants spécifiques. Parmi ces enseignants, l’un d’eux est responsable du
département.
Un enseignant se définit par son matricule, nom, prénom, tél, mail, date de recrutement et son
salaire.
Chaque enseignant ne dispense qu’une seule matière.
Les étudiants suivent quant à eux plusieurs matières et reçoivent une note pour chacune d’elle.
Pour chaque étudiant, on veut gérer son nom, prénom, tél, mail, ainsi que son année d’entrée au
collège.
Une matière peut être enseignée par plusieurs enseignants mais a toujours lieu dans la même salle
de cours (Numéro et nombre de places déterminé).
On désire pouvoir calculer la moyenne par matière ainsi que par département
On veut également calculer la moyenne générale d’un élève et pouvoir afficher les matières dans
lesquelles il n’a pas été noté
Enfin, on doit pouvoir imprimer la fiche signalétique (nom, prénom, tél, mail) d’un enseignant ou
d’un élève.

Elaborez le diagramme de classes correspondant. Pour simplifier l’exercice, on


limitera le diagramme à une seule année d’étude

Vous aimerez peut-être aussi