Dictionnaire des donnes et graphe des dpendances fonctionnelles Document : cgo121
francois kieffer 30f09f2005 Page 1 sur 6
Dictionnaire des donnes et graphe des dpendances fonctionnelles
1 Le relev d'informations .................................................................................... 1 2 Le dictionnaire des donnes (DD)....................................................................... 2 3 Le graphe de dpendances fonctionnelles (GDF).................................................. 5
1 Le relev d'informations 1.1 En thorie c'est a . Le relev d'information est la chose la plus difficile de l'analyse merise ou UNL. Cependant, les sujets sont souvent bien faits, a dfaut d'tre compltement rels, et le relev d'information est facilit par le discours et la progression des exercices. Concepts, donnes et valeurs Avant d'aborder le NCD, on va pouvoir relever trois types d'informations qui sont des concepts, des donnes ou des valeurs. Les concepts sont des choses, des objets que l'on va grer. !ls deviendront probablement des entits du schma entit association vu plus loin. Les donnes sont des informations lmentaires sur les concepts. Donnes et concepts sont souvent masqus par des valeurs de ceux-ci ou exprims par des euphmismes ou des synonymes.
Donne Une donne est une information lmentaire que l'on ne peut pas dcomposer. Exemple oui : description, prix, quantit, numro d'identification, nom, prnom, ville, code postal, etc. . Exemple non : fournisseur, article, ingnieur Dans le discours du sujet, une donne est souvent rattache a un concept. Exemple oui : description de l'article, nom de l'employ, numro du client, numro de commande, etc. . Exemple non : description (tout court, sans dire de quoi)
Concept Un concept est une information complexe qui peut tre dcompose en donnes. Exemple oui : article, commande, client, employ, etc. . Exemple non : description, organisation gre, tapis Z7 cendr.
Pour dtecter un concept, on va relever les noms de choses, d'objets, de personnes ou de types. Ce seront souvent des concepts. Ce seront surement des concepts si des donnes y sont rattaches.
Valeur Certains concepts ou donnes sont masqus par des valeurs exposant diffrentes occurrences de ceux-ci. Exemple oui : Strasbourg, Nantes, Rennes, Lyon et Nulhouse sont des occurrences du concept 'ville'. Ces mmes valeurs sont, de plus, des occurrences de la donne 'nom ville'. Exemple non : type article, ville. Dictionnaire des donnes et graphe des dpendances fonctionnelles Document : cgo121
francois kieffer 30f09f2005 Page 2 sur 6
Dans tous les cas, il ne faut relever que les donnes et concepts pertinents pour l'tude, grs par le systme dcrit, et ne pas se laisser perturber par des informations qui constituent le bruit de l'tude. A noter que les information sur l'entreprise elle mme ne sont pas a relever, seules les donnes avec lesquelles on travaille sont a noter. Exemple descriptif : la socit !nfoTech travaille avec des fournisseurs a Strasbourg, Lyon et Nancy. - !nfoTech n'est pas une donne, c'est la description de l'organisation ; - Fournisseur est un concept (dont on ne sait rien d'autre) - Strasbourg, Lyon, . sont des occurrences de la donne 'nom ville' du concept 'ville'. - A indique qu'il y a un lien, une association, une relation entre les concepts fournisseur et ville
1.2 . mais en pratique . Certains concepts sont ambigus. Ainsi dans certains cas, des concepts seront relgus au rang de donne. Exemple descriptif : la socit !nfoTech travaille avec des fournisseurs a Strasbourg, Lyon et Nancy. Les noms des villes ne font pas l'objet d'une gestion particulire. - !nfoTech n'est pas une donne, c'est la description de l'organisation ; - Fournisseur est un concept (dont on ne sait rien d'autre) - Strasbourg, Lyon, . sont des occurrences de la donne 'nom ville' du concept 'ville'. - A indique qu'il y a un lien entre 'Fournisseurs' et 'ville'. Nais comme la ville n'a pas besoin d'tre de faon prcise, codifie (ajout au sujet) le nom de la ville sera not seul et le concept risque de disparatre.
De toutes faon, si on note les donnes dans un dictionnaire, les concepts ne seront pas nots en dehors du brouillon, a titre d'indicateur.
2 Le dictionnaire des donnes {DD) 2.1 Dfinitions Le dictionnaire des donn contient toutes les donnes ncessaires, releves dans l'analyse de l'organisation (dans l'analyse du sujet). !l est organis sous forme d'un tableau de cinq colonnes. Exemple descriptif : N Donne Code Donne Description Donne Type et longueur Observations 1 numFou Numro du fournisseur Numrique 5 !dentifiant de Fournisseur 2 nomFou Raison sociale Alphanumrique 30 3 dateLiv Date de livraison Date + nomville Nom de la ville Alphanumrique 30 .
Les donnes releves ici concernent les donnes concrtes et utiles a l'organisation, souvent repres par des noms communs ou propres dans le descriptif de l'organisation. Les donnes concernant l'organisation elle mme ne sont pas a relever. Dictionnaire des donnes et graphe des dpendances fonctionnelles Document : cgo121
francois kieffer 30f09f2005 Page 3 sur 6 2.2 Construction Une fois toutes les donnes releves, il faut contrler qu'il n'y ai pas de : - imprcisions : les descriptions sont suffisamment prcises (dans une commande, quantit ne suffit pas, prciser quantit commande) - polysmes : deux donnes portant le mme nom ne signifiant pas la mme chose. Dans ce cas, il faut modifier le nom de la donne en prcisant son rle (nom ? prciser nom fournisseur et nom ville), - synonymes : deux donnes diffrentes peuvent signifier la mme chose. Dans ce cas, choisir une donne et supprimer les synonymes (code article et numro d'identification de l'article, rfrence article, .),
Pour rgler la plus part des problmes, le premier travail est de prciser les descriptions trouves dans le sujet. Pour cela, on prcisera pour chaque donne la nature, le rle et le concept auquel elle appartient. Exemples oui : - nom de l'employ : nature=nom=texte, rle=nom, concept=employ ; - nom du fournisseur : nature=nom=texte, rle=nom, concept=fournisseur; - quantit d'article command : nature=quantit, rle=quantit, concepts=article, commande - date de commande : nature=date, rle=date de la commande, concept=commande Exemple non : - description : nature=texte, rle=description, concept inconnu - fournisseur : nature et rle inconnus, concept=fournisseur
Les donnes calcules (totaux, prixTTC si on dispose du prix HT et du taux de TvA, .) ne sont pas retenues mais elles peuvent indiquer la prsence de donnes non voques qui ont permis leur calcul (un prix TTC rvle la prsence d'un prix HT et d'un taux de taxe, le prixTTC ne sera pas une donne, les prix HT et taux le seront). Elles seront indiques dans le dictionnaire mais n'auront ni code, ni numro de donne.
Les concepts ne sont jamais mentionns dans le dictionnaire des donnes.
Le travail suivant est d'liminer les homonymes et polysmes puis les synonymes.
Ensuite, et ensuite seulement, on attribuera un code a chaque donne. Ce code reprendra les nature, rle et concepts de la description afin d'tre plus clair.
Dictionnaire des donnes et graphe des dpendances fonctionnelles Document : cgo121
francois kieffer 30f09f2005 Page + sur 6 2.3 Convention de notation des codes des donnes et concepts Une bonne solution est d'abrger le concept puis d'y associer le rle et la nature. Le sens importe peu, l'essentiel est de rester cohrent et utiliser le mme systme tout au long de l'tude. Le code des donnes une fois dfini, il ne bougera plus et sera implment physiquement dans la base de donnes. Soyez donc trs attentif aux codes que vous donnez. Une convention d'criture rcente utilise l'association (la concatnation) de mots dont chaque mot commencera par une majuscule. Exemple oui : nomFournisseur, artDesc, descArt, etc. . Exemple non : nomfournisseur, artdesc, descart : peu lisibles.
Dans cette convention, un concept, une entit, eune relation commencera par une majuscule : Exemple : Fournisseur, Article, LigneCommandeAtricle, .
Une donne commencera par une minuscule : Exemple : nomFou, artDesc, .
Cette convention est issue de la programmation objet en langage java et C
La convention prcdente utilisait des caractre soulign ('_', angl. : underscore) comme suit : Exemple : nom_fournisseur, desc_art Cette notation est alatoire car il est facile de faire une erreur "d'orthographe" au cours de l'tude. Exemple : qt_article_command, qt_articleCommand
2.4 Les types principaux de donnes Les types de donnes sont principalement : - Numrique : compos exclusivement de chiffres (valeurs, numro d'ordre, de srie, compteurs, .), longueur x chiffres dont y dcimales ; - Alphanumrique : compos de caractres alphabtiques ou numriques, les espaces et quelques signes de ponctuation sont tolrs (. , ! $ * f + = - _ @ 8 # .), mais il convient de les viter autant que possible ; - Date : nombre reprsentant une date (pas de longueur a spcifier) ; - Boolen : champ pouvant prendre les valeurs vrai ou faux ( ou oui ou non, pas de longueur a spcifier). !ls permettent de prciser la nature de la donne. Cependant, la dtermination prcise du type peut tre difficile au dbut de l'tude. D'ou la ncessit de prciser la nature de la donne dans sa description.
Dictionnaire des donnes et graphe des dpendances fonctionnelles Document : cgo121
francois kieffer 30f09f2005 Page 5 sur 6 3 Le graphe de dpendances fonctionnelles {GDF) 3.1 Dpendance fonctionnelle, dfinition Une dpendance fonctionnelle est une interrelation, un lien, une association, une relation entre deux donnes ou deux groupes de donnes. On distingue une source et une cible. La dfinition de dpendance fonctionnelle est la suivante : Pour une valeur source, on peut dterminer une et une seule valeur cible
J'explique : Si, connaissant une valeur d'une donne a, on peut dterminer une et une seule valeur d'une donne b, alors on peut dire que b dpendent fonctionnellement de a. (en maths on pourrait crire : b=(a) ; nomFou=(numFou) )
Exemple : la valeur F0262 du n de fournisseur dtermine que le nom du fournisseur est plasti'Form (a Arras). Le numro du fournisseur dtermine le nom du fournisseur (un et un seul). Le nom du fournisseur dpend du numro du fournisseur (dtermin par).
Attention, une dpendance fonctionnelle n'est pas rversible. Exemple : plusieurs fournisseurs pourraient avoir le mme nom (homonymes).
Une dpendance fonctionnelle est symbolise par une flche : numFou -> nomFou.
En thorie, la cible doit toujours exister. En pratique, pour un numro de commande, il n'y a pas forcment de numro de livraison mais lorsqu'il y en a un, il est toujours unique. On peut noter ce type de dpendances par une flche en pointill.
3.2 La matrice des DF A l'aide du dictionnaire des donnes, il est possible d'tablir la matrice des DF directes. Cette matrice est un tableau faisant apparatre verticalement et horizontalement toutes les donnes. Elles seront source horizontalement et cible verticalement. Je ne me sers pas de la matrice des DF mais il faut savoir qu'elle existe.
3.3 La liste des DF Aprs avoir constitu le dictionnaire des donnes, pour construire le graphe des DF, il faut reprer toutes les DF entre les donnes du dictionnaire.
Dictionnaire des donnes et graphe des dpendances fonctionnelles Document : cgo121
francois kieffer 30f09f2005 Page 6 sur 6 - homonymes possibles cdeNum -> qtArtCde - le n de commande ne suffit pas a dterminer la quantit d'article, il peut y avoir plusieurs articles dans la commande. Pour amliorer la liste des DF, il faut contrler et liminer les transitivits. Si a->b, c et b->c alors a->b et b->c. on simplifie la premire DF. Exemple : cdeNum->cdeDate, cliNom et cliNum -> cliNom a veut dire : cliNum->cliNom et cdeNum->cdeNom
3.4 Construire le graphe des DF Ce graphe des DF est une reprsentation graphique des dpendances fonctionnelles entre les donnes. Exemples :
Dans certains cas, une donne peut dpendre de plusieurs attributs.
Exemple : un article est achet chez diffrents fournisseurs avec des prix diffrents. Un fournisseur peut vendre plusieurs articles.
La notation du GDF est souple et on peut aussi le dcrire comme suit : Exemple :
(noter le signe + qui signifie que les donnes numFou et codeArt doivent tre conjointes)
Grace au graphe des DF il est alors possible de construire un NCD sur a 80, les autres 20 sont constitus de rflexion sur l'existence d'associations, non hirarchiques et non porteuses de proprit entre les concepts, et de questions telles que : Cette donne est-elle codifiable, doit-elle tre codifie, Y a-t-il toujours une valeur pour cette donne, est elle unique ? Cette association ternaire est elle juste ? Les associations ayant la mme collection d'entit ont-elle le mme ensemble d'occurrences ?
A suivre, avec le NCD (doc cgo122) puis le passage du GDF au NCD (doc cgo123). typDesc typCode nomFou adrFou villeFou numFou prixAchat numFou+codeArt descArt poidsArt qtArt codeArt nomFou adrFou villeFou numFou + prixAchat typDesc typCode descArt poidsArt qtArt codeArt