# Architecture dirigée par les données

L'architecture dirigée par les données (en anglais Data Driven Architecture, DDA) est un modèle d'architecture informatique qui insiste sur la structuration des données.

## Historique

La première mise en œuvre de grande ampleur d'une architecture dirigée par les données s'est déroulée entre 1995 et 1999, lors du passage informatique à l'an 2000 (Y2K en anglais). Il s'agissait en effet de corriger entre 300 et 600 milliards de lignes de programmes potentiellement affectées dans le monde.
Pour ce faire, le gouvernement des États-Unis, alerté en 1995, a eu besoin d'identifier les systèmes critiques de l'administration fédérale. Il fallait définir des profils d'application, permettant de caractériser les applications informatiques d'un point de vue fonctionnel et technique, afin de définir les criticités.
Le département de la défense a donc adapté le programme CALS à cet usage. C'est ce qui a permis de définir, à partir de 1995, un jeu de données standard (Dublin Core) permettant de piloter ces mises en conformité par l'intermédiaire du Web et de moteurs de recherche. Un cadre de description de ressources (RDF) a donc été élaboré, et un langage mis au point (XML) pour faciliter les échanges de documents.
Par exemple, le concept réseau centré repose sur des définitions en XML Schemas, qui sont de l'architecture dirigée par les données.

## Avantages et inconvénients
### Avantages

Interopérabilité informatique
L'architecture dirigée par les données permet à une entreprise de définir des architectures de données complexes interopérables et plus cohérentes sur le plan de la structure des données.
Elle repose assez largement sur l'emploi de langages de balisage comme HTML et XML, qui permettent d'interfacer des systèmes distribués en employant dans les documents attachés aux messages et dans les flux d'information (en) les méthodes sémantiques propres à ce type de langage.
L'interopérabilité est obtenue par l'emploi :
* de métadonnées dans les ressources et les systèmes (matériels, logiciels, réseaux), dont le rôle est de définir et de structurer rigoureusement les données avec des mots-clés (éléments meta) pour permettre les accès et les échanges,
* et de schémas XML qui permettent aux documents XML de parvenir progressivement à une certaine fiabilité en parcourant une échelle de validation lors de la circulation entre différents sites web.
Maîtrise de l'information stratégique
Dans les pays anglosaxons, la maîtrise de l'information stratégique est obtenue par la définition de collections de métadonnées, administrées par des organisations adaptées (registres de métadonnées).
L'application de la norme ISO 11179 permet non seulement de définir les concepts clés employés (qu'est-ce qu'un élément de donnée, un terme de représentation, une classe…), mais aussi, et surtout, de définir les principes d'organisation à employer.
Le Dublin Core est un exemple de collection de métadonnées employée par quelques gouvernements (États-Unis, Royaume-Uni et quelques autres).

### Inconvénients

Il peut exister certaines incertitudes dans l'emploi massif et sans précautions de ce type d'architecture en informatique distribuée entre entités différentes.
La définition d'une politique de système d'information doit tenir compte de ces aspects. On ne peut pas concevoir un extranet et des échanges en commerce électronique comme des intranets.
C'est la raison pour laquelle, en Europe continentale, les architectures dirigées par les données sont actuellement, pour l'essentiel, encore réservées aux intranets.
Aspect humain
L'hypersophistication technique peut faire négliger certains aspects. L'interfaçage ne dépend pas que d'aspects techniques (règles métier, interfaces homme/machine…).
Contexte
Le contexte socioéconomique, ou encore juridique, d'une zone géographique peut compter pour beaucoup dans l'applicabilité de telles méthodes. En effet, la sémantique transportée lors des échanges de données informatisés (commerce électronique) doit respecter des règles métier, qu'il est difficile d'automatiser complètement. En particulier, la sémantique transportée dans les processus d'affaires doit se conformer à des règles juridiques (droit des affaires, droit social, droit de l'environnement…) dont la logique peut être très différente selon la zone géographique à laquelle on s'intéresse.
Par exemple, le système juridique de droit civil a une philosophie assez différente de celle du système juridique de common law.

## Exemple d'outil logiciel employé

XMLRAD emploie la méthode DDA pour générer des applications en XML. Le besoin dominant (dans une proportion de 99 sur 100) est la fabrication de sites Intranet privilégiant la mise à disposition immédiate de toute donnée nécessaire à la prise de décision dans l'environnement fonctionnel de l'entreprise.