You are on page 1of 7

Module : Atelier de Génie Logiciel Institut Supérieur d'Informatique

Niveau : L2-SIL-ARS Année Universitaire : 2010-2011

UM L : UN
NIIF
FIIE
EDD MO
ODDE
ELLIIN
NGG LA
ANNG
GUUA
AGGE
E

 Le langage UML
UML (Unified Modeling Language) est une méthode de modélisation orientée objet
développée en réponse à l’appel à propositions lancé par l’OMG (Object Management Group)
dans le but de définir la notation standard pour la modélisation des applications construites à
l’aide d’objets. UML est une méthode utilisant une représentation graphique. L’usage d’une
représentation graphique est un complément excellent à celui de représentions textuelles. En
effet, l’une comme l’autre sont ambigues mais leur utilisation simultanée permet de diminuer
les ambigüités de chacune d’elle. Un dessin permet bien souvent d’exprimer clairement ce
qu’un texte exprime difficilement et un bon commentaire permet d’enrichir une figure. Les
diagrammes UML supportent l'abstraction. Leur niveau de détail caractérise le niveau
d'abstraction du modèle.

Il existe 2 types de vues du système qui comportent chacune leurs propres diagrammes :

 les vues statiques :

 de cas d'utilisation
 diagrammes d'objets
 diagrammes de classes
 diagrammes de composants
 diagrammes de déploiement
 les vues dynamiques :

 diagrammes de collaboration
 diagrammes de séquence
 diagrammes d'états-transitions
 diagrammes d’activité

Mme. Lilia SFAXI Page 1/7


Module : Atelier de Génie Logiciel Institut Supérieur d'Informatique
Niveau : L2-SIL-ARS Année Universitaire : 2010-2011

I.1. Diagramme de Cas d’utilisation (Use Case)

Les use cases permettent de structurer les besoins des utilisateurs et les objectifs
correspondants d'un système. Ils centrent l'expression des exigences du système sur ses
utilisateurs : ils partent du principe que les objectifs du système sont tous motivés. La
détermination et la compréhension des besoins sont souvent difficiles car les intervenants sont
noyés sous de trop grandes quantités d'informations : il faut clarifier et organiser les besoins
des clients (les modéliser). Pour cela, les cas d’utilisation identifient les utilisateurs du système
(acteurs) et leurs interactions avec le système. Ils permettent de classer les acteurs et structurer
les objectifs du système. Une fois identifiés et structurés, ces besoins :

 définissent le contour du système à modéliser (ils précisent le but à atteindre),

 permettent d'identifier les fonctionnalités principales (critiques) du système.

Les use cases ne doivent donc en aucun cas décrire des solutions d'implémentation. Leur
but est justement d'éviter de tomber dans la dérive d'une approche fonctionnelle, où l'on liste
une litanie de fonctions que le système doit réaliser.

L’acteur : La première étape de modélisation consiste à définir le périmètre du système, à


définir le contour de l’organisation et à le modéliser. Toute entité qui est en dehors de cette
organisation et qui interagit avec elle est appelé acteur selon UML.

Le cas d’utilisation : Le cas d’utilisation (ou use case) correspond à un objectif du


système, motivé par un besoin d’un ou plusieurs acteurs.

L'ensemble des use cases décrit les objectifs (le but) du système.

La relation : Elle exprime l’interaction existant entre un acteur et un cas d’utilisation.

Il existe 3 types de relations entre cas d’utilisation :

 la relation de généralisation
 la relation d’extension
 la relation d’inclusion

I.2. Diagramme de classes

Le diagramme de classes exprime la structure statique du système en termes de classes et

Mme. Lilia SFAXI Page 2/7


Module : Atelier de Génie Logiciel Institut Supérieur d'Informatique
Niveau : L2-SIL-ARS Année Universitaire : 2010-2011

de relations entre ces classes. L’intérêt du diagramme de classe est de modéliser les entités du
système d’information. Le diagramme de classe permet de représenter l’ensemble des
informations finalisées qui sont gérées par le domaine. Ces informations sont structurées, c’est-
à-dire qu’elles ont regroupées dans des classes. Le diagramme met en évidence d’éventuelles
relations entre ces classes.

Le diagramme de classes comporte 6 concepts :

 classe
 attribut
 identifiant
 relation
 opération
 généralisation / spécialisation

I.3. Diagramme de collaboration

Le diagramme de collaboration permet de mettre en évidence les interactions entre les


différents objets du système. Dans le cadre de l’analyse, il sera utilisé :

 pour préciser le contexte dans lequel chaque objet évolue

 pour mettre en évidence les dépendances entre les différents objets impliqués dans
l’exécution d’un processus ou d’un cas d’utilisation.

Un diagramme de collaboration fait apparaître les interactions entre des objets et les
messages qu’ils échangent. Une interaction définit la communication entre les objets sous la
forme d’un ensemble partiellement ordonné de messages.

L’objet émetteur envoie un message à l’objet récepteur. Les objets représentés dans les
diagrammes de collaboration ne sont pas nécessairement des instances d’entités. Certains
messages peuvent avoir pour origine des acteurs que l’on pourra représenter.

I.4. Définition du diagrammes de séquence

Le diagramme de séquence est une variante du diagramme de collaboration. Par


opposition aux diagrammes de collaboration, les diagrammes de séquence possèdent

Mme. Lilia SFAXI Page 3/7


Module : Atelier de Génie Logiciel Institut Supérieur d'Informatique
Niveau : L2-SIL-ARS Année Universitaire : 2010-2011

