Section 2 : Modélisation du système par
approche UML
Par définition, UML se définit comme un langage
de modélisation graphique et textuel destiné à comprendre
et décrire des besoins, spécifier et documenter des
systèmes, esquisser des architectures logicielles, concevoir des
solutions et communiquer des points de vue.
UML unifie à la fois les notations et les concepts
orientés objet. Il ne s'agit pas d'une simple notation, mais les
concepts transmis par un diagramme ont une sémantique précise et
sont porteurs de sens au même titre que les mots d'un langage. UML a une
dimension symbolique et ouvre une nouvelle voie d'échange de visions
systémiques précises. Ce langage est certes issu du
développement logiciel mais pourrait être appliqué à
toute science fondée sur la description d'un système.
Dans sa version 2.0, UML définit treize types de
diagrammes, divisés en trois catégories: Six types de diagrammes
représentent la structure d'application statique; trois
représentent des types généraux de comportement; et quatre
représentent différents aspects des interactions:
· :. Les diagrammes de structure incluent
:
> Diagramme de classe : Ce diagramme
représente la description statique du système en intégrant
dans chaque classe la partie dédiée aux données et celle
consacrée aux traitements. C'est le diagramme pivot de l'ensemble de la
modélisation d'un système.
> Diagramme d'objet - Le diagramme d'objet permet
la représentation d'instances des classes et des liens entre
instances.
> Diagramme de composants : Ce diagramme
représente les différents constituants du logiciel au niveau de
l'implémentation d'un système.
33
> Diagramme de déploiement : Ce diagramme
décrit l'architecture technique d'un système avec une vue
centrée sur la répartition des composants dans la configuration
d'exploitation.
> Diagramme de paquetage : Ce diagramme donne une
vue d'ensemble du système structuré en paquetage. Chaque
paquetage représente un ensemble homogène
d'éléments du système (classes, composants...).
> Diagramme de structure composite : Ce diagramme
permet de décrire la structure interne d'un ensemble complexe
composé par exemple de classes ou d'objets et de composants techniques.
Ce diagramme met aussi l'accent sur les liens entre les sous-ensembles qui
collaborent.
· :. Les diagrammes de comportement
incluent :
> Diagramme des cas d'utilisation : Ce diagramme
est destiné à représenter les besoins des utilisateurs par
rapport au système. Il constitue un des diagrammes les plus structurants
dans l'analyse d'un système.
> Diagramme d'état-transition : Ce
diagramme montre les différents états des objets en
réaction aux événements.
> Diagramme d'activités : Ce diagramme
donne une vision des enchaînements des activités propres à
une opération ou à un cas d'utilisation. Il permet aussi de
représenter les flots de contrôle et les flots de
données.
· :. Les diagrammes d'interaction, tous
dérivés du diagramme de comportement plus général,
incluent le diagramme de séquence, le diagramme de communication, le
diagramme de synchronisation (temps) et le diagramme de présentation des
interactions.
III.2.1. Présentation des diagrammes
utilisés
UML 2 décrit les concepts et le formalisme de ces
treize diagrammes mais ne propose pas de démarche de construction
couvrant l'analyse et la conception d'un système. Ce qui a pour
conséquence par exemple de ne pas disposer d'une vision d'interactions
entre les diagrammes.
? Processus « D'identification d'un
Etudiant»
Ce cas constitue l'aspect Gestion de notre système, en
raison du fait qu'il sera question ici, de modéliser le fonctionnement
classique d'un système de gestion inscription des étudiants, de
représenter graphiquement les interactions s'effectuant pendant le
processus d'inscription interne à une université et , ce qui
va
34
permettre entre autre de récupérer l'ensemble
des informations nécessaires afin de tracer le cursus complet suivi par
chaque étudiant. Ainsi c'est ces dites informations que l'on interrogera
au moment de l'authentification d'un candidat.
? Processus « D'authentification des flux
»
Ce cas constitue l'aspect « Web service » de notre
système, c'est même le vif de notre sujet, dans le sens où
il va falloir ici, modéliser le fonctionnement du système lors de
communication entre les systèmes des universités et celui du
Ministère de l'ESU dans une architecture orientée service,
interroger les données distant afin de pouvoir authentifier les flux
relatifs au candidat présent pour l'inscription spéciale. En
claire, il s'agit ici de simplement lancer une recherche dans le système
dans le système de l'ESU via un service web pour se renseigner sur la
provenance d'un candidat.
III.2.2.1. Diagramme des cas d'utilisation
(DCU)
Les cas d'utilisation constituent un moyen de recueillir et de
décrire les besoins et les activités des acteurs se rapportant au
système. Ils peuvent être aussi utilisés ensuite comme
moyen d'organisation du développement du logiciel.
Tout système peut être décrit par un
certain nombre de cas d'utilisation correspondant aux besoins exprimés
par l'ensemble des utilisateurs. À chaque utilisateur, vu comme acteur,
correspondra un certain nombre de cas d'utilisation du système.
L'ensemble de ces cas d'utilisation se représente sous
forme d'un diagramme.
o Présentation de Diagramme de cas
d'utilisation
uc
«Actor»
Université
Enregistrer
Etudiant
palmares
«include»
palmares
Consomer les
services
«include»
«include»
«include»
«include»
«include»
«include»
S'authentifier
consulter les
pamares
«include»
palmares
«include»
«include»
Rechercher
Créer et attribuer des
codes aux universités
Publier des
services
etudiant
Aministrateur
35
Elaborer
Figure III.1. Diagramme de cas d'utilisation
III.2.2.2. Diagramme de séquence (DSE)
valider
publier
L'objectif du diagramme de séquence
est de représenter les interactions entre objets en indiquant
la chronologie des échanges. Cette représentation peut se
réaliser par cas d'utilisation en considérant les
différents scénarios associés.
o Présentation de Diagramme de
séquence
sd Recherche d'un etudiant
Agent
Affichage des informations sur l'etudiant depuis le
palmares()
S'authentifier(user, pass)
Ouverture de la session()
Rechercher l'etudiant(noms, postnom, prenom)
:String
Systeme
Université
verification(user, pass)
Service
Web
Localiser le serveur()
Localiser le serveur()
Systeme
ESU
Traitement de la requete()
36
Figure III.2. Présentation du diagramme de
séquence
II.2.2.3. Diagramme d'activité(DA)
Les diagrammes d'activités permettent de mettre
l'accent sur les traitements. Ils sont donc particulièrement
adaptés à la modélisation du cheminement de flots de
contrôle et de flots de données. Ils permettent ainsi de
représenter graphiquement le comportement d'une méthode ou le
déroulement d'un cas d'utilisation.
37
o Présentation du diagramme
d'activités
act Rechercher
Affichage des
informations provenant
des palmares
Fin
info trouvée
Lancement de la requete
de recherche
trouvé Non trouvé
Inv ocation du serv ice Serv ce introuv
able
pas d'info
Recherche du service
concerné
Information non trouvée
Rechercher
Fin
Figure III.3 Présentation du diagramme
d'activité
III.2.2.3. Diagramme de classes(DCL)
Le diagramme de classes est considéré comme le
plus important de la modélisation orientée objet, il est le seul
obligatoire lors d'une telle modélisation.
Alors que le diagramme de cas d'utilisation montre un
système du point de vue des acteurs, le diagramme de classes en montre
la structure interne. Il permet de fournir une représentation abstraite
des objets du système qui vont interagir ensemble pour réaliser
les cas d'utilisation. Il est important de noter qu'un même objet peut
très bien intervenir dans la réalisation de plusieurs cas
d'utilisation. Les cas d'utilisation ne réalisent donc pas une
partition1 des classes du diagramme de classes. Un diagramme de classes n'est
donc pas adapté (sauf cas particulier) pour détailler,
décomposer, ou illustrer la réalisation d'un cas d'utilisation
particulier.
38
o Présentation de Diagramme de Classes
class Diagramme
- idEtud: int
- matricule: string
- nomEtud: string - postnomEtud: string -
prenomEtud: string - sexe: char
- adresse: string
- lieuDeNais: string - dateDeNais:
string
+ Creer() : void + Modifier() :
void + Rechercher() : string +
Supprimer() : void + Afficher() :
void
Etudiant
- idUniv: int
- libUniv: String - adresse: string -
telephone: string - mailadress: string - siteweb:
string
Université
1..* 1..*
- idEtud: int
- idPromo: int
- anneeAcad: string
- pourcent: float
- mension: char
- matricule: string
+ Ajouter() : void +
Rechercher() : string + Modifier() :
void + Supprimer() : void +
Afficher() : void
Inscrire
1
comprendre
1..*
- idPromo: int
- libPromo: string
+ Créer() : void
+ Supprimer() : void
+ Modifier() : void
+ Rechercher() : string
- idFac: int
- libFac: String
Promotion
Faculté
1..*
1
Appartenir
contenir
1..*
1
- idOpt: int
- libOpt: string
+ Modier() : void
+ Rechercher() : string
+ Supprimer() : void
- idDepart: int
- libDepart: string
+ Creer() : void
Departement
Option
se trouver
1
1..*
Figure III.4. Diagramme de classe
III.2.2.4. Diagramme de déploiement
(DPL)
+ Creer() : void
+ Supprimer() : void +
Modifier() : void
+ Rechercher() : String
+ Creer() : void
+ Modifier() : void
+ Supprimer() : void +
Rechercher() : string
+ Creer() : void
+ Modifier() : void
+ Supprimer() : void +
Rechercher() : string
Le diagramme de déploiement permet de
représenter l'architecture physique supportant l'exploitation du
système. Cette architecture comprend des noeuds correspondant aux
supports physiques (serveurs, routeurs...) ainsi que la répartition des
artefacts logiciels (bibliothèques, exécutables...) sur ces
noeuds. C'est un véritable réseau constitué de noeuds et
de connexions entre ces noeuds qui modélise cette architecture.
39
o Présentation de Diagramme de
déploiement
Figure III.5. Diagramme de déploiement
La conception et la modélisation constituent une phase
importante dans la réalisation d'un projet d'informatisation. Dans ce
chapitre nous venons de faire une analyse de la mise en oeuvre de notre
système, donc une étude de faisabilité, ce qui nous a
donné une idée claire sur ce qui sera l'implémentation de
notre système en se basant sur les différents diagrammes du
langage UML présentés dans ce chapitre.
Dans le chapitre qui va suivre, nous allons, grâce aux
analyses faites, mettre en oeuvre notre système, et comprendre son
fonctionnement.
40
|