A Data Flow Diagram
A Data Flow Diagram
aspects. Often they are a preliminary step used to create an overview of the system which can later be elaborated.[2] DFDs can also be used for the visualization of data processing (structured design). A DFD shows what kinds of data will be input to and output from the system, where the data will come from and go to, and where the data will be stored. It does not show information about the timing of processes, or information about whether processes will operate in sequence or in parallel (which is shown on a flowchart).
Contents
[hide]
3.1 Data Flow 3.2 Processes 3.3 Data Stores 3.4 External Entities 3.5 Resource store
4 Steps
o
4.1.1 Physical DFDs 4.1.2 Logical DFDs 4.1.3 Business System Options 4.1.4 Required DFDs
4.2.1 External Entities 4.2.2 Processes 4.2.3 Data Flows 4.2.4 Data Stores
5 Context Diagrams 6 Level 1 Diagrams 7 Resource Flow Analysis 8 Document Flow Analysis 9 Organizational Structure Analysis 10 See also 11 Notes 12 Further reading 13 External links
[edit] Overview
Data flow diagram - Yourdon/DeMarco notation. It is common practice to draw the context-level data flow diagram first, which shows the interaction between the system and external agents which act as data sources and data sinks. On the context diagram the system's interactions with the outside world are modelled purely in terms of data flows across the system boundary. The context diagram shows the entire system as a single process, and gives no clues as to its internal organization.
This context-level DFD is next "exploded", to produce a Level 0 DFD that shows some of the detail of the system being modeled. The Level 0 DFD shows how the system is divided into subsystems (processes), each of which deals with one or more of the data flows to or from an external agent, and which together provide all of the functionality of the system as a whole. It also identifies internal data stores that must be present in order for the system to do its job, and shows the flow of data between the various parts of the system. Data flow diagrams were proposed by Larry Constantine, the original developer of structured design,[3] based on Martin and Estrin's "data flow graph" model of computation. Data flow diagrams (DFDs) are one of the three essential perspectives of the structured-systems analysis and design method SSADM. The sponsor of a project and the end users will need to be briefed and consulted throughout all stages of a system's evolution. With a data flow diagram, users are able to visualize how the system will operate, what the system will accomplish, and how the system will be implemented. The old system's dataflow diagrams can be drawn up and compared with the new system's data flow diagrams to draw comparisons to implement a more efficient system. Data flow diagrams can be used to provide the end user with a physical idea of where the data they input ultimately has an effect upon the structure of the whole system from order to dispatch to report. How any system is developed can be determined through a data flow diagram. In the course of developing a set of levelled data flow diagrams the analyst/designers is forced to address how the system may be decomposed into component sub-systems, and to identify the transaction data in the data model. There are different notations to draw data flow diagrams (Yourdon & Coad and Gane & Sarson[4]), defining different visual representations for processes, data stores, data flow, and external entities.[5]
Types of DFD
Following four types are used in development project:: [edit] Physical DFDs
Project scope and current system is well-defined. Simple prototype model is drawn for estimation of purposes and to defined a basic scope. Later a more complex design can be drawn for business purpose.
Drawn from current Physical DFD. Indicates the basic underlying functionality. No constraints are imposed. Uses Logical steps.
Use to form the base of the required business system. Uses Level 1 steps.
Indicates the required system and then developed by using DFDs so as to satisfy the selected business system option. Uses Leveled steps.
Information within a system is obtained from or given to external entity. Crossing of data flow lines can be prevented by multiple similar external entities. When it happen, a strip is drawn across left hand corner.
[edit] Processes
Processes should not be named without understanding there role. User of the DFD must understand the meaning of Description.
All except bottom level diagrams can use Double headed arrows to show 2-way flows. Also a hierarchy of Data Flows can be constructed where Data Flow at each level divides into lower levels.
Data Store should be given any number preceded by a reference letter as follows:
Data Stores can appear several times in DFD in case of complex diagram and should be indicated by double vertical bar on their left hand edge.
Advantages of data flow diagram: A simple graphical technique which is easy to understand. It helps in defining the boundaries of the system. It is useful for communicating current system knowledge to the users. It is used as the part of system documentation file. It explains the logic behind the data flow within the system. Disadvantages of data flow diagram: Data flow diagram undergoes lot of alteration before going to users, so makes the process little slow. Physical consideration are left out. It make the programmers little confusing towards the system. Different DFD models have different symbols like in Gane and Sarson process is represented as rectangle where as in DeMarco and Yourdan symbol it is represented as eclipse. Read more: http://wiki.answers.com/Q/The_advantages_and_disadvantages_of_data_flow_diagrams#ixzz1Zi XzbTtB
and overall picture of the business and processes and continues down to the lower levels of the process through the presentation. This is often called top-down expansion. By presenting this analysis, the audience can literally walk with you through the process and see each discrete point as you lead them through the presentation. This is especially useful with business stakeholders who have a stake in the work flow or process you are discussing. Often times, they may not have ever seen the high level view of the given process or flow. To get started, simply start with a context diagram. This is usually a simple representation of the entire system, process, or data flow your are discussing. Next, follow up with a level 1 flow diagram; which provides an overview of the major functional areas of the business. At this point, dont get into the details. Keep the level 1 diagram at a high level and start addressing all the areas of interest that your audience has a stake in. Make sure you are using terminology that makes sense to them. The easiest way to lose your audience is to use acronyms or terminology that they cannot relate to. Now that you have your level 1 diagram, you are ready to create the level 2 business flow diagram. Continue to peal the layers of the process back in your presentation going deeper at each level. Typically, you will want to keep it no more than four (4) layers deep. Any deeper and you will lose your audience for sure. A good approach is provide hand outs that the attendees can take with them. Identifying the existing business processes, using a technique like data flow diagrams, is an essential step to business process re-engineering, migration to new technology, or improving any work flow related to your business.
Limitations
Sometimes the limit is the size of the page. In today's technological world, however, this limitation has been eliminated or significantly reduced. Limitations include: size of the diagram depends on the complexity of the logic some programmers can't read data flow diagrams Read more: http://wiki.answers.com/Q/What_are_the_limitation_of_data_flow_diagram#ixzz1ZiYT80rN