How to Draw a Context Diagram (Level 0 DFD) in draw.io
A context diagram, also called a level 0 data flow diagram, shows the whole system as one bubble and the people and systems that trade data with it. Learn to draw one in the free draw.io web app, with every flow labelled with the data it carries, using an online shop.
Step by step
The big picture
- Context diagram. A context diagram, also called a level 0 data flow diagram (DFD), shows the whole system as one bubble, plus everyone who trades data with it. It's a quick way to agree on scope. Here we build one for an online shop.
- Blank diagram. Open draw.io in your browser and start a blank diagram.
One system
- One process. The whole system is one process. From the General shapes, drag a single Ellipse into the middle of the page and name it Online shop system.
External entities
- External entities. External entities are the people or systems outside your system. Draw them as plain rectangles from the General shapes. Put Customer on the left.
- Label with data. Hover over Customer and drag the blue arrow onto the system. Label the arrow with the data it carries, as a noun: Order.
- External entities. Warehouse is also outside the system, so add a second rectangle on the right.
- Label with data. Data flows out of the system too. Drag from the system to Warehouse and label the arrow Pick list.
- External entities. Add Supplier in a rectangle above the system.
- Label with data. Supplier sends its prices in, so connect Supplier down to the system and label the arrow Price list.
- External entities. Add Shop manager in a rectangle below the system.
- Label with data. The manager gets a report every week. Connect the system down to Shop manager and label the arrow Sales report.
Check the rules
- No data stores. Look at the middle: there are no data stores and no inner steps. At level 0, everything inside the system stays hidden until you draw the level 1 diagram.
- The finished diagram. Click an empty part of the page to see the finished context diagram: 1 process, 4 external entities and 4 labelled flows.
Recap
- The rules. The rules: one process for the whole system, external entities around it, every flow labelled with the data it carries, and no data stores at level 0.
Common mistakes
- Labelling flows with actions. A flow carries data, so name it with a noun like Order or Pick list, not a verb like Send order. Actions belong to the processes in the level 1 diagram.
- Adding data stores or inner steps. A database or a step like Check stock belongs in level 1. At level 0, the system stays one closed process.
- Drawing flows between two external entities. Data moving straight from Customer to Warehouse happens outside your system, so leave it out. Every arrow should start or end at the system.
- Leaving arrows unlabelled. An arrow with no label leaves readers guessing what data moves. In draw.io, double-click the arrow and type the data name.
When a business analyst uses this
In a scoping workshop at the start of a project, a business analyst draws the context diagram live so stakeholders can see which people and systems are outside the system and what data crosses the boundary. Each labelled flow then becomes an interface to list in the requirements log.
Questions people ask
How do you draw a context diagram?
Put your system in the middle as one process. Add each outside person or system as a rectangle around it, then join them with arrows labelled with the data they carry.
How do you make a data flow diagram?
Start with the context diagram (level 0). Then draw level 1, which splits the one process into its main steps and adds the data stores.
Can I make a context diagram in Word or Visio?
Yes. The rules stay the same in any tool: one process, rectangles for external entities and labelled arrows. Any tool with ovals, rectangles and arrows can draw it.