Concepts : Modélisation
des données conceptuelles
Rubriques
Introduction
Comme défini dans [NBG01],
la modélisation conceptuelle des données représente l'étape initiale du
développement de la conception des données persistantes et du stockage
de données persistantes pour le système.
Dans de nombreux cas, les données persistantes du système sont gérées
par un système de gestion de base de données relationnelle (SGBDR).
Les entités métier et système identifiées au niveau conceptuel à partir des
modèles métier et des exigences du système évoluent via les activités d'analyse
et de conception de cas d'utilisation et de conception de base de données dans
des conceptions de table physique détaillée qui seront implémentées dans le
SGBDR. Notez que le modèle conceptuel de données abordé dans ce document
ne constitue pas une artefact distinct. Il est en revanche constitué d'une vue
composite des informations contenues dans des artefacts existants
Modélisation métier, Exigences et Disciplines d'analyse et de
conception qui sont adaptés au développement du
modèle de données.
Le modèle de données évolue
généralement à travers les trois étapes générales suivantes :
- Conceptuel : ce stade implique l'identification des entités
système et métier clé de niveau supérieur et leurs relations qui définissent la
portée du problème devant être corrigé par le système.
Ces entités métier et système clés sont définies à l'aide des éléments de
modélisation du profil UML pour la modélisation métier incluse dans le
modèle d'analyse métier et les
éléments du modèle classe d'analyse
du modèle d'analyse.
- Logique : ce stade implique la précision des entités
conceptuelles système et métier de haut niveau en entités logiques plus
détaillées. Ces entités logiques et leurs relations peuvent être éventuellement
définies dans un modèle logique de données à l'aide des éléments de
modélisation du profil UML pour la conception de base de données telle que
décrite dans Principes et conseils : modèle de
données. Ce modèle logique de données fait partie de
l'Artefact : modèle de donnée et
n'est pas un artefact RUP distinct.
- Physique : ce stade implique la transformation des conceptions de
classe logique en conceptions de table de base de données physique détaillées
et optimisées. Le stade physique inclut également le mappage des conceptions de
table de base de données sur des espaces table et sur le composant de base de
données dans la conception du stockage de base de données.
Les activités liées à la conception de base de données couvrent le
cycle de vie complet du développement logiciel et les activités initiales de
conception de base de données peuvent commencer au cours de la
phase de création. Pour les
projets qui utilisent la modélisation métier pour décrire le contexte métier
de l'application, la conception de la base de données peut commencer au niveau
conceptuel par l'identification des acteurs métier et des cas d'utilisation
métier dans le modèle de cas d'utilisation métier, et les travailleurs et
les entités métier dans le modèle d'analyse métier. Pour les projets qui
n'utilisent pas la modélisation métier, la conception de la base de données
peut commencer au niveau conceptuel par l'identification des acteurs et des cas
d'utilisation système dans le modèle de cas d'utilisation et
l'identification des classes d'analyse
dans le modèle d'analyse des
réalisations de cas d'utilisation.
La figure ci-dessous illustre l'ensemble des éléments du modèle de données conceptuel
qui réside dans les modèles métier, les modèles d'exigences
et le modèle d'analyse.

Les sections suivantes décrivent les éléments des modèles métier, du
modèle de cas d'utilisation et du modèle d'analyse pouvant être utilisés
pour définir le modèle de données conceptuel initial pour les données
persistantes du système.
Eléments de modélisation conceptuelle des données
Modèles métier
Modèle de cas d'utilisation métier
Le modèle de cas d'utilisation métier est constitué d'acteurs métier et de
cas d'utilisation métier. Les cas d'utilisation métier représentent des
processus métier clé qui sont utilisés pour définir le contexte du système à développer.
Les acteurs métier représentent des entités principales externes qui
interagissent avec le métier via les cas d'utilisation métier.
La figure ci-dessous illustre un exemple de modèle de cas
d'utilisation métier très simple pour une application d'enchères en ligne.

