Presentation is loading. Please wait.

Presentation is loading. Please wait.

DFDs (Data Flow Diagrams). Data Flow Diagrams DFDs are a system modeling tool, the most popular and important representation in data flow modeling. DFDs.

Similar presentations


Presentation on theme: "DFDs (Data Flow Diagrams). Data Flow Diagrams DFDs are a system modeling tool, the most popular and important representation in data flow modeling. DFDs."— Presentation transcript:

1 DFDs (Data Flow Diagrams)

2 Data Flow Diagrams DFDs are a system modeling tool, the most popular and important representation in data flow modeling. DFDs allows us to picture a system as a network of functional processes, connected to one another by “pipelines” and “holding tanks”of data. In DFDs, functions of the system are of paramount importance A DFD is function-oriented DFDs are a simple but powerful technique which are easily understood

3 Building Blocks of a DFD Process (a bubble, a function or a transformation) How inputs are transformed or changed into outputs Data Flow Used to describe the movement of data or physical materials from one part of the system to another part. It represents data or physical materials in motion. Data Store It is used to model a collection of data packets at rest. (files, tapes, punched cards, etc.) External Entity (Terminator) Entities external to the system, with which the system communicates. They are outside the control of the system that is being modeled. It may also be another system

4 symbols name SOURCE or DESTINATION of data DATA FLOW name Dn PROCESS DATA STORE A Data Flow Diagram (DFD) is a network representation of a system showing the processes and data interfaces between them. 4 Main Symbols:

5 sample

6 Processes Represent transformations sometimes drawn as circles or ovals Name of process should be written – meaningful Normally data flows in and out of each process Each process must have a unique number description - active verb + object clause E.g. Validate Login Data

7 Data Stores Temporary depository of data Stores data between processes Identified by Dn where n is an integer Data Stores are connected to processes by data flows Name with type of data that it stores

8 Flows Data Flows Between processes, into and out of data stores, to/from destinations/sources Must have arrow to indicate direction Meaningful and consistent name must be given to the flow (Usually the data being carried)

9 External Entities show origin/receiver of data can be duplicated lie outside the DFD Name is written inside the symbol

10 Guidelines for drawing DFDs Identify all external entities Identify all inputs and outputs Work your way through from Inputs to outputs Label all data flows and data stores descriptively Ignore initialisation/ termination trivia Omit trivial error paths and control logic e.g conditions, loops

11 Levelling Typically DFD are traditionally drawn at three levels The top-level DFD is context diagram (level 0) consisting of only one process, representing the entire system; It shows the interfaces between the system and the external entities. Immediately beneath the context diagram is the system level diagram (level 1) i.e. highest level view of the major functions within the system, as well as the major interfaces between those functions. Further levels can be decomposed to any depth by expanding individual processes

12 Levelled Diagram

13 Context Level Diagram

14 System Level DFD

15 A video shop (1) Expanding this process (context level) Process Orders Customer Distributor customer order Purchase order invoice Delivery note

16 A video shop (2) Customer Verify Order Valid 1.0 D2Customer Data D1Video File Video details customer order D3Pending Orders Create Purchase Orders 2.0 valid Cust- omer order Distributor purchase order batched order Assemble Customer Orders 3.0 credit status invoice Video order details D4Distributor file Distributor details delivery note address

17 Numbering Expand Assemble Customer Orders New process 3.1 New process 3.2 etc Assemble Customer Orders 3.0 invoice Video order details delivery note address

18 Expanded D3Pending Orders Video order details Distributor Assign delivery to pending orders 3.1 delivery note Customer Create Invoice 3.3 Verify Correct Delivery 3.2 D5A/c Receivable invoice copy invoice indiv. Orders details assembled orders Create Delivery Note 3.4 delivery note assembled orders D2Customer Data Address

19 Some Principles (1) Each DFD figure should have no more than 8 or 9 processes and related stores. The number of level and partition should be based on the above principle: The number of levels is dependent on system complexity. Complexity of each level may not be the same. Some can be more complex than other levels.

20 Some Principles (1) Make sure that the levels of DFDs are consistent with each other: the data flow coming into and going out of a process at one level must correspond to the data flows coming into and going out of an entire figure at the next lower level which describe that process. Show a store at the highest level where it first serves as an interface between two more processes; then show it again in EVERY lower level

21 Some Common Mistakes (1) Process Errors Process that have no outputs (a black hole) Processes that have no inputs (a miracle) The label should be a verb phrase Data Store Errors Data stores never being read and written to throughout all level of figures Moving data directly from a store to an entity or another store The label should be a noun phrase External Entity Errors Unconnected external entities Data moved directly from a entity to another entity The label should be a noun phrase

22 Some Common Mistakes (2) Data Flow Errors A data flow cannot be two direction of flow between symbols A fork/join in a data flow should be exactly the same type of data A data flow cannot go directly back to same process it leaves Having no source Having no destination The label should be a noun phrase

23 What DFD’s do not do (1) DFDs do not handle sequence There is no notion of time in a DFD. It cannot be inferred that process 2 always follows process 1. In many instances DFDs are drawn by considering a sequence of actions (which is a very sensible way of going about things) but that still does not mean that we can infer sequentially from a DFD. DFDs do not handle priorities In a situation where two processes want to read from the same file at the same time, which one wins? DFDs do not address the problem.

24 What DFD’s do not do (2) DFDs do not define the structure of the data The structure of the data in the data stores is glossed over in DFDs and any structure of the data in data flows is similarly ignored in DFDs. The structure of the data is left to the data view of the system.

25 Summary Know 4 main symbols Naming is very important Know Context level, systems level and lower levels Know how to decompose processes to lower levels


Download ppt "DFDs (Data Flow Diagrams). Data Flow Diagrams DFDs are a system modeling tool, the most popular and important representation in data flow modeling. DFDs."

Similar presentations


Ads by Google