Data Flow Diagram A Data Flow Diagram (DFD) is a process-oriented graphical representation of an application system. In the words of Hoffer, George and Valacich (1999), a DFD "is a picture of the movement of data between external entities and the processes and data stores within a system." [1] The components of a typical dataflow diagram are: the process, the flow, the data store, and the terminator. The Process The process shows a part of the system that transforms inputs into outputs. The process is represented graphically as a circle or bubble, as shown in Figure 1. 1. COMPUTE SALES TAX Figure 1. A process is represented as a circle. The processes should be numbered in order to conveniently reference them in the DFD. A process is named or described with a single word, phrase, or simple sentence. The process name should describe what the process does. A good name will generally consist of a verb-object phrase such as COMPUTE TAX RATE. The Flow The flow is represented graphically by an arrow into or out of a process (Figure 2). The flow is used to describe the movement of chunks, or packets of information from one part of the system to another part. The flows represent data in motion. CUSTOMER INQUIRY Figure 2. An example of a flow The flows show direction: an arrowhead at either end of the flow or possibly at both ends indicates whether data is moving into or out of a process or both. ORDER PROCESS ORDER Figure 3. An input flow GENERATE INVOICE REPORT INVOICE Figure 4. An output flow The Data Store The data store is used to model a collection of data packets at rest. The notation for a data store is two parallel lines, as shown in Figure 5. The name chosen to identify the data store is the plural of the name of the packets that are carried by flows into and out of the data store. ORDERS Figure 5. A data store Data stores are typically implemented as files or databases in a computerized system; but a data store can also be data stored on punched cards, microfilm, or a variety of other electronic forms. A data store might also consist of 3-by-5 inch cards in a card box, or names and addresses in an address book, or several files folders in a file cabinet, or a variety of other non-computerized forms. Data stores are connect by flows to processes. Data stores have two types of flows: a flow from a store and a flow to a store (See Figure 6.). ORDER DETAILS ORDER ORDER INQUIRY 1. ENTER ORDERS ORDERS 2. RESPOND TO INQUIRY RESPONSE ACKNOWLEDGMENT Figure 6. A DFD showing processes, flows, and a data store A flow from a store is normally interpreted as a read or an access to information in a data store. The data store is not changed when a packet of information moves from the store along the flow. A flow to a store is normally described as a write, an update, or possibly a delete. The data store is changed as a result of the flow entering the store. The Terminator The terminator is graphically represented as a rectangle, as shown in Figure 7. Terminators represent external entities with which the system communicates. A terminator is a person or a group of persons that are outside the control of the system being modeled. A terminator can also be another computer system with which your system will communicate. ACCOUNTING DEPARTMENT Figure 7. A terminator Figure 8 shows a typical DFD for a small system. The DFD contains all the components mentioned above: Processes, Flows, Stores, and Terminators. ORDERS CUSTOMERS INVOICES Figure 8. A typical DFD References 1. http://www.prenhall.com/divisions/bp/app/mcfadden/oracle/tutorial/lesson2/page1.html http://www.yourdon.com/books/msa2e/CH09/CH09.html