What is a Data Flow Diagram?

What is a Data Flow Diagram?


PROGRAMS FOR SOFTWARE ENGINEERINGPROGRAMS FOR BUSINESSES

A data flow diagram shows how information flows through a system or during a process. Non-technical audiences can understand how data flows throughout a software system by using data flow diagrams (DFDs).

You can create a data flow diagram online with Gliffy by dragging and dropping shapes. You can start with a free trial or learn more about DFDs by reading one of the following sections:

using DFDs

It was developed decades ago as a way to keep up with changing technology, and it captures the increasingly complex flow of data in a computer system. As a result of their association with multiple popular concepts in information system design, data flow diagrams became popular in academia and business analysis. 

Today, DFD is used in several ways:

  • software engineering: data flow diagrams provide structure before coding begins
  • Agile development: developers can better visualize requirements as they build on previous work
  • These diagrams provide a framework for analyzing existing systems and removing inefficiencies

Example of a Data Flow Diagram

This Data Flow Diagram shows the steps in the process of enrolling students at a university, along with all the inputs and outputs of data needed for each step. 


Although the processes in the rounded-corner rectangles occur in chronological order, these flows of information do not necessarily occur in chronological order. (Pro tip: you can use this diagram as a starting point for your own data flow diagram by launching it as a template in Gliffy Online.)

What’s the Difference Between Data Flow Diagrams and UML?

The flow of data in a data flow diagram shows the flow of information through the system, but it may not be as detailed or specific as a diagram made using the Unified Modeling Language. Most DFDs cannot capture interactive or real-time systems as well as some types of UML diagrams, but they are easier to learn and make. The following blog posts will help you better understand UML:

Logical vs physical data models: types of data flow diagrams

The logical DFD and the physical DFD are two distinct types of data flow diagrams. Logic DFDs look at how information is moving through the system from the point of view of the business or its activities. Meanwhile, physical DFDs look at how information moves throughout the system or how it is implemented. 

Example of Logical vs. Physical DFDs

An excellent example of this would be that a logical DFD for a grocery store checkout process would include things like an item number, prices, and receipts. In contrast, a physical DFD would record details such as bar codes, transaction files, and payment information such as a credit card number. The logical DFD is almost like how a cashier or customer would describe the process, while the physical DFD is how a computer would describe it.

Using Logical vs. Physical DFDs

It can be easier to describe the logical process when describing logical vs. physical DFDs. Using a logical DFD, you can describe the process as its users experience it, which helps you identify inefficiencies or challenging steps to eliminate. 

By understanding the logical process, you can then consider how the information physically moves along the same path. The physical DFD contains more technical details to help you design or optimize your system.

Data Flow Diagram Levels

The DFD can display varying levels of information, so it's vital to think of them - and sometimes even build them - using layers. Most commonly, these layers of information are referred to as level 0, 1, and 2 DFDs.

Level 0 DFDs: What are Context Diagrams?

A context diagram is a data flow diagram at level 0. At a glance, this is the simplest view of your system. It is useful when presenting to executives or when working with non-technical analysts. 

"You can quickly create a context level diagram online with this Gliffy data flow diagram template>>"

Level 1 DFDs

As you move up to level 1, your diagram will include more detailed information about the process. Instead of considering the broader overview, you'll break the diagram into smaller sections that describe the steps of the process. 

Instead of documenting how information flows in and out of the registration process at a university, you might consider the steps in the process and what information is specific to each step. Teachers would use this information to create course offerings, facilities would use it to create course schedules, and students would use it to register for classes.

Level 2 DFDs and Adding Higher Levels

DFDs at higher levels provide a deeper understanding of each step and flow of information. For example, if students are registering for classes, you might consider multiple sub-processes, like requesting access to a fully-enrolled course, joining a waitlist, or moving between sections of the same class.

Using Layers for DFD Levels

You can use an online diagramming tool like Gliffy to show each level of the DFD together by adding layers to your diagram. The context diagram can be easily referenced while also trying to understand deeper levels of information.

Make a Data Flow Diagram Online with Gliffy

In just a few clicks, you can create an online data flow diagram using Gliffy's flowchart maker. Learn more about Gliffy's diagramming tools for Confluence and Jira by taking a free trial of Gliffy Online.