Data Flow Diagrams (DFDs)
A Data Flow Diagram (DFD) is also known as a Process Model. Process Modeling is an analysis technique used to capture the flow of inputs through a system (or group of processes) to their resulting output. The model is fairly simple in that there are only four types of symbols – process, dataflow, external entity, data store. An example can be found on page 146 in our textbook. The Gane and Sarson Symbol technique is employed there.
Process Modeling is used to visually represent what a system is doing. It is much easier to look at a picture and understand the essence than to read through verbiage describing the activities. System Analyst after talking with various users will create DFD diagrams and then show them to users to verify that their understanding is correct. The process models can be created to represent an existing system as well as a proposed system.
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
Be aware of the basic rules for Process Modeling:
- A series of data flows always starts or ends at an external agent and starts or ends at a data store. Conversely, this means that a series of data flows can not start or end at a process.
- A process must have both data inflows and outflows.
- All data flows must be labeled with the precise data that is being exchanged.
- Process names should start with a verb and end with a noun.
- Data flows are named as descriptive nouns.
- A data store must have at least one data inflow.
- A data flow can not go between an external agent and a data store, but a process must be in between.
- A data flow can not go between to external agents, but a process must be in between.
- A data flow can not go between to data stores, but a process must be in between.
- External agents and data flows can be repeated on a process model in order to avoid lines crossing, but do not repeat processes.
A Context Model is done first when completing the process models for a system. It represents the system with a single process and then shows the external agents with which the system interacts. A context diagram is often named the name of the system and does not start with a verb as do other processes. Typically data stores are not part of a context model since these would be internal to the system. By creating the context model first the system analyst focuses on the outward communications and exchanges and later the inward communications and exchanges.
After the context model is created the process is exploded to the next level to show the major processes in the system. Depending upon the complexity of the system each of these processes can also be exploded into their own process model. This continues until the goal of each process accomplishing a single function is reached. Because of this approach the context model is referred to as Level 0 (Zero) DFD, the next as Level 1 DFD, etc.
To better understand this technique let’s look at an example case and create a Level 0 and maybe a Level 1 process models for it.
CASE:
The purpose of the green acres real estate system is to assist agents as they sell houses. Sellers contact the agency, and an agent is assigned to help the seller complete a listing request. Information about the house and lot taken from that request is stored in a file. Personal information about the sellers is copied by the agent into a sellers file.
When a buyer contacts the agency, he or she fills out a buyer request. Every two weeks, the agency sends prospective buyers area real estate listings and an address cross reference listing containing actual street addresses. Periodically, the agent will find a particular house that satisfies most or all of a specific buyer’s requirements, as indicated in the buyer’s requirements statement distributed weekly to all agents. The agent will occasionally photocopy a picture of the house along with vital data and send the multiple listing statements (mls) to the potential buyer.
When the buyer selects a house, he or she fills out an offer that is forwarded through the real estate agency to the seller, who responds with either an offer acceptance or a counteroffer. After an offer is accepted, a purchase agreement is signed by all parties. After a purchase agreement is notarized, the agency sends an appraisal request to an appraiser, who appraises the value of the house and lot. The agency also notifies its finance company with a financing application.
First we will do the context diagram or Level 0 DFD. Start by identifying all the external agents and the data flows from them to the system. You will then need to open Microsoft’s Visio software and select new diagram type of data flow model diagram under the software category.
Select the external interfaces and process and place them on your page.
To determine the data flows it may help to create an Event Response List. For our case it would look something like this.
Use a Data Flow Diagram (DFD) to show the relationships among the business processes within an organization to:
· External systems,
· External organizations,
· Customers,
· Other business processes.
Method
Data flow diagrams are used to describe how the system transforms information. They define how information is processed and stored and identify how the information flows through the processes.
When building a data flow diagram, the following items should be considered:
· Where does the data that passes through the system come from and where does it go,
· What happens to the data once it enters the system (i.e., the inputs) and before it leaves the system (i.e., the outputs),
· What delays occur between the inputs and outputs (i.e., identifying the need for data stores).
STEPS TO DRAW A DATA FLOWDIAGRAM
Steps
· Start from the context diagram. Identify the parent process and the external entities with their net inputs and outputs.
· Place the external entities on the diagram. Draw the boundary.
· Identify the data flows needed to generate the net inputs and outputs to the external entities.
· Identify the business processes to perform the work needed to generate the input and output data flows.
· Connect the data flows from the external entities to the processes.
· Identify the datastores.
· Connect the processes and data stores with data flows.
· Apply the Process Model Paradigm to verify that the diagram addresses the processing needs of all external entities.
· Apply the External Control Paradigm to further validate that the flows to the external entities are correct.
· Continue to decompose to the nth evel DFD. Draw all DFDs at one level before moving to the next level of decomposing detail. You should decompose horizontally first to a sufficient nth level to ensure that the processes are partitioned correctly; then you can begin to decompose vertically.
Tips and Hints
Consider creating a data access model to document the processes that create, update, and delete data in the system.
As an alternative to functional decomposition, consider using a bottom-up approach when the details about the system are well known.
No comments:
Post a Comment