You are on page 1of 7

Suminda 0777388638

What is a data flow diagram (DFD)?

Data Flow Diagrams (DFD) helps us in identifying existing business processes. It is a technique we benefit from particularly before we go through business process re-engineering. At its simplest, a data flow diagram looks at how data flows through a system. It concerns things like where the data will come from and go to as well as where it will be stored. But you won't find information about the processing timing (e.g. whether the processes happen in sequence or in parallel). We usually begin with drawing a context diagram, a simple representation of the whole system. To elaborate further from that, we drill down to a level 1 diagram with additional information about the major functions of the system. This could continue to evolve to become a level 2 diagram when further analysis is required. Progression to level 3, 4 and so on is possible but anything beyond level 3 is not very common. Please bear in mind that the level of detail asked for depends on your process change plan.

The following clarifies what each symbol in Process Modeling represents. Process An activity or a function that is performed for some specific reason; can be manual or computerized; ultimately each process should perform only one activity Data Flow single piece of data or logical collection of information like a bill Data Store collection of data that is permanently stored External Entity A person, organization, or system that is external to the system but interacts with it
Diagram Notations Now we'd like to briefly introduce to you a few diagram notations which you'll see in the tutorial below.
External Entity

An external entity can represent a human, system or subsystem. It is where certain data comes from or goes to. It is external to the system we study, in terms of the business process. For this reason,

Suminda 0777388638

people use to draw external entities on the edge of a diagram.


A process is a business activity or function where the manipulation and transformation of data takes place. A process can be decomposed to finer level of details, for representing how data is being processed within the process.

Data Store

A data store represents the storage of persistent data required and/or produced by the process. Here are some examples of data stores: membership forms, database table, etc.

Data Flow

A data flow represents the flow of information, with its direction represented by an arrow head that shows at the end(s) of flow connector.

Level 0 Diagram Shows all the processes that comprise the overall system Shows how information moves from and to each process Adds data stores

Suminda 0777388638

Level 1 Diagrams Shows all the processes that comprise a single process on the level 0 diagram Shows how information moves from and to each of these processes Shows in more detail the content of higher level process Level 1 diagrams may not be needed for all level 0 processes Level 2 Diagrams Shows all processes that comprise a single process on the level 1 diagram Shows how information moves from and to each of these processes Level 2 diagrams may not be needed for all level 1 processes Correctly numbering each process helps the user understand where the process fits into the overall system DFD Fragment Example

Suminda 0777388638

Suminda 0777388638

Case Study 1
A Bank Manager actor provides New account details to the Open Account process which results in Customer details being persisted in the Customer Database data store and Account details being persisted in the Account Database data store. Although we have used the phrase results in as part of this explanation, the DFD implies no such cause and effect; all it shows is that the Open Account process can read in data from the Bank Manager interface and write out data to the Customer Database and Account Database data stores in no particular order. A Customer actor using the Online Banking Login process must provide some data in the form of a set of Login credentials such as a user name and password. A Customer actor can receive a Money amount from the Withdraw process and can supply a Money amount to the Deposit process; in either case causing (although

Suminda 0777388638

this causation cannot be explicitly modeled) an Account balance update to the Account Database data store. A Customer actor can initiate the Transfer Funds process, to which he or she must provide an Account destination and money amount. The Transfer Funds process can send a Money amount to another bank via the Other Bank interface. Just like the Customer actor, a Third Party actor can make use of the Deposit process (but obviously not the Withdraw process) by supplying a Money amount.

Suminda 0777388638

Case Study 2

A hospital admission system records the details of the admission, treatment and discharge of all patients. It also provides a number of official reports to satisfy the requirements of external authorities.

Admission consists of the following tasks: Administration staff enter the patients personal details from a completed hospital admission form and sometimes helping them to complete the form. Next they allocate appropriate hospital accommodation if one or more nights stay is required.

Following this they assign a doctor to attend for an initial examination, and check (in the case that private medical care is required) that the patient has valid medical insurance.

Doctors and nurses use the system to record medical care given to patient during their stay. (This medical care consists of treatments given and drugs administered). Only a doctor may prescribe drugs to a patient, and this information is also recorded in the system. Both doctors and nurses may administer drugs and doses are similarly recorded. Only doctors have the authority to discharge a patient, and this information is, again, recorded within the system.