intrinsèquement une dimension temporelle mais ne représente pas explicitement les liens entre
les objets.

Ils privilégient ainsi la représentation temporelle à la représentation spatiale et sont plus


aptes à modéliser les aspects dynamiques du système.

En revanche, ils ne rendent pas compte du contexte des objets de manière explicite,
comme les diagrammes de collaboration. Le diagramme de séquence permet de visualiser les
messages par une lecture de haut en bas. L’axe vertical représente le temps, l’axe horizontal les
objets qui collaborent. Une ligne verticale en pointillé est attachée à chaque objet et représente
sa durée de vie.

II MyEclipse UML
MyEclipse est un ensemble d’outils fourni uniquement en édition professionnelle, qui
propose une solution pour la modélisation UML. Il permet aux développeurs de réaliser les
tâches suivantes :

- Créer des diagrammes de cas d’utilisation, de clase, de séquence, de collaboration,


d’état, d’activité, de déploiement…
- Utiliser un éditeur de diagrammes intégré, une vue pour la structure du projet, et une
vue des propriétés
- Utiliser des outils de dessin
- Editer directement les nœuds et les connexions via des Hot-Zones
- Générer du code Java à partir de modèles
- Exporter les modèles en format XMI
- Exporter les diagrammes en images de format GIF, PNG, PS, EPS, SVG
- Réaliser une rétro-ingénierie à partir de n’importe quel projet J2EE ou Java
- Glisser-déplacer tout élément d’UML de la liste vers les diagrammes

III Enoncé
Dans un établissement scolaire, on désire gérer la réservation des salles de cours ainsi
que du matériel pédagogique (ordinateur portable ou/et Vidéo projecteur).

Seuls les enseignants sont habilités à effectuer des réservations (sous réserve de
disponibilité de la salle ou du matériel). Le planning des salles peut quant à lui être consulté par
Mme. Lilia SFAXI Page 4/7
Module : Atelier de Génie Logiciel Institut Supérieur d'Informatique
Niveau : L2-SIL-ARS Année Universitaire : 2010-2011

tout le monde (enseignants et étudiants).Par contre, le récapitulatif horaire par enseignant


(calculé à partir du planning des salles) ne peut être consulté que par les enseignants. Enfin, il
existe pour chaque formation un enseignant responsable qui seul peut éditer le récapitulatif
horaire pour l’ensemble de la formation.

Le but de ce TP est de réaliser le diagramme des cas d’utilisation, le diagramme des


séquences et le diagramme des classes de ce système. Le diagramme de séquences représentera
le scénario de réservation d’une salle et d’un vidéo projecteur par un enseignant.

III.1. Création de diagrammes

 Ouvrez l'IDE MyEclipse, et créez un nouveau projet Java, que vous nommerez
« Etablissement Scolaire »

- Faites un clic droit sur le répertoire src et choisissez New → Other. Choisissez
MyEclipse → UML → UML2 Model. Appelez votre modèle DiagUML. Acceptez si
on vous demande d’utiliser la perspective UML.
Mme. Lilia SFAXI Page 5/7
Module : Atelier de Génie Logiciel Institut Supérieur d'Informatique
Niveau : L2-SIL-ARS Année Universitaire : 2010-2011

- Deux fichiers seront créés sous le répertoire src. Le fichier DiagUML.uml et le fichier
DiagUML.umldi. Ce dernier représente le fichier qui va contenir l’ensemble des
diagrammes sous leur forme graphique.

- Votre fenêtre aura la forme suivante :

2
1

- Dans la fenêtre active, vous verrez les vues suivantes :

(1) C’est la fenêtre principale, dans laquelle seront créés les diagrammes sous leur
forme graphique.

(2) C’est la fenêtre qui contient votre projet et les fichiers sources

(3) C’est la fenêtre qui contient la hiérarchie des diagrammes

(4) C’est la fenêtre des propriétés qui affichera les propriétés de chaque élément
UML sélectionné.

- Par défaut, la fenêtre (1) vous permet de réaliser un diagramme de classes. Pour créer

un nouveau diagramme, cliquez sur le bouton qui se trouve sur la barre du haut.
Choisissez New Use-case Diagram.

- La fenêtre (1) va changer pour vous permettre de créer un diagramme de cas


d’utilisation, et dans la fenêtre (3), vous verrez que, sous le répertoire
Mme. Lilia SFAXI Page 6/7
Module : Atelier de Génie Logiciel Institut Supérieur d'Informatique
Niveau : L2-SIL-ARS Année Universitaire : 2010-2011

<Model>DiagUML, une nouvelle entrée a été créée : useCaseDiagram1.

- Pour créer votre diagramme, utiliser les boutons fournis à gauche de la fenêtre (1).

III.2. Génération de code

MyEclipse UML vous offre une grande facilité, qui est la génération automatique de
code. Une fois votre diagramme de classes terminé, vous pourrez générer le squelette de code
en Java. Pour cela, cliquez sur le menu UML2→Generate Java. La fenêtre suivante apparaîtra :

- Choisissez le répertoire src comme répertoire de sortie Java. Et cliquez sur Finish.

- Des fichiers .java seront générés dans le répertoire src. Ces fichiers contiennent un
squelette de code Java correspondant aux classes que vous avez créé.

III.3. Rétro-Ingénierie (Reverse Engineering)

Pour générer un diagramme UML à partir d’un code Java existant, cliquer avec le bouton
droit sur le projet, et aller vers MyEclipse→Generate UML Class Diagram.

Mme. Lilia SFAXI Page 7/7