Quelle différence entre un MCD et un MLD-R (MLD-relationnel) ?

Avant d'aborder la différence entre un modèle conceptuel de données (MCD) et un modèle logique de données relationnel (MLD-R), il y a lieu de se revenir à la différence entre le modèle conceptuel de données et le modèle logique de données.

Pour rappel, le MCD est la représentation la plus abstraite que l'on réalise de la structure des données d'un système d'information. Il est réalisé à partir des règles de gestion assignées au système d'information indépendamment de toute technologie.

Le MLD est une représentation qui prend en compte le choix technologique de la réalisation de la future base de données. Il y a donc potentiellement autant de "sortes" de MLD qu'il y a de technologies différentes.

Le modèle logique de données relationnel (MLD-R), souvent abrégé modèle relationnel, est propre à la technologie des bases de données relationnelles (SGBD-R pour système de gestion de base de données relationnelle).

Les bases de données XML (XML - Langage de balisage extensible) ou encore les bases de données orientées objet sont d'autres technologies qui pourraient amener à un MLD-XML ou un MLD-OO pour "orienté objet".

La confusion entre MCD et MLD-R est courante. Deux éléments, parmi d'autres, peuvent expliquer cette confusion:

  • Les modalités de réalisation et d'implantation de la future base de données.

  • La symbolique de représentation et le graphisme des deux modèles ont beaucoup de points communs

Modalités de réalisation et d'implantation de la future base de données

Lorsque le périmètre du système d'information à réaliser est restreint, quelques entités dans le vocabulaire du MCD ou quelques tables dans le vocabulaire du MLD-R, le modèle conceptuel peut être occulté. Quelques méthodologies de RAD (Rapid Application Development) préconisent cette approche.

Il est possible de faire l'impasse du MCD si la représentation mentale du MLD-R permet de comprendre tous les concepts sous-jacents (règles métiers) sans être perturbé par les éléments technologiques du MLD-R comme les contraintes et clés étrangères.

Lorsque le périmètre du système d'information à réaliser est conséquent et que le travail de nombreux acteurs (analystes métier, architectes logiciels, concepteurs, développeurs...) doit être coordonné, il est indispensable de disposer de modèles suffisamment abstraits (MCD) pour que tout le monde puisse comprendre les éléments le concernant. Le MLD-R contient nombre d'éléments technologiques tels que les clé primaires et les clé étrangères qui sont du bruit pour les acteurs qui ne sont pas directement concernés par le système de gestion des bases de données relationnelles.

Il n'est donc pas possible de faire l'impasse du MCD si une représentation abstraite, exempte du bruit amené par l'une ou l'autre technolohgie, est la condition du succès de la coordination de nombreux acteurs.

Dit autrement et en nous basant sur le schéma ci-dessus:

  • Lorsque le périmètre du système d'information à réaliser est restreint, il est possible de faire l'impasse d'un modèle conceptuel et de représenter les règles métiers directement et les contraintes technologiques dans un modèle logique de données relationnel (MLD-R).

  • Lorsque de nombreux acteurs doivent être coordonnés, il est indispensable de réaliser un modèle conceptuel de données (MCD) qui fait abstraction de toute technologie et s'attache aux seules règles métiers. Ensuite ce modèle peut être transformé en un ou plusieurs modèles logiques de technologies différentes (MLD-R, MLD--XML ou MLD-OO) si nécessaire.

Symbolique de représentation et graphisme du MCD et du MLD-R

En haut de l'image ci-dessous, nous voyons une portion de MCD comportant deux entités et une association.

En bas de l'image ci-dessous, nous voyons la prtion de MLD-R résultant de la transformation des 2 entités du MCD.

Les similitudes des 2 modèles:

  • Les entités et les tables sont représentées par des boîtes rectangulaires.

  • Les attributs d'entités et les colonnes de tables sont représentées comme propriétés des boîtes rectangulaires

Les différences entre les deux modèles ci-dessus:

Les différences évoquées, nous semblent illustrer la problématique du bruit embarqué dans un modèle logique de données.

En lisant le MCD et sans connaitre la technologie relationnelle, nous comprenons aisément:

  • qu'un fournisseur peut fournir plusieurs catégories d'articles;

  • qu'une catégorie d'articles peut être fournie par plusieurs fournisseurs.

En lisant le MLD-R, cette compréhension n'est pas possible, si nous ne savons pas ce que sont les clé primaires, les clé étrangères... c'est-à-dire si nous ne connaissons pas la technologie relationnelle.

Comment transformer un MCD en un MLD-R ?

https://sites.google.com/a/smartmodel.ch/conceptionsii/config/pagetemplates/modelemldr/PageGardeAmazon.jpg