Diagram Illustration

Sommaire

Ce guide comprend tout ce que vous devez savoir sur les diagrammes de flux de données, y compris leurs définitions, leur histoire, ainsi que les symboles et les notations utilisés. Vous découvrirez les différents niveaux de ces diagrammes, la différence entre des diagrammes de flux de données logiques et physiques, et des conseils facilitant la création de tels diagrammes.

Qu'est-ce qu'un diagramme de flux de données ?

Un diagramme de flux de données schématise le flux d'informations de n'importe quel processus ou système. Il utilise des symboles définis comme des rectangles, des cercles et des flèches, ainsi que des étiquettes aux libellés courts, pour représenter les entrées de données, les sorties, les points de stockage et les trajets entre chaque destination.Les organigrammes de données peuvent aller de vues d'ensemble de processus simples, voire dessinées à la main, à des diagrammes complexes sur plusieurs niveaux qui approfondissent progressivement le traitement des données. On peut les utiliser pour analyser un système existant ou en modéliser un nouveau. Comme tous les diagrammes et graphiques de qualité, un diagramme de flux de données peut souvent « dire » visuellement des choses qui seraient difficiles à expliquer avec des mots. Ils sont adaptés aussi bien à des publics techniques et non techniques, du développeur au directeur général. C'est pour cette raison que les diagrammes de flux de données restent aussi prisés après toutes ces années. Même s'ils fonctionnent bien pour les logiciels et les systèmes de flux de données, ils sont moins applicables de nos jours à la visualisation de systèmes ou logiciels interactifs, en temps réel ou axés sur les bases de données.

diagramme de flux de données

Historique des diagrammes de flux de données

Les diagrammes de flux de données se sont répandus à la fin des années 1970 grâce au livre Structured Design, de Ed Yourdon et Larry Constantine, des pionniers de l'informatique. Les deux hommes se sont basés sur les modèles informatiques de graphiques de flux de données de David Maritn et Gerald Estrin. Le concept de « design structuré » s'est répandu dans le domaine de l'ingénierie logicielle, et la méthodologie des diagrammes de flux de données s'est popularisée avec lui. Ces techniques sont devenues plus à la mode dans les milieux d'affaires, car elles étaient appliquées à l'analyse commerciale, que dans les cercles universitaires.

Deux concepts associés ont également contribué à leur diffusion :

  • La méthode d'analyse et de conception d'applications orientées objet (MACAO) proposée par Yourdon et Peter Coad pour analyser et concevoir une application ou un système.
  • La méthode d'analyse et de conception SSADM (Structured Systems Analysis and Design Method), une méthode en cascade pour analyser et concevoir des systèmes d'information. Cette approche rigoureusement documentaire contraste avec les approches contemporaines plus agiles telles que la méthode Scrum et la méthode dynamique de développement de systèmes (DSDM).

Trois autres experts ont contribué à cet essor de la méthodologie des diagrammes de flux de données : Tom DeMarco, Chris Gane et Trish Sarson. Ils se sont associés de façons diverses et ont fini par devenir les principaux acteurs de la définition des symboles et notations utilisés pour la création d'un diagramme de flux de données.

Symboles et notations utilisés dans les diagrammes de flux de données

Deux systèmes de symboles courants ont été nommés d'après leurs créateurs :

  • Yourdon et Coad
  • Yourdon et DeMarco
  • Gane et Sarson

L'une des principales différences entre ces systèmes réside dans le fait que Yourdon-Coad et Yourdon-DeMarco utilisent des cercles pour les processus, alors que Gane et Sarson utilisent des rectangles aux angles arrondis. D'autres variantes sont également utilisées. L'essentiel est de rester clair et cohérent dans les formes et notations que vous utilisez pour communiquer et collaborer avec les autres.

Quelles que soient les règles ou directives utilisées, les symboles représentent les quatre composants des diagrammes de flux de données.

  1. Entité externe : un système externe qui envoie ou reçoit des données, et communique avec le système représenté. Les entités sont les sources et les destinations des informations qui entrent dans le système ou en sortent. Il peut s'agir d'un organisme ou une personne extérieur(e), d'un système informatique ou d'un système d'entreprise. On les connaît aussi sous les noms de terminateurs, sources et puits, ou acteurs. On les trace en général sur les bords du diagramme.
  2. Processus : tout processus qui change les données et produit un résultat. Il peut effectuer des calculs, trier des données selon une logique définie ou diriger le flux de données en fonction de règles métier. Une description courte est utilisée pour qualifier le processus, par exemple « Procéder au paiement ».
  3. Magasin de données : fichiers ou référentiels qui contiennent des informations destinées à une utilisation ultérieure, comme une table de base de données ou un formulaire d'adhésion. Chaque magasin de données reçoit une étiquette simple, comme « Commandes ».
  4. Flux de données : trajet emprunté par les données entre les entités externes, les processus et les magasins de données. Il décrit l'interface entre les autres composants et est représenté par des flèches, généralement marquées d'un nom de données court, comme « Détails de facturation ».

Notation

Yourdon et Coad

Gane et Sarson

Entité extérieure

Entité externe Yourdon et Coad

Entité externe Gane et Sarson

Processus

Processus Yourdon et Coad

Processus Gane et Sarson

Boutique de données

Magasin de données Yourdon et Coad

Magasin de données Gane et Sarson

Flux de données

Flux de données Yourdon et Coad

Flux de données Gane et Sarson

Vous voulez plus de détails ? Vous trouverez ici la liste complète des symboles et notations de ces diagrammes, ainsi que des informations sur leur utilisation.

