<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>data dictionary &#8211; Smals Research</title>
	<atom:link href="https://www.smalsresearch.be/tag/data-dictionary/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.smalsresearch.be</link>
	<description></description>
	<lastBuildDate>Thu, 09 Apr 2026 12:15:07 +0000</lastBuildDate>
	<language>en-GB</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://www.smalsresearch.be/wp-content/uploads/2026/01/cropped-cropped-Smals_Research-32x32.png</url>
	<title>data dictionary &#8211; Smals Research</title>
	<link>https://www.smalsresearch.be</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Comment construire un data dictionary&#160;?</title>
		<link>https://www.smalsresearch.be/comment-construire-un-data-dictionary/</link>
		
		<dc:creator><![CDATA[Jean-Pierre Latour]]></dc:creator>
		<pubDate>Tue, 22 Nov 2016 07:00:24 +0000</pubDate>
				<category><![CDATA[[FR]]]></category>
		<category><![CDATA[Blog post]]></category>
		<category><![CDATA[data dictionary]]></category>
		<category><![CDATA[Information management]]></category>
		<category><![CDATA[methodology]]></category>
		<category><![CDATA[Productivity]]></category>
		<category><![CDATA[standards]]></category>
		<guid isPermaLink="false">/?p=10164</guid>

					<description><![CDATA[Rappel : pourquoi un data dictionary ? La raison d’être d’un data dictionary réside dans la nécessité de construire un vocabulaire commun entre tous les acteurs d&#8217;un projet sur l&#8217;aspect particulier des données. Le partage d’un vocabulaire commun facilite la communication entre tous les acteurs du projet. Il constitue un facteur clé de succès pour éviter les [&#8230;]]]></description>
										<content:encoded><![CDATA[<h1>Rappel : pourquoi un data dictionary ?</h1>
<p><strong>La raison d’être d’un data dictionary réside dans la nécessité de construire un vocabulaire commun entre tous les acteurs d&#8217;un projet sur l&#8217;aspect particulier des données.</strong><a href="/data_dictionary_screen-2/"><img fetchpriority="high" decoding="async" class="alignright size-medium wp-image-10167" src="/wp-content/uploads/2016/11/data_dictionary_screen-300x246.png" alt="data_dictionary_screen" width="300" height="246" srcset="https://www.smalsresearch.be/wp-content/uploads/2016/11/data_dictionary_screen-300x246.png 300w, https://www.smalsresearch.be/wp-content/uploads/2016/11/data_dictionary_screen-768x629.png 768w, https://www.smalsresearch.be/wp-content/uploads/2016/11/data_dictionary_screen.png 930w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><strong>Le partage d’un vocabulaire commun facilite la communication entre tous les acteurs du projet.</strong> Il constitue un facteur clé de succès pour éviter les ambiguïtés dues à des interprétations différentes des concepts manipulés au sein d’un projet de développement d’application.</p>
<p>La mise en place d&#8217;un data dictionary est indissociable de la mise en place d’un glossaire propre au projet. Le data dictionary n’est en fait qu’un subset du glossaire projet.</p>
<p>Plus d&#8217;explications dans mon blogpost précédent&nbsp;: &#8220;<a href="/pourquoi-et-quest-ce-quun-data-dictionnary-1/" target="_blank">Pourquoi et qu’est-ce qu’un data dictionary&nbsp;?</a>&#8221;</p>
<h1>Comment construire un data dictionary ?</h1>
<p>La construction d’un data dictionary peut s’appuyer sur quelques notions simples et normalement bien connues.</p>
<h2>Le diagramme de contexte</h2>
<p>Les premières opportunités pour commencer à alimenter le data dictionary résident dans les flux identifiés via le diagramme de contexte. En effet, les données entrantes et sortantes du système à construire constituent autant d’éléments permettant l’établissement d’un modèle de données métier (business data model). Voir aussi que ces données alimentent indirectement la définition des besoins fonctionnels. En effet, les données doivent être alimentées, consultées et mises à jour. Elles sont aussi l’objet de calculs. Autant de fonctionnalités à prévoir qui ne peuvent être exécutées sans disposer des données (la matière première du métier).</p>
<p>Si le projet couvre plusieurs domaines métiers un diagramme de contexte sera établi par domaine métier.</p>
<h2>Le modèle de données conceptuel ou la définition des entités métiers</h2>
<p>Pour chaque domaine métier, l’étape suivante est d’établir le modèle conceptuel de données (conceptual data model) en précisant pour chaque classe l’ensemble des entités ainsi que les relations entre classes. Idéalement sous la forme d’un diagramme entités-relations en UML. Comme dit précédemment, l’ensemble de ces données permettra d’identifier l’essentiel des fonctionnalités à prévoir (alimentation, consultation, mises à jour, traitements).</p>
<h2>La définition des attributs au sein des entités métiers (modèle de données logique)</h2>
<p>La troisième étape consiste à définir la signification de chaque classe, attribut et association du data model. <strong>Les définitions données dans le data dictionary devront (idéalement) avoir une valeur universelle dans tout le projet.</strong> Si tel n’est pas le cas, et ce n’est pas rare (les significations peuvent varier d’un domaine métier à l’autre), il convient de relever les différentes définitions existantes dans le scope du projet et de les mettre en évidence. Il s’agira alors, dans la mesure du possible, de procéder à une unification. Mais des divergences peuvent devoir rester. Il faut alors impérativement en être conscient et bien entendu les documenter.</p>
<h2>La localisation des données (modèle de données physique)</h2>
<p>La quatrième étape consiste à préciser la localisation physique des données : dans quelle base de données et quelle table se trouvent les classes et attributs.</p>
<p><strong>Cette étape doit aussi s’intéresser à l’existence de dupliquas éventuels et donc faire la différence entre source authentique (la source dans laquelle se trouve la vérité sur la donnée) et les doublons éventuels.</strong></p>
<h2>Les règles métiers</h2>
<p>La cinquième étape s’intéressera à l’identification des contraintes et règles métiers (business rules) sur les entités de données.</p>
<h1>Quelles informations faire figurer dans le data dictionary ?</h1>
<p>Le contenu du data dictionary découle des explications données au point précédent :</p>
<p>Pour chaque domaine métier, le <strong>context diagram</strong> et le modèle conceptuel de données.</p>
<p>Pour chaque classe du <strong>modèle entités- relations</strong> (qui formalise le modèle conceptuel de données), l’ensemble des attributs.</p>
<p>Pour chaque classe et chaque attribut, un <strong>nom</strong> et une <strong>définition</strong> claire (donc non ambigüe et éventuellement multilingue).</p>
<p>L’ensemble des <strong>relations</strong> entre les classes.</p>
<p>Pour chaque relation un nom et une définition claire (non ambigüe et éventuellement multilingue).</p>
<p>Pour chaque classe la liste <strong>des moyens d’alimentation, de mise à jour et de consultation</strong>.</p>
<p>Ceci suppose de recenser :</p>
<ul>
<li>l’ensemble des data flows (qui devraient avoir été recensés lors de l’établissement du diagramme de contexte) – de type batch (flat files ?) ou remote  (web services&nbsp;?);</li>
<li>l’ensemble des écrans (inventaire élaboré au fur et à mesure des itérations sur le projet) – on parlera de services de présentation dans le cadre d’une architecture SOA.</li>
</ul>
<p>Autres informations possibles :</p>
<ul>
<li><strong><em>les limitations de droit d’accès sur les données sensibles</em></strong>. Mais ceci demande d’avoir identifié les rôles métier dans l’organisation. Remarque : ceci montre encore une fois que l’approche par les données permet la découverte organisée de toute une série d’informations de première importance pour l’analyse fonctionnelle.</li>
<li>les <strong><em>tags XML</em></strong> utilisés dans les échanges au format XML si d’application.</li>
</ul>
<h1>Quels moyens pour la mise en place du data dictionary ?</h1>
<p>L’établissement des diagrammes de contexte et des diagrammes de classes sera réalisé avec un outil de dessin de type Visio ou, plus élaboré, Enterprise Architect, Visual Paradigm ou autre.</p>
<p>Les définitions sur les classes / attributs et le recensement des moyens d’accès sera réalisé dans un document Word par domaine métier ou dans un fichier Excel, les deux pouvant être complémentaires.</p>
<p>Les documents seront publiés dans un repository de type CMS. SharePoint par exemple.</p>
<p>Une mindmap comme point d&#8217;entrée peut être utile pour faciliter la navigation entre les domaines métiers et les entités.</p>
<p>&nbsp;</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Pourquoi et qu’est-ce qu’un data dictionary&#160;?</title>
		<link>https://www.smalsresearch.be/pourquoi-et-quest-ce-quun-data-dictionnary-1/</link>
		
		<dc:creator><![CDATA[Jean-Pierre Latour]]></dc:creator>
		<pubDate>Tue, 12 Jan 2016 07:00:34 +0000</pubDate>
				<category><![CDATA[Blog post]]></category>
		<category><![CDATA[data dictionary]]></category>
		<category><![CDATA[Information management]]></category>
		<category><![CDATA[methodology]]></category>
		<category><![CDATA[Productivity]]></category>
		<category><![CDATA[standards]]></category>
		<guid isPermaLink="false">/?p=9324</guid>

					<description><![CDATA[Dans tout projet de développement informatique la mise en place rapide d’un vocabulaire commun est&#160;: &#8211; un facteur clé de succès (pour éviter les incompréhensions et les ambiguïtés) ; &#8211; un gage de productivité (pour éviter que chacun ne doive se livrer aux mêmes recherches sur le sens des différents concepts intervenant dans le projet) ; &#8211; [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><a href="/pourquoi-et-quest-ce-quun-data-dictionnary-1/data_dictionary_screen/" rel="attachment wp-att-9327"><img decoding="async" class="alignleft size-medium wp-image-9327" src="/wp-content/uploads/2016/01/data_dictionary_screen-300x246.png" alt="data_dictionary_screen" width="300" height="246" srcset="https://www.smalsresearch.be/wp-content/uploads/2016/01/data_dictionary_screen-300x246.png 300w, https://www.smalsresearch.be/wp-content/uploads/2016/01/data_dictionary_screen-768x629.png 768w, https://www.smalsresearch.be/wp-content/uploads/2016/01/data_dictionary_screen.png 930w" sizes="(max-width: 300px) 100vw, 300px" /></a>Dans tout projet de développement informatique la mise en place rapide d’un <strong>vocabulaire commun</strong> est&nbsp;:</p>
<p>&#8211; un <strong>facteur clé de succès</strong> (pour éviter les incompréhensions et les ambiguïtés) ;</p>
<p>&#8211; un gage de <strong>productivité</strong> (pour éviter que chacun ne doive se livrer aux mêmes recherches sur le sens des différents concepts intervenant dans le projet) ;</p>
<p>&#8211; un gage de <strong>qualité</strong> en uniformisant toute une série de conventions et contraintes à respecter par tous, ceci en vue d&#8217;éviter les interprétations divergentes.</p>
<p>Cette problématique est adressée en construisant un glossaire projet.</p>
<p>Un data dictionary n’est rien d’autre qu’un subset de ce glossaire, dont le scope est centré sur les données, matière première des applications à construire.</p>
<p><strong>Un data dictionary est un repository qui contient des données sur les données</strong> (soit des méta données).</p>
<p>Les données traditionnellement stockées dans un data dictionary sont, sans être exhaustif&nbsp;:</p>
<ul>
<li>les noms des entités de données et les tables correspondantes de la ou des bases de données ;</li>
<li>les attributs des entités et les colonnes correspondantes dans les tables ;</li>
<li>les relations entre entités ;</li>
<li>les dupliquas éventuels (auquel cas il convient de préciser la source maître) ;</li>
<li>la signification métier des données, éventuellement dans plusieurs langues ;</li>
<li>les domaines de valeurs si des contraintes existent de ce point de vue ;</li>
<li>les autres contraintes (telles que les contrôles croisés entre données);</li>
<li>les libellés à utiliser dans les écrans ;</li>
<li>les dispositifs d’alimentation et de consultation ;</li>
<li>les schémas XSD éventuels;</li>
<li>…</li>
</ul>
<p>Il est facile de comprendre que la présence d’un data dictionary aura un effet significatif immédiat sur les équipes de développement. Ainsi, par exemple, les développeurs sauront où aller chercher les données et quels intitulés leur donner dans les écrans. De même, quels contrôles appliquer dans les écrans d’encodage. Le data dictionary peut aller jusqu’à inclure les traductions des libellés dans les différentes langues utilisées par l’organisation.</p>
<p>Faut-il insister sur les heures perdues par tout un chacun lorsqu’une information vitale pour l’exercice de son activité est absente ou difficile à localiser ? Faut-il mettre en évidence les heures perdues à chercher et rechercher une information sortie de sa mémoire en interpellant / distrayant régulièrement des collègues (avec les effets collatéraux sur la productivité de ceux-ci) ou en « fouinant » dans une documentation de qualité médiocre ?</p>
<p>Faut-il aussi insister sur les effets absolument pervers de documentations personnelles construites par les uns et les autres sur de l’information en fait utile à tous ? Elles sont le plus souvent parcellaires, dispersées et soumises à interprétation personnelle, avec bien entendu des risques de désynchronisation par rapport à la dernière vérité et toutes les conséquences qui peuvent en découler en termes de divergence dans les implémentations des différentes parties d&#8217;un même projet.</p>
<p><strong>Beaucoup d’efforts dans le cadre du master data management pourraient sans doute être épargnés si une attention plus grande était portée à l’effort transversal de documentation sur les données.<br />
</strong></p>
<p>Les approches Agile, qui mettent exagérément l’accent sur la réduction du « time to market » au détriment de la qualité et de la documentation ne contribuent malheureusement pas à aller dans ce sens. Avec inévitablement des conséquences sur ce que j’appellerai &#8220;la dette fonctionnelle sur les données&#8221; et les efforts qui devront être fournis pour la corriger. Mieux vaut prévenir que guérir.</p>
<p>Dans le cadre des dispositifs B2B destinés à supporter les échanges entre partenaires, la présence d’un data dictionary est un facteur de succès déterminant. Comment en effet faire adhérer l’ensemble des partenaires à un format canonique sur le bus d’échange si celui-ci n’est pas clairement défini dans un data dictionary. Le <em><a href="https://www.ulb.ac.be/cours/iboydens/e-gouvernement.pdf" target="_blank">glossaire de données</a></em> (c’est le nom que nous lui avons donné) mis en place pour la Sécurité Sociale belge est là pour en témoigner. Vu le nombre d’intervenants impliqués, ce dispositif s’est avéré indispensable pendant la phase de développement et tout autant aujourd’hui dans les opérations de maintenance trimestrielle.</p>
<p>Bien entendu <strong>les efforts liés au data dictionary se doivent d’être « raisonnables », pour garantir le retour sur investissement d’un strict point de vue budgétaire</strong>. Comme pour toute initiative transversale, tout ce qui est fait doit être directement utile aux projets. Cela suppose une attention permanente à la maîtrise de sa complexité pour en garantir la facilité d’utilisation et de maintenance, sans quoi il sera vite abandonné par ceux que l’on veut servir.</p>
<p>J’espère vous avoir convaincu que le data dictionary, et au delà le glossaire d&#8217;enterprise, sont des initiatives transversales amplement justifiées. Elles ont un coût, certes, mais leur retour sur investissement est prouvé.</p>
<p><a href="/comment-construire-un-data-dictionary/" target="_blank">Dans un prochain blog</a> nous nous intéresserons à la manière de construire un data dictionary.</p>
<p>&nbsp;</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
