Drawing Leveled Data Flow Diagrams (DFDs)

November 19, 2012 Views: 94,301 PDF Link

Data flow diagram (DFD) is one of the most commonly used graphical tools to represent the high level functionality of a system. The process shape, which is the most important components in a DFD, represents the part of the system that transform certain (data) input into outcome. It is often referred to a group of relevant system functions and you can always break process down to represent the smaller functional units in another DFD, known as a new level.

In this tutorial, you will be creating a context level DFD and expanding the main process shape into the level 1 DFD.

Creating Context Level DFD

Context level DFD, also known as level 0 DFD, sees the whole system as a single process and emphasis the interaction between the system and external entities. Let's draw a context DFD.

  1. To create a DFD, select Diagram > New from the toolbar.
  2. In the New Diagram window, select Data Flow Diagram and click Next.
  3. Enter Context Diagram as diagram name and click OK to confirm.
  4. Name the diagram Context Diagram.
  5. We need to create the main process. Drag Process from diagram toolbar to diagram. Name it Online Bookstore. We will use online bookstore as an example to show you how to create multiple levels DFD.
    create process
  6. As you can imagine, customers will be ordering books through the system. Therefore, add an External Entity to diagram and name it Customer. Like creating process, you can create an external entity by dragging External Entity from diagram toolbar to diagram.
    create external entity
  7. A data flow is used to represent the movement of data between different parts of the system. In this case, "order" is a data created by customer and submitted into the system. Therefore, create a data flow from Customer to Online Bookstore. To do this, move the mouse pointer over Customer. Drag out the Resource Catalog button.
    conn data flow process
  8. Release the mouse button on Online Bookstore and select Data Flow from Resource Catalog. This creates a data flow connector.
    select data flow connector in resource catalog
  9. Name it order.
    data flow created
  10. The book store will finally deliver the books to the customer. Make use of the Resource Catalog to create a data flow from Online Bookstore to Customer. Name the flow ordered books.
    data flow created
    That's all for the context diagram. As we see the entire system as a single process, there is just one process shape created in this DFD level. In the next section you will decompose the Online Bookstore process and draw its detail.

Creating Level 1 DFD

In this section, you are going to draw the level 1 DFD to show the main functions of online bookstore.

  1. Right click on Online Bookstore and select Decompose from the popup menu.
    decompose process
  2. The data stores and/or external entities connected to the selected process would be referred to in the level 1 DFD. So when you are prompted to add them to the new diagram, click Yes to confirm. Note that the new DFD should look very similar to the context diagram initially. Every element should remain unchanged, except that the main process (from which this new DFD decomposes) is now gone and replaced by a blank space (to be elaborated).
  3. Right click on the background of diagram and select Rename... from the popup menu. Name the diagram Level 1 DFD.
  4. There is a process that receives customer order and store it into a database. Let's create a process Receive Order and a data store Orders. Add data flows in between.
    receive order created
  5. When an order is invalid, there should be another process that involves contacting the customer and clarifying his/her need. Create a process Handle Invalid Order. Add suitable data flows between the shapes. Here you may use a bi-directional data flow to represent the a dialog flow.
    handle invalid order created
  6. There is another process that handles shipment. Create the Ship Order process. Again, add appropriate data flows between the shapes.
    ship order created
    That's all for this tutorial. Depending on the area of interest, you may create further levels to show the system in more detail. As you can imagine, the Ship Order process can be elaborated into smaller functional units (processes) like packaging, prepare invoice, arrange deliver, etc.


  1. OnlineBookstore.vpp

Something more...

  1. Tutorial - Drawing Data Flow Diagrams
    Interested to know more DFD, such as the definition of notations? Check this tutorial.
  2. Reporting in seconds
    Try our reporting tools. It helps you produce professional-look DFD report in seconds.
  3. Tutorial - Introduction to BPMN Part I
    Interested in modeling business processes? Checkout our BPMN support here.

You may be interested in

  1. Data Flow Diagram (DFD) Tutorial
  2. Writing Effective Use Case
  3. Drawing Entity Relationship Diagram (ERD)
  4. Data Flow Diagram with Examples - Food Ordering System
  5. Perform UML Modeling in NetBeans
Tags of this article:

Comments (0)

Write comment



Enter the calculation result

security code