The best way to improve at anything — whether that’s running a business or making a cup of coffee — is to figure out piece by piece what’s working while letting go of what isn’t.
When it comes to a cup of coffee, it’s a relatively simple process. But when you’re running a company or team, things get more complex. With a million projects, tasks, and processes running simultaneously, identifying which pieces are working and phasing out those that aren’t is decidedly more difficult. This is where a data flow diagram comes in.
What is a data flow diagram?
A data flow diagram (or DPD for short) shows how processes flow through a system. It also gives you information about the inputs and outputs (where things come from, which route they go through, and where they end up) and the process itself. This includes data stores and the various subprocesses the data moves through.
Unlike a flowchart, there are no decision points. And unlike a network diagram, there are no loops. You might also notice the similarities between a data flow diagram and UML activity or use case diagrams. DFDs chart the progress of information through a system, while an activity diagram visualizes the entire system’s behavior, not just the data. Use case diagrams specifically focus on how user behavior affects the processes in a system, which typically involves data and manual activity.
Simply put, DFDs are a visual way to show a process or system, which, in turn, can help you work out where there are issues and inefficiencies. Data flows can feel intimidating: where do you start? And which approach is right for you? Fear not: if you’re a data flow newbie, then you’ve come to the right place.
Types of DFDs
There are two types of data flow diagrams to choose from depending on what you want to examine in your flow.
Logical data flow diagrams show what happens during an information flow. They tell you what information is being generated, where it’s going, and where it ends up. The processes are business activities, and they should be easy for a non-technical audience to understand. The benefits of using a logical DFD include:
- Longevity and relevance: the processes that define your business don’t change often, so neither will your diagram. While you may need updates from time to time, they’ll probably be minor.
- Clear implementation plans: the diagram logically provides a reason for structuring a system in a specific way.
- Straightforward: because they’re less complex, logical DFDs are ideal for communicating your plans with shareholders and non-technical team members.
- Multifunctional: the logical model provides the blueprint for a physical diagram, shortening the time it takes to visualize the data flow.
Physical data flow diagrams show how information moves through a system. This means detailing specific software, programs, and people involved in the process. For example, an e-commerce diagram could show you how a customer places an order online and how the data travels through your business’s software from receipt to fulfillment. Physical DFDs are generally technical, but not always. The benefits of using a physical diagram include:
- Detail: every step of a process is included to help fine-tune the system, boost efficiency, and address potential hurdles.
- Clarity: instead of broad descriptors, physical DFDs use the exact names of all entities, file names, and data storage methods involved. This method offers complete transparency about where the data should be at each stage, even temporary storage.
- Differentiation: the diagram distinguishes between activities performed manually and processes that depend on software.
You can create both diagrams to describe the same information flow, but each would tell a different side of the story and provide distinct activities to be optimized. Use logical and physical DFDs separately or in conjunction for a more powerful visualization.
Data flow diagram symbols
There are two primary methodologies of notation used in DFDs: Gane & Sarson vs. Yourdon & Coad. They differ slightly, but both use shapes and symbols to represent the four main elements of a DFD: external entity, process, data store, and data flow.
- External entity: an external system that’s either a data source or destination. You’ll usually find them around the edges of a DFD.
- Process: something that affects the data and its flow by changing it, sorting it, or influencing its flow of direction. Processes sit between the input and the output, and a single diagram can include several of them.
- Data store: data stores hold information until later use. Inputs can flow through a process and into a data store, and then back out the data store and through a process.
- Data flow: data flow marks your information’s path through the various processes and data stores.
A word on DFD levels
DFDs are categorized in terms of levels, where level 0 is the simplest, and level 2+ is the most complex.
Level 0 DFDs
Level 0 DFDs also go by the name of context diagrams. This is the most pared-back form, and it shows only a single process and its external influences. At this stage, it’s common to draft the DFD by hand while the processes are unrefined.
Level 1 DFDs
A level 1 DFD is still considered very top-level, but it offers more detail than a level 0 DFD. It consists of a single process, which is broken down into sub-processes. These, in turn, are linked by different processes and data stores.
Level 2 DFD… and beyond
DFDs can potentially go to level 3 and further, but level 2 is usually enough. As with level 1, level 2 is simply a step up in complexity. The end result is more granular subprocesses, more data stores, and more flows.
How to create a data flow diagram
Now that you know the ‘what’ and ‘why,’ it’s time to address the ‘how.’ Creating a data flow diagram consists of four key stages.
- Sort your inputs from your outputs. Each process should have an input and an output. Remember this, and you won’t end up with any loose ends.
- Start at Level 0 by creating a simple system context diagram with one single process.
- Now it’s time to add meat to the bones. You want to take your diagram from level 0 to level 1 by adding more processes, data stores, and data flows. But don’t run before you can walk. Add items gradually and carefully, bearing in mind each data flow’s source and destination, as well as the stages it needs to go through to get there.
- You can probably guess what’s next! Repeat step 3 until your diagram has reached level 2+. Remember to take a step back every now and again to review your progress. Does it all make sense? Is every flow, store, input, and output included and accounted for? Run it past a colleague for extra reassurance: if an outsider can understand it, then you’re onto a winner.
How a data flow diagram works
Once you create your diagram, it’s time to sit down and think about your flow’s strengths and weaknesses. Ask yourself:
- Are there any bottlenecks?
- Is there a simpler way to achieve the same goals?
- Are there requirements that should be identified earlier in the process?
Analyzing each process and subprocess within the context of the entire flow will help you discover areas you can improve. Once you’ve identified those areas, design a fresh data flow diagram based on your findings and implement your new flow.
Applications of data flow diagrams
DFDs are valuable in processes that involve many levels of decision-making in between stages of ideation and design. They also benefit industries that rely on frequent data sharing and processing in everyday activities. The following applications are just a few examples of how and when to use data flow diagrams.
DFDs originated in this industry, and it’s where they continue to be most widely used. Engineers use data flow models when designing software architecture before coding the functionality. However, they also use it as an ongoing system analysis tool to measure and improve the performance of existing software. Data flow testing allows engineers to assess different variables to detect and fix potential errors in the system.
Business process management
Whether you want to design more agile operations or weed out bottlenecks, DFDs are useful for streamlining business processes that are wasteful or unnecessarily complicated. In this instance, diagrams become tools for analyzing workflows, improving logistics, reallocating resources, and implementing organizational change.
Organizations that depend on complex databases, such as healthcare facilities and government agencies, can use DFDs to design secure data flows. Healthcare and government institutions are known for transferring data at many different levels (i.e., local provider, county, state, federal), and they’re subject to strict requirements for how and where that data is stored.
Data flow diagrams help these organizations plot out complex data sequences and keep track of which agencies and providers have access to information at each stage.
Remember: data flow diagrams should always save you time. You don’t want to spend half the day grappling with weird MS Word clip art arrows and boxes when you could just select a crisp template and edit it in minutes. So, before you begin, make sure you have some kind of diagramming software or DFD template at the ready. It’ll save you time and give your finished data flow diagram a more professional, polished look.
And if you use a cloud-based tool, such as Cacoo, you can share and update your handiwork with your entire team, stakeholders, and clients in real-time, improving transparency and communication along the way.
This post was originally published on February 7, 2019, and updated most recently on January 4, 2022.