UPI Study › Courses › System Analysis and Design › Free lessons › Lesson 4.5 Free with a free account
Data Flow Diagrams: How Data Moves Through a System
System Analysis and Design · Chapter 4: Requirements Validation, Modeling, and UMLSection 4.5 · lesson 28 of 699 min · free with a free account
Free preview
Create a free account to keep watching
It takes a minute and costs nothing. Your free account unlocks all of Chapter 1 and 3 more lessons of System Analysis and Design.
Lesson complete
Earn the 3 college credits for System Analysis and Design
Enrolling adds a quiz after each lesson, the graded work and the official transcript. Recommended for credit by NCCRS.
Next lesson: Logical vs. Physical Data Flow Diagrams: What Sets Them Apart →← Getting Started with Use Case Diagrams, Documents, and TemplatesNext lesson: Logical vs. Physical Data Flow Diagrams: What Sets Them Apart →
In this lesson
4 symbols, 2 notations, leveled decomposition, balancing, and the classic errors.
- Identify the 4 DFD symbols in Gane-Sarson and Yourdon-DeMarco notation
- Explain decomposition from level 0 to levels 1 and 2, with leveled numbering
- Apply the balancing rule between a parent process and its child diagram
- Recognize and avoid the most common DFD errors
Transcript
Everything said in the video, section by section (1,206 words). Read along, or search it.
Requirements Validation, Modeling, and UML
Data Flow Diagrams
The context diagram showed the system as one process, with everything that crosses its boundary. Data flow diagrams take the next step. They open that process up. This section covers the four symbols, the two notations used to draw them, and how diagrams decompose level by level. Then the balancing rule that keeps those levels consistent, and the classic errors to look for.
The Building Blocks
4 Symbol Types
Every data flow diagram, however large, is built from only four symbol types. A process transforms the data it receives, into different data it produces. A data store holds data at rest, between the moments a process needs it. An external entity is a person, organization, or system outside the boundary being modeled. It is either a source, sending data in, or a sink, receiving data out. And a data flow is data in motion, connecting the other three. Notice that only processes change data. Stores hold it, entities send or receive it, and flows carry it.
Figure 4.5a
2 Notations, Same Meaning
Two notation styles are common, and they draw these same four ideas with different shapes. In Gane-Sarson notation, a process is a rounded rectangle, and a data store is an open-ended rectangle. In Yourdon-DeMarco notation, a process is a circle, often called a bubble, and a data store is two parallel lines. External entities are squares or rectangles, and data flows are labeled arrows, in both. The meaning of a symbol does not change between them. Only the drawing convention does. So a team should agree on one notation before diagrams start circulating. Gane-Sarson is what most CASE tools and North American textbooks default to today. Yourdon-DeMarco remains common in older documentation, so recognizing its bubbles on sight is a practical skill.
Decomposition
Opening the Black Box, One Level at a Time
Now to decomposition. The level zero diagram shows the entire system as a single process. Only its external entities, and the flows crossing the system boundary, are visible. That single process is deliberately a black box. Everything inside it is hidden, so the diagram stays readable. Decomposition is the act of opening that black box, one level at a time. A level one diagram explodes the single process into its major sub-processes. They are connected by the data flows and data stores that were hidden inside before. If a level one process is still too complex to describe in a few sentences, it is exploded again, into a level two diagram. This continues until every process is simple enough to explain completely on its own. Analysts call that point a functional primitive.
Figure 4.5b
Leveled Numbering
Here is decomposition in a picture. At level zero, there is one process, zero, the order system. It explodes into three processes at level one. Validate order, process payment, and ship order. Process payment is still complex, so it explodes again, at level two, into check card, and charge account. Now look at the numbers. They carry the decomposition history with them. Level one processes are numbered one, two, and three. When process two is exploded, its children become two point one, and two point two. If two point one needed another level, its children would be two point one point one, and two point one point two. Reading the number alone tells you exactly where a process sits in the tree, without tracing the diagrams.
Keeping Levels Trustworthy
The Balancing Rule
Balancing is the rule that keeps a set of leveled diagrams trustworthy. The data flows entering and leaving a child diagram must match, in total, the flows entering and leaving the same process on its parent. Let's check our example. Order details enter process two on the level one diagram. On the level two diagram, they enter process two point one. The approved charge leaves process two at level one. At level two, it leaves process two point two. Both boundary flows appear at both levels. The diagrams balance. And card verification data? It does not appear on level one at all. It flows only between two point one and two point two.
A Subtle Point
Internal Flows Do Not Need to Balance
Is that missing flow a problem? No. And the reason matters. Balancing only requires the flows that cross the boundary of the decomposed process to match. Card verification data is created, used, and consumed entirely inside process two. That internal detail is exactly what decomposition is meant to reveal. What balancing does forbid is two things. A flow on the child diagram that came from nowhere on the parent. Or a flow on the parent that silently vanished on the child. Either one breaks the promise that every level shows the same system, at a different depth.
Common Errors (1 of 2)
Processes That Do Not Add Up
A small set of mistakes accounts for most D F D errors, whether in a student diagram or a professional one. A black hole is a process with inputs, but no output at all. Data disappears into it, with nothing to show it was processed. Usually the process logic is incomplete. A miracle is the reverse. A process produces output, with no input feeding it. Data appears from nowhere, and every output must be traceable back to some input. A gray hole has inputs and outputs, but the inputs could not plausibly produce the output described. That usually points to a missing input flow. And unbalanced decomposition is a child diagram whose inputs or outputs do not match its parent process. It breaks the reader's trust that moving between levels still shows the same system.
Common Errors (2 of 2)
Flows That Skip the Process
The remaining errors all involve flows that skip a process. An entity-to-entity flow is drawn directly between two external entities. But external entities only interact through the system being modeled. A direct flow implies processing that has not been shown. A store-to-store flow runs directly between two data stores. Data at rest cannot move or transform itself. A process is always needed to read from one store and write to another. And an entity-store flow runs directly between an external entity and a data store. Incoming data must be handled by a process before it is stored, and stored data by a process before it leaves. See the pattern? In every one of these errors, a process is missing. Data cannot move, or change, without a process to do it.
Key Terms
The Vocabulary of This Section
Let's lock in the key terms. Decomposition means exploding a process into its sub-processes, on a lower-level diagram. A functional primitive is a process simple enough to explain completely on its own. Leveled numbering, one, then two point one, then two point one point one, records where a process sits in the tree. Balancing means a child diagram's boundary-crossing flows match its parent process exactly. And a black hole has no output, a miracle has no input, and a gray hole has inputs that could not produce its output.
Key Takeaways
What to Carry Forward
To pull this together. Every D F D is built from four symbols. Process, data store, external entity, and data flow. They are drawn differently in Gane-Sarson and Yourdon-DeMarco notation, but mean the same thing. Decomposition opens the single level zero process into level one, and into level two when a sub-process is still too complex. Leveled numbering records exactly where each process sits in the tree. Balancing requires boundary-crossing flows to match the parent. Purely internal flows need not appear there. And black holes, miracles, gray holes, unbalanced decomposition, and improper entity and store flows are the errors to check for.
About System Analysis and Design at UPI Study
System Analysis and Design (Computer Science 390) is a self-paced online course of 69 video lessons in 9 chapters, from the analyst's role and requirements to UML modeling, interface and database design, testing, maintenance and project management. It carries a NCCRS credit recommendation for 3 semester credits.
Every lesson transcript is free on pages like this one, and the videos are free with a free UPI Study account. Enrolling adds a practice quiz after each lesson, the graded work and final exam that earn the credit, lifetime access, and an official transcript on completion. UPI Study has helped over 130,000 students with college credits. ACE and NCCRS have over 2,100 cooperating colleges that will consider accepting credits; the final decision is with the universities.
Enroll now → Course details Download the syllabus All Computer Science courses Every course with PRO →
Why take it here
Why students take System Analysis and Design with UPI Study
Where the credit goes
Universities that work with NCCRS
System Analysis and Design carries a NCCRS credit recommendation. These universities work with NCCRS; some are UPI Study's signed partners. ACE and NCCRS have over 2,100 cooperating colleges that will consider accepting credits; the final decision is with the universities.
Thomas Edison State UniversitySigned partner
University of the PeopleSigned partner
Charter Oak State CollegeSigned partner
Strayer UniversitySigned partner
Columbia Southern UniversitySigned partner
Indiana TechSigned partner
Penn StateWorks with NCCRS
Southern New Hampshire UniversityWorks with NCCRS
SUNYWorks with NCCRS
+many more cooperating universitiesFind my college →Find my college → Not listed? Ask Athena in the corner of this page, or book a 15-minute call.
FAQ
Questions students ask us
About Data Flow Diagrams: How Data Moves Through a System
What are the four symbols used in a data flow diagram?
How does decomposition and leveled numbering work in data flow diagrams?
What is the balancing rule in data flow diagrams?
What are black holes, miracles, and gray holes in a DFD?
About the System Analysis and Design course
How many college credits is System Analysis and Design?
How much does System Analysis and Design cost and what is included?
Which universities accept UPI Study credits?
How long does System Analysis and Design take?
How are the exams done?
How do my credits reach my college?
Ready for the full course? Earn 3 credits in System Analysis and Design.
69 video lessons, a quiz after each one, and the graded work that earns the credit. Recommended for credit by NCCRS.
3 credits · NCCRSEnroll →