today we're talking about data flow diagrams we'll examine what they're used for what the various symbols and notations mean and take a look at how to get started building them a data flow diagram illustrates how data is processed by a system in terms of inputs and outputs as its name indicates its focus is on the flow of information where data comes from where it goes and how it gets stored data flow diagrams became popular in the 1970s in software development they were first described in a classic text about structured design written by Larry Constantine and Edie Jordan what became known as Jordan encodes object-oriented analysis and design was a way of visualizing software systems before UML diagrams came along there are essentially two different types of notations for data flow diagrams Jordan encode or gain in sarsen defining different visual representations for processes data stores data flow and external entities Jordan encode type data flow diagrams are usually used for system analysis and design while gain and SARS and type diagrams are more common for visualizing information systems visually the biggest difference between the two is how processes look in the yordan encode way processes are depicted as circles while in the gain and SARS and diagram the processes are squares with rounded corners let's explore the common data flow symbols and notations and what they signify this is a process notation a process transforms incoming data flow into outgoing data flow here is a data store notation data stores are repositories of data in the system they are sometimes also referred to as just files this is a data flow notation data flows are lines through which packets of information flow label the arrows with the name of the data that moves through it seen here is an external entity notation external entities are objects outside the system with which the system communicates external entities are sources and destinations of the system's inputs and outputs data flow diagrams also have levels or layers to help you organize and categorize the data a context diagram is a top level also known as level 0 data flow diagram it only contains one process node process 0 that generalizes the function of the entire system in relationship to external entities the next layer level 1 should illustrate a more detailed analysis of the data in your context diagram from there you'll go into still more detail in level 2 and so on for the next level break down your processes until you reach pseudocode which is an informal sort of coding language it has the structure of programming language but is meant for human reading not machine reading dataflow diagrams are pretty easy to construct using an automated diagramming tool like smart draw this will provide all the necessary data flow diagrams symbols and easy to use templates that help you get started just drag and drop shapes where they need to go and type to enter data you can nest the different levels of your data flow by using hyperlinks view our how-to video to see a more detailed example of a data flow diagram being built from start to finish we hope you've enjoyed learning about data flow diagrams thanks for watching [Music]