Bonsoir,
Concernant votre 2e question :
Il n’existe pas de norme Merise au sens où il existe par exemple une norme SQL, il y a seulement des ouvrages de référence, auxquels les concepteurs se conforment plus ou moins. Merise n’est pas une théorie contrairement au modèle relationnel de données, mais une méthode, ce qu’annonce clairement le titre de l’ouvrage de référence par excellence de Tardieu, Rochfeld et Colletti : La Méthode Merise, tome 1, Principes et outils. Citons encore des auteurs remarquables comme Yves Tabourier (De l’autre côté de Merise) ou Dominique Nanci (Ingenierie des systèmes d'information : Merise, deuxième génération). Il existe des comptes-rendus de l’AFCET (laquelle a malheureusement disparu) et bien sûr de nombreux autres ouvrages. Quoi qu’il en soit, pour en revenir à La Méthode Merise, tome 1, Principes et outils, côté grammaire ça se résume à ceci (sujet à interprétation...) :
Cas des cardinalités 1,1
Un AGL comme PowerAMC (anciennement AMC Designor) accepte tout à fait la représentation ci-dessous, selon laquelle un collaborateur fait partie d’un service depuis telle date :
L’AGL se contente au stade MLD de faire figurer les attributs ServiceId et DateEmploi dans l'en-tête de la table COLLABORATEUR :
Ce que dit la FAQ Merise chez DVP (par Nanci) :
« Depuis les débuts de la modélisation Entité-Relation de Merise, une relation binaire de cardinalité *,n - 1,1 ne doit pas être porteuse de propriétés. C'est considéré comme une "anomalie" et certains outils le diagnostiquent. Ces éventuelles propriétés doivent être définies du côté de l'entité de cardinalité 1,1 (c'est ce qui se passera de toute façon lors de la transformation). Mais attention, ce n'est plus vrai si la cardinalité est 0,1 !
Toutefois, on peut tolérer qu'une association 1,1 – 0,n soit porteuse de propriétés dans les premières phases d'élaboration du modèle (brouillon) ; mais cela devra être rectifié avant la finalisation du modèle. »
Mais pour ma part, je pose la question : pourquoi ce serait une "anomalie" ?
Par ailleurs, dans l’ouvrage mentionné plus haut, D. Nanci écrit :
« Toute relation binaire avec cardinalité 1,1 ne peut être porteuse de propriété. En effet, une telle propriété migre alors obligatoirement dans l’entité portant cette cardinalité 1,1. »
Il s’agit là d’un raisonnement circulaire, un argument d’autorité qui ne prouve rien, propre à instaurer un dialogue de sourds à la Fernand Raynaud... Si je pose la question : « Pourquoi donc une telle association ne pourrait-elle être porteuse de propriétés ? » Réponse : « Parce que ces propriétés doivent migrer ! »
Cas des cardinalités 0,1
Prenons l'exemple suivant : seuls certains collaborateurs sont localisés dans un bureau d’un site de l’entreprise.
MCD
MLD produit par PowerAMC :
Pour la petite histoire, L’AGL a fait figurer dans l’en-tête de la table COLLABORATEUR les attributs BureauId et DateAffectation, mais le bonhomme Null ne manquera de venir ficher la patouille, et il sera prudent de transformer ainsi le MLD :
Concernant WinDesign et les identifiants alternatifs, je reste muet car je n'ai pas l'AGL. En revanche, D. Nanci fait mention de ce type d'identifiant dans son ouvrage que j'ai cité.
Partager