Comme entités d'importance pour le problème d'espace dans le système, les
acteurs métier sont des entités candidates pour le modèle de données
conceptuel. Dans l'exemple ci-dessus, les acteurs métier Acheteur et
Vendeur sont des entités candidates pour lesquelles l'application d'enchères en
ligne doit stocker des informations.
Modèle d'analyse métier
Le modèle d'analyse métier comporte des classes qui modélisent les
travailleurs et les entités métier identifiés par l'analyse de l'enchaînement
des activités dans le cas d'utilisation métier.
Les travailleurs métier représentent les travailleurs participants qui
effectuent les actions requises pour mener à bien cet enchaînement d'activités.
Les entités métier sont des "choses" que les travailleurs métier
utilisent ou produisent au cours de l'enchaînement des activités.
Dans de nombreux cas, les entités métier représentent des types d'informations
que le système doit stocker de façon permanente.
La figure ci-dessous montre un exemple de diagramme de séquence qui
dépeint les acteurs et les entités métier d'un scénario de cas d'utilisation
métier destiné à la gestion d'une vente aux enchères.

Dans cet exemple simplifié, l'objet Responsable des enchères
représente un rôle de travailleur métier qui sera vraisemblablement tenu
par le système de gestion des enchères en ligne lui-même.
Les objets Enchères et Article d'enchères sont des entités métier
utilisées ou produites par le travailleur responsable des enchères,
agissant en tant qu'agent pour les acteurs métier Vendeur et Acheteur.
Du point de vue de la conception d'une base de données, les entités métier
Enchères et Article d'enchères sont des entités candidates pour le modèle
conceptuel de données.
Exigences et modèles d'analyse
Pour les projets qui n'effectuent pas de modélisation métier, les
exigences (cas d'utilisation système) et les modèles d'analyse contiennent des
éléments de modèle qui peuvent être utilisés pour développer un modèle de
données conceptuel initial. Pour les projets qui utilisent la modélisation
métier, les entités et les relations métier identifiées dans les modèles
d'analyse métier sont détaillées dans le modèle d'analyse en tant
que classes d'entités.
Modèle de cas d'utilisation système
Le modèle de cas d'utilisation système comporte des acteurs et des cas
d'utilisation système qui définissent les principales interactions des
utilisateurs avec le système.
Les cas d'utilisation système définissent les exigences fonctionnelles du
système.
Du point de vue de la modélisation conceptuelle des données, les acteurs
système représentent des entités externes au système pour lequel le système
peut avoir besoin de stocker des informations persistantes.
Ceci est important dans les cas où l'acteur système est un système externe qui
fournit et/ou reçoit des données du système en développement.
Des acteurs système peuvent dériver des acteurs métier dans le modèle de
cas d'utilisation métier et des travailleurs métier dans le modèle d'analyse
métier.
La figure ci-dessous dépeint le modèle de cas d'utilisation métier pour
le système d'enchères en ligne. Dans ce modèle, les acteurs métier Acheteur et
Vendeur sont dérivés d'un acteur métier utilisateur générique.
Un nouvel acteur système nommé Bureau de crédit a été ajouté pour refléter le
besoin de traiter le paiements via une entité externe.
Ce nouvel acteur système est une autre entité candidate pour le modèle de données conceptuel.

Modèle d'analyse
Le modèle d'analyse contient les
classes d'analyse identifiées dans
les réalisations de cas d'utilisation pour les cas d'utilisation système.
Les types de classes d'analyse présentant le plus grand intérêt du point de
vue de la modélisation conceptuelle des données sont les classes d'analyse
d'entités. Comme défini dans Principes et conseils
: classe d'analyse, les classes d'analyse d'entités représentent des
informations gérées par le système et devant être stockées de façon
permanente. Les classes d'analyse d'entités et leurs relations forment la base
du modèle de données initial pour l'application.
Les classes d'analyse d'entités conceptuelles contenues dans le modèle
d'analyse peuvent être détaillées en classes de conception
persistante logiques dans le modèle de conception. Ces classes de
conception représentent des tables candidates dans le modèle de données.
Les attributs des classes sont des colonnes candidates pour les tables et
représentent également des clés candidates pour celles-ci.
Pour obtenir une description indiquant comment mapper les éléments du modèle de
conception sur ceux du modèle de données, voir
Principes et conseils : Rétro-conception de
bases de données relationnelles.
|