Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 14/08/00Arcot Sowmya Software Engineering COMP3111/COMP9008 Data Flow Diagrams.

Similar presentations


Presentation on theme: "1 14/08/00Arcot Sowmya Software Engineering COMP3111/COMP9008 Data Flow Diagrams."— Presentation transcript:

1 1 14/08/00Arcot Sowmya Software Engineering COMP3111/COMP9008 Data Flow Diagrams

2 2 14/08/00Arcot Sowmya Tools of Structured Analysis v Much of SA consists of system modeling v modeling allows us to –focus on important features –change/correct user’s requirements at low cost and risk –verify that analyst’s understanding is correct v include: data flow diagrams, entity- relationship diagram and state- transition diagram.

3 3 14/08/00Arcot Sowmya Data Flow Diagram v What system functions, their interactions? v What transformations, what inputs and outputs? v What work, what information, what results? v Data flow diagram models transformation of inputs to outputs.

4 4 14/08/00Arcot Sowmya A Data Flow Diagram Tape Transaction 1 Customer Transaction Member number Rental cost Prices Library Customer Generate Report 3 Reports Update Pricing 2 New Prices

5 5 14/08/00Arcot Sowmya Components of DFD: Process v Also called bubble, function, transformation v shows part of system that transforms inputs to outputs v represented graphically as a circle v named with a single word, phrase or sentence

6 6 14/08/00Arcot Sowmya Components of DFD: The Flow v Represented graphically by an arrow into/out of aprocess v describes movement of information in the system v “data in motion” v in non-computerized systems, could describe flow of materials

7 7 14/08/00Arcot Sowmya The Flow- cntd v must be named (with one exception) v flow shows direction v double-headed arrow stands for dialogue- convenient packaging of two data packets v dalatflows can diverge or converge in a DFD

8 8 14/08/00Arcot Sowmya Components of DFD: The Store v Used to model a collection of data packets at rest- store is passive v named, notation is two parallel lines v stored connected by flows to processes v flow from a store is a read- store is not changed v flow to a store is a write/update/delete- store is changed

9 9 14/08/00Arcot Sowmya Components of DFD: The Terminator v Represented graphically as a rectangle v represents external entities which system communicates with v outside control of system being modeled v flows between terminators and processes or stores is the system interface v relationships between terminators will not be modeled

10 10 14/08/00Arcot Sowmya Guidelines for constructing DFD v Choose meaningful names –try to identify functions of processes –avoid vague names (`Do STUFF’) –Use words meaningful to user v number the processes –be consistent –easier to refer to aprocess by number! –Useful in hierarchy of processes

11 11 14/08/00Arcot Sowmya Guidelines- cntd v redraw for aesthetics –size/shape of bubbles –curved versus straight dataflows –hand-drawn versus machine-generated diagrams v avoid overly complex DFDs –must be comprehensible –not too many processes, flows, stores, terminators

12 12 14/08/00Arcot Sowmya Guidelines- cntd v make sure the DFD is logically consistent –avoid infinite sinks –avoid spontaneous generation bubbles –beware of unlabeled flows and processes –beware of read-only or write-only stores

13 13 14/08/00Arcot Sowmya Hierarchical DFDs v To handle large, complex systems (DFDs), v organise them in a series of levels v each level provides more detail about a portion of the level above it

14 14 14/08/00Arcot Sowmya DFD: A Hierarchical System Context Diagram Level 0 Level 1 Level 2

15 15 14/08/00Arcot Sowmya Context Diagram- Level 0 v Single bubble represents whole system v show –all people, organisations, systems with which our system communicates- as terminators –system inputs and outputs –data stores –boundary between our system and outside world.

16 16 14/08/00Arcot Sowmya DFD: Context Level Diagram Video Shop System Member Manager New Member details Rental details Rental cost Member number New Prices Reports

17 17 14/08/00Arcot Sowmya DFD: Level 0 Diagram Tape Transaction 1 Customer Transaction Member number Rental cost Prices Library Customer Generate Report 3 Reports Update Pricing 2 New Prices

18 18 14/08/00Arcot Sowmya DFD: Numbering Processes Context Diagram Level 0 Level 1 Level 2

19 19 14/08/00Arcot Sowmya Numbering Processes v Number all processes as 1, 2, 3,.. in Level 0 v If parent process at Level 0 was numbered 1, then its child processes at Level 1 will be 1.1, 1,2,…. v Processes in context diagram are not numbered v not all processes are decomposed to the same depth

20 20 14/08/00Arcot Sowmya Points to Ponder v How many levels in a DFD? v decompose to same level of detail? v How to present to user? v How to ensure consistency in levels? v How to show stores at different levels? v How to DO the levelling?

21 21 14/08/00Arcot Sowmya DFDs: Common Mistakes CustomerVSS Name Address Phone Order Invoice Should be rationalised into a single data flow: “Customer Detail”

22 22 14/08/00Arcot Sowmya DFDs: Common Mistakes Customer Details Name Address Validate Customer 1.1 1.2 InvoiceGenerate Invoice This is okay because it is still the same data flow

23 23 14/08/00Arcot Sowmya DFDs: Common Mistakes Customer Details Name Address Validate Customer 1.1 1.2 InvoiceGenerate Invoice This is NOT okay because we have split the data flow into 2 new flows. Only processes are allowed to split data flows.

24 24 14/08/00Arcot Sowmya DFDs: Common Mistakes Items Costs You cannot merge data flows. Only processes are allowed to merge data flows.

25 25 14/08/00Arcot Sowmya DFDs: Common Mistakes Personal Info Transaction interface Return-Key Personal Details Control Signals should be avoided in logical DFD analysis.

26 26 14/08/00Arcot Sowmya DFDs: Common Mistakes Get Next Byte Compile Packet Ask for more Byte Packet Avoid control loops in logical DFD analysis.

27 27 14/08/00Arcot Sowmya DFD: Example v A simple Video Shop System. v General Requirements: –Facility to add new members and issue member numbers. –Borrow and return tapes. –Change rental prices. –Generate usage reports.

28 28 14/08/00Arcot Sowmya DFD: Example v Analysis –From the requirements, you should have identified the external entities to be the Manager and the Customer. –Further analysis might suggest what data is fed into and produced by the system. v The following DFD is an interpretation of the given requirements.

29 29 14/08/00Arcot Sowmya DFD: Example Video Shop System Customer Manager Customer Transaction Rental cost Member number New Prices Reports Context Diagram

30 30 14/08/00Arcot Sowmya DFD: Example Tape Transaction 1 Customer Transaction Member number Rental cost Prices Library Customer Generate Report 3 Reports Update Pricing 2 New Prices Level 0 Diagram

31 31 14/08/00Arcot Sowmya DFD: Example Determine Membership 1.1 Customer Cuntomer Transaction New Member Tape Transaction Rental Cost Member number Add New Member Process Borrow/ Return 1.2 1.3 Customer Level 1 Diagram Process 1

32 32 14/08/00Arcot Sowmya DFD: Example Prices Customer Library Tape Transaction Tape Return Tape Borrow Rental Costs Filter Transaction Return Borrow 1.3.1 1.3.2 1.3.3 Level 2 Diagram Process 1.3


Download ppt "1 14/08/00Arcot Sowmya Software Engineering COMP3111/COMP9008 Data Flow Diagrams."

Similar presentations


Ads by Google