## Applying the Rules

Applying these simple rules ensures a valid Data Flow Model. So let us apply these rules to our Level 1 DFD.

**Rule 1:** Answer YES.

**Rule 2: Function 1:** YES - it does have all the information it needs. It only needs order details to produce its output - invoice.

**Function 2:** NO - it does not have all the information it needs to produce its output (receipt). So we must apply Rule 3 to Function 2.

**Rule 3: **Function 2 has payment details but it also needs order details so that it can match up payment with order. So where will it get information from? We can see that Function 1 receives order details from the customer, so it must receive order details from Function 1.

How do we show this in our DFD? Well, we can assume that when orders enter the system they are stored in the system for further use. We can assume that Function 1 stores order details. This is shown on the below:

We have used the data store symbol to show the stored orders. Note that Function 1 *creates* the order data store and Function 2 *reads* the data store. Note also how important it is to apply all the rules - if we only applied the main rule (ie all functions to input and output), the diagram would have been incomplete.

**Next: **Activity 6