Modèle conceptuel et
diagramme de classes
Modèle conceptuel
z Le modèle conceptuel contient les concepts pertinents et
significatifs du problème ;
z C’est au début, une représentation des objets du monde
réel, non pas de composants logiciels ;
z la création du modèle conceptuel nécessite la
description de cas d’utilisation et la présence de
documents à partir desquels on peut identifier les
concepts ou des objets.
z Itérations entre Ucs et modèle conceptuel ;
z O n décompose ainsi le problème en un ensemble de
concepts.
z UML propose des diagrammes statiques pour
représenter le modèle conceptuel ;
H. Lounis
1
Modèle conceptuel
Ligne-itemVente Item
Enregistre la vente de
quantité
0..1 1
1..* *
Contenue dans Stocké
1 1
Vente Magasin
1 nom
date
heure adresse
1 Payée par 1
Effectuée à Contient
1 1..*
Payement PointVente
somme 1
z Initialement, on y représente : concepts, associations et
attributs ;
H. Lounis
Modèle conceptuel
zIl permet de clarifier et de comprendre le
vocabulaire du domaine cible de l’étude ;
zConcept :
ySymbole : étudiants du groupe inf5151-20
yIntention : définition
yExtension : liste des étudiants
H. Lounis
2
Stratégies d’identification de concepts
zPar identification des noms et phrases
nominales dans une description (par exemple, la
description détaillée des Ucs) ;
zÀ partir d’une liste de catégories de concepts :
catégories communes
H. Lounis
Liste de catégories
Catégories Exemples
Objet physique et tangible Avion, terminal de point de vente
Lieu Aéroport, magasin
Transaction Vente, Paiement, Réservation
Rôles Préposé à la caisse, Pilote
Contenant (d’autres concepts) Magasin, Banque, Université
Aéroport
H. Lounis
3
Liste de catégories
Concepts contenus Article , passager
Organisation Département de vente,
Département ressources humaines
Événements Vente, Vol.
Règles et politiques Politique de remboursement, d’annulation
Enregistrements de transactions Reçus, contrats.
Instruments de finances et services Ligne de crédit, Stock
H. Lounis
Modèle conceptuel : guide
z Lister les concepts candidats ;
z Les insérer dans le modèle conceptuel ;
z Rajouter les associations ;
z Rajouter les attributs.
z Ne pas confondre entre concepts et attributs :
Vol Vol Aéroport
Ou ?
destination nom
z En UML : concepts = classes
H. Lounis
4
Associations
z Il est nécessaire d’identifier les associations entre les
concepts qui aideront à la compréhension du modèle
conceptuel ;
z Une association est une relation entre concepts ;
Catégories Exemples
A est une partie physique de B Aile - Avion
A est une partie logique de B Ligne de vente - Vente
A est un contenant physique de B PDV - Magasin
passager - Avion
A est un contenant logique de B Vol – Planning des vols
H. Lounis
Associations
A gère ou utilise B Préposé à la caisse - PDV
Pilote - avion
A communique avec B Client – Préposé à la caisse
A est lié à une transaction B Client – Paiement
Préposé à la caisse - Paiement
A est la propriété de B PDV - Magasin
z Le temps de création du modèle conceptuel doit être consacré
beaucoup plus à l’identification des concepts qu’aux associations ;
z Éviter de modéliser les associations redondantes ou indésirables ;
z Nommer les par une forme verbale ;
H. Lounis
5
Rôle
z Le nommage des extrémités des associations permet de
clarifier les diagrammes. Ce nommage est appelé rôle ;
z Le rôle décrit comment un concept voit un autre concept
au travers d’une association. Il est nommé au moyen
d’une forme nominale ;
z On commence par nommer les associations puis les
rôles ;
Employeur
compagnie Personne
Employé
z Attention à un trop grand nombre d’associations entre 2
concepts !
H. Lounis
Cardinalité
z Pour spécifier le nombre d’instances qui participent à
l’association ;
* 1..*
T
T
1.40 5
T
T
3,5,8
T
H. Lounis
6
Association n-aire
z On peut avoir une association entre plusieurs concepts.
Dans ce cas elle se représente par un losange sur lequel
arrivent les différentes composantes de l’association.
Salle
Etudiant Enseignant
Cours
Debut
fin
H. Lounis
Attributs
z À partir de la description des Ucs ;
z On inclus les attributs qui nécessitent de se souvenir
d’une information des exigences usagers : Nom de
l’article, date de vente, numéro de l’article, couleur,
adresse, téléphone, NAS, codePostal, …
z Garder à l’esprit que des attributs doivent être de types
simples : Booléen, date, nombre, chaîne de caractères,
heure, …
z En cas d’attribut complexe, c’est peut être un concept à
relier par une association ;
H. Lounis
7
Constituer un glossaire
z C’est un document définissant les termes dans le but de
communiquer et de réduire le risque de mauvaise
compréhension ;
z Il est important de par le nombre d’intervenants dans le
projet ;
z Il est constitué en parallèle avec les Ucs et le modèle
conceptuel ;
z Il est raffiné continuellement.
H. Lounis
Packages
z Ils permettent de regrouper et d’isoler des classes, des
associations, et éventuellement d’autres packages ;
z Ils regroupent le plus souvent un ensemble d’entités qui
correspondent à une fonctionnalité bien définie. Cette
fonctionnalité définira le nom du package ;
Client
client
concerner 1
acheter
facturation::facture Commande
1 1
*
Produit
H. Lounis
8
Packages
z Les packages constituent un Client
espace de nommage. client
Appartenance d’une classe à un concerner 1
acheter
facturation::facture Commande
package : 1 1
*
xNom du package :: nom Produit
de la classe
z 2 classes de même nom dans 2
packages différents : c’est
possible !
z Package vue globale vs.vue Facturation
détaillée ;
z Dépendance entre packages ;
Comptabilité
H. Lounis
Vue globale de packages
Configuration Simulation
Gestionnaire automatique
Contrôle base
de données Librairie
jRules 3.0 (FORTRAN)
Système objet
Object Store
H. Lounis
9
Organiser le diagramme de
classes
z Construire des packages ;
z Organiser les classes dans un diagramme (le respect de
certaines conventions) :
yLa hiérarchie des classes est placée sur un axe vertical, plaçant
les classes mères en haut ;
yLes classes ayant le même niveau de hiérarchie sont sur une
même ligne horizontale ;
yÉviter les associations qui se croisent (même en répétant
certaines classes) ;
yMettre les classes importantes du modèle au centre. Celui-ci
gagnera en lisibilité ;
H. Lounis
Itérer sur le modèle
conceptuel
z Vérifier que toutes les infos figurant dans le modèle se
retrouvent bien dans les spécs et dans les Ucs ;
z S’il y a des éléments supplémentaires, les valider par le
client ;
z Il faut retrouver tous les éléments des spécs et des Ucs ;
H. Lounis
10