Règles et usages des diagrammes de flux de données

  • Chaque processus doit avoir au moins une entrée et une sortie.
  • Chaque magasin de données doit avoir au moins un flux de données entrant et un flux de données sortant.
  • Les données stockées dans un système doivent passer par un processus.
  • Tous les processus d'un diagramme de flux de données vont vers un autre processus ou un magasin de données.
  • Les données stockées dans un système doivent passer par un processus.

Niveaux et calques des diagrammes de flux de données : des diagrammes de contexte au pseudo-code

Un diagramme de flux de données peut progressivement révéler plus de détails grâce à l'utilisation de niveaux et calques, en se concentrant sur un élément en particulier. Les niveaux des diagrammes sont numérotés 0, 1 ou 2. Ils peuvent parfois même aller jusqu'au niveau 3 ou plus. Le niveau de détail nécessaire dépend du périmètre de ce que vous essayez de réaliser.

  • Le diagramme de flux de données de niveau 0 est aussi appelé diagramme de contexte. C'est une vue d'ensemble de base de l'intégralité du système ou du processus en cours d'analyse ou de modélisation. Il permet de voir d'un seul coup d'œil le système en tant que processus général, ainsi que sa relation avec les entités externes. Il doit être facilement compréhensible par un large public, des acteurs clés aux analystes métier en passant par les analystes de données et les développeurs.

diagramme de contexte

  • Le diagramme de flux de données de niveau 1 décompose de façon plus détaillée les éléments du diagramme de contexte. Vous allez mettre en avant les fonctions principales exécutées par le système, en décomposant le processus général du diagramme de contexte en sous-processus.

Diagramme de niveau 1

  • Le diagramme de flux de données de niveau 2 franchit une étape supplémentaire dans le détail des différentes parties du niveau 1. Vous devrez peut-être ajouter du texte afin d'atteindre le niveau nécessaire de détail sur le fonctionnement du système.

Diagramme de niveau 2

  • Une progression vers les niveaux 3, 4 et au-delà est possible, mais il est rare de dépasser le niveau 3. Le risque est en fait de créer une complexité qui rend difficile une communication, une comparaison ou une modélisation efficace.

Les calques permettent d'insérer les niveaux successifs directement dans le diagramme, ce qui offre une meilleure lisibilité tout en préservant l'accessibilité des niveaux d'information plus détaillés.

En créant un diagramme de flux de données suffisamment détaillé, les développeurs et les concepteurs peuvent l'utiliser pour écrire du pseudo-code, qui est une combinaison de français et de langage de programmation. Le pseudo-code facilite le développement du code réel.

Exemples d'utilisation de diagrammes de flux de données

Les diagrammes de flux de données sont utiles pour l'analyse ou la modélisation de différents types de systèmes dans un grand nombre de domaines.

Génie logiciel : c'est le principal point de départ des diagrammes de flux de données dans les années 70. Les diagrammes peuvent apporter une approche ciblée du développement technique, dans laquelle une recherche plus poussée est faite en amont du codage.

Diagramme de flux de données en analyse d'affaires : les analystes financiers utilisent les diagrammes de flux de données pour analyser les systèmes existants et identifier les inefficacités. La schématisation du processus peut révéler les étapes qui pourraient autrement être manquées ou mal comprises.

Réingénierie des processus métier : les diagrammes de flux de données peuvent être utilisés pour modéliser des flux de données mieux conçus et plus performants à travers des processus métier. La réingénierie des processus métier a été mise au point dans les années 1990 pour aider les entreprises à diminuer leurs coûts opérationnels, à améliorer le service client et à être plus compétitives.

Développement agile : les diagrammes de flux de données peuvent être utilisés pour visualiser et comprendre les exigences commerciales et techniques, et planifier les étapes suivantes. Ils peuvent être un outil simple, mais puissant de communication et de collaboration permettant un développement rapide.

Structures de systèmes : tout système ou processus peut être analysé en détail de façon progressive pour permettre de l'améliorer sur une base à la fois technique et non technique.

Diagrammes de flux de données et langage de modélisation unifié (UML)

Un diagramme de flux de données illustre le flux des données à travers un système. UML, quant à lui, est un langage de modélisation utilisé dans la conception logicielle orientée objet pour disposer d'une vue plus détaillée. Un diagramme de flux de données peut être un bon point de départ, mais lorsqu'il s'agit de passer au développement d'un système, les développeurs ont recours à des diagrammes UML tels que des diagrammes de classe ou des diagrammes de structure pour obtenir la spécificité requise.

Diagrammes de flux de données logiques et physiques

Il s'agit des deux catégories de diagrammes de flux de données. Un diagramme logique schématise le flux de données indispensable au fonctionnement d'une société. Il se concentre sur la conduite des affaires et les informations nécessaires, et non sur la façon dont fonctionne le système ou dont il pourrait fonctionner. En revanche, un diagramme physique montre comment le système fonctionne réellement, ou comment il fonctionnera. Par exemple, dans un diagramme de flux de données logique, les processus seraient les activités commerciales, alors que dans un diagramme de flux de données physique, les processus seraient des programmes et procédures manuelles.

Vous voulez en savoir plus ? Lisez notre article détaillé comparant les diagrammes de flux de données logiques et physiques.

Comment créer un diagramme de flux de données

Vous pouvez créer votre propre diagramme de flux de données en ligne avec Lucidchart. Utilisez nos exemples de diagrammes, ainsi que leurs notations spécifiques pour représenter visuellement le flux de données dans votre système. Notre éditeur de diagrammes de flux de données est simple, mais puissant. Commencez avec un modèle, puis utilisez nos formes pour personnaliser vos processus, magasins de données, flux de données et entités externes.