80 likes | 218 Views
DFD Properties. Agenda. DFD Components DFD Properties DFD Decomposition DFD Advantages Example. Outside Inside. System Boundary. 4. employee-id. name. Process. Name. Make EID. Data Flow. Name should be verb+object. C. Name. Employee-Record. Data Store. DFD Components.
E N D
Agenda • DFD Components • DFD Properties • DFD Decomposition • DFD Advantages • Example
Outside Inside System Boundary 4 employee-id name Process Name Make EID Data Flow Name should be verb+object C Name Employee-Record Data Store DFD Components Numbers and letter are used as short-hand references; names should be evocative or descriptive
2 3 1 e Do Finish Begin a c d g b DFD Properties: Logical Dependency i f h h depends on e and g; e depends on d and c; c depends on a and b. Thus h depends on g, e, d, c, b, and a. But h does not depend on f or i. Logically, h also depends on processes 3, 2, and 1.
0 3 2 1 3.1 3.2 Top HighC HighB HighA LowA LowB Decomposition Process “HighC” is composed of two subprocesses: LowA and LowB Process “Top” is composed of three sub-processes: HighA, HighB, and HighC.
HighA HighB HighC MidA1 MidA2 LowA LowB LowestA11 LowestA21 LowestA12 LowestA22 LowestA13 LowestA23 Decomposition - 2 Top At each level, a process is decomposed into a set of simpler processes at the next level. Those without components are “Basic” processes. Those with components have the job of coordinating the component processes. At each level, the set of inputs and outputs for the set of components exactly equals those of the process at the next higher level. In effect, low level processes are “zoom ins” of higher level ones.
DFD Advantages • Logical dependencies help diagnose problems such as bad data, redundancy, bottlenecks, etc. • Flow characteristics can be used to calculate loads, volumes, rates, etc. • System boundary helps limit research efforts, avoid drifting
Example Rate of request can be determined. Where is bottleneck? SVerification SalesManager Supplier 4 E Distribution-List Suppl-ier-info A Product-Profiles Report –Receiver-Info Sales-data 5 Report –Receiver-Info Supplier-Product Product-Info 8 B Sales-Records Report -request Cannot-sell-reply Sales -record CI-reply Cust-info-request Updated-sales -record Sales-Report No-product-reply 6 7 2 3 D Sales-Reports Negative-response Sales -request C Customer-Profiles Diagnosis: How can a sales record exist without a sale? Cust-data Cust-data Customer-info Process Names: 1. Handle Order Request 2. Inform Customer 3. Check Product Availability 4. Handle Product Information 5. Check Customer Quality 6. Create Sales Request 7. Record Sale 8. Distribute Sales Report Customer-order Customer 1 Order-info CVerification Each Process may consist of subprocesses