1.01k likes | 2.07k Views
System Analysis And Design Methods “Data flow diagrams (DFD) ”. Imam Khomeini international University, 2019 Dr. Ali Khaleghi | Hadi Haedar. Overview. Use-cases. These tools are not specific to either structured analysis or OO analysis. General. Use-case diagrams.
E N D
System Analysis • And Design Methods • “Data flow diagrams (DFD)” Imam Khomeini international University, 2019 Dr. Ali Khaleghi | Hadi Haedar
Overview • Use-cases These tools are not specific to either structured analysis or OO analysis. • General • Use-case diagrams • Activity diagrams Data object diagrams • Swimlane diagrams ERD diagrams • analysis model tools • Structured • Analysis Data flow diagrams Class diagrams Process specifications (Process narrative) • Packages CRC cards OO Analysis Sequence Diagrams
Overview Modeling Tools: Structured Analysis: Data object diagrams • Models data elements • Attributes • Relationships ERD diagrams • Structured • Analysis • Structured • Analysis Data flow diagrams • Models processes that transform data Process specifications (Process narrative)
Data flow diagrams • describes information flow among a set of processes and actors • Graphically illustrate movement of data between external entities and the processes and data stores within a system • shows business processes and the data that flows between them • useful for communicating with users, managers, and other personnel • perform structured analysis to determine logical requirements • Synonyms bubble chart/ transformation graph / process mode
Data Flow Diagramming standards • Gane and Sarson • DeMarcoand Yourdan
Ganeand Sarson VS DeMarco and Yourdon symbols (Process) (DataStore) (External Entity) (DataFlow)
(Gane & SarsonSymbols set ) • DFD Symbols (Elements) 1.Process 2.DataFlow 3.DataStore 4.Source/Sink (External Entity)
Gane/SarsonVS DeMarco/Yourdon Example
DFD Symbols • 1.Process • Depicts work or action performed on data so that they are transformed, stored or distributed Number of process as well as name are recorded • Work or actions performed by a system in response to incoming data flows or conditions • Receives input data and produces output • synonym transform.
DFD Symbols • 1.Process
DFD Symbols • 1.1 Process(Rules I) • Can have more than one outgoing data flow or more than one incoming data flow • Can connect to any other symbol (including another process symbol) • A process has a verb phrase label • No process can have only outputs • No process can have only inputs (black hole)
DFD Symbols • 2. Data Flow • Straight line with incoming arrows are input data flows • Straight lines with outgoing arrows are output data flows
DFD Symbols • 2. Data Flow
DFD Symbols • 2.1 Data Flow (Rules I) • A data flow has only one direction of flow between symbols • A data flow to a data store means update • A data flow from a data store means retrieve or use • A data flow has a noun phrase label • A data flow cannot go directly back to the same process it leaves • A Forkmeans that exactly the same data goes • A Joinmeans that exactly the same data comes from any two or more different processes, data stores or sources/sinks to a common location
DFD Symbols 2.2 Data flow (Rules II)
DFD Symbols • 2.3 Data flow (incorrect combinations) Spontaneous generation : process has out put, but no input Black hole : process has input, but no output Gray hole: process has at least one input and one output, but the input obviously is insufficient DATE OF BIRTH FINAL GRADE CALCULATE GRADE
DFD Symbols • 3. Data Store • A Data Store is a repository of data that stored data intended for later use • used in a DFD to represent data that the system stores • data store in a DFD represents : • A sequential file • A disk store • A repository of data • A random access memory • Synonyms file and database
DFD Symbols • 3. Data Store
DFD Symbols 3.1 Data Store (Rules ) • Labels should be noun phrases • Must have at least one incoming and one outgoing data flow • Data can be written into the data store. (incoming arrow) • Data can be read from a data store. (outgoing arrow) • Data cannot be moved directly from one store to another(Two data stores cannot be connected by a data flow) • External entity (sink/source) cannot read or write to the data store
DFD Symbols 4. Source/Sink (External Entity/Agent) • an outside person, organization unit, system, or organization outside the system that interacts with a system • External Entities may be a : • Source of input data only • Source of input data or destination of results • Destination of results only • Repository of data • synonym external entity • Source – Entity that supplies data to the system • Sink – Entity that receives data from the system
DFD Symbols 4. Source/Sink (External Entity/Agent)
DFD Symbols 4.1 Source/Sink (Rules) Must be connected to a process by a data flow Labels should be noun phrases Data cannot move directly from a source to a sink
DFD Data Flow Diagramming Basic Rules • Inputs to a process are always different than outputs • Objects always have a unique name • In order to keep the diagram uncluttered, you can repeat data stores and sources/sinks on a diagram • nouns => external entities, control objects, data stores, data flow Names of data) • Verbs (a system name/ a subsystem name) => processes
DFD Strategies for Developing DFDs • Top-down strategy : Create the high-level diagrams (Context Diagram), then low-leveldiagrams (Level-0 diagram), and so on • Bottom-up strategy : Create the low-level diagrams, then higher-level diagrams
DFD Creating DFDs • Create a list of activities • Createa preliminary Context Diagram • Create a Level 0 diagram from fragments. • Decompose to Level 1,2,… (for each of process of previous level) • Validate DFDs ( Check against rules of DFD)
An example of Creating DFDs (s1) An example of Creating DFDs
An example of Creating DFDs (s1) An example of Creating DFDs Processes Data Stores External Entities
An example of Creating DFDs (s1) An example of Creating DFDs
Creating DFDs Context Diagram • Top-level view of IS • a data flow diagram (DFD) of the scope of an organizational • shows the system boundaries, external entities that interact with the system and the major information flows between the entities and the system • Example: Order system that a company uses to enter orders and apply payments against a customer’s balance
Creating DFDs Creating the Context Diagram • Draw one process representing the entire system (process 0) • Find all inputs and outputs that come from or go to external entities; draw as data flows. • Draw in external entities as the source or destination of the data flows.
Creating Context Diagram(Example A) Mail Order System
Creating Context Diagram(Example B) سیستم نمره دهی
Creating Context Diagram(Example C) airline reservation system
Creating DFDs Decomposition of DFDs The iterative process of exploding data flow diagrams to create more detail. Aact of going from one single system to many component processes Repetitive procedure (Lowest level is called a primitive DFD) Level 0 data flow diagrams may be exploded into successive low levels of detail. The next level of detail would be a level 1 data flow diagram. The DFDs become linked together in a hierarchy, which would fully document the system.
Creating DFDs Decomposition of DFDs
Creating DFDs Decomposition of DFDs (the Small Stock System)
Creating DFDs • Decomposition of DFD (break-up process 1 of the Small Stock System )
Creating DFDs Decomposition of DFDs (When to stop? ) • When the system becomes primitive ( i.e. lowest level is reached and further decomposition is useless) • When each process has been reduced to a single decision, calculation or database operation • When each data store represents data about a single entity • When the system user does not care to see any more detail • When every data flow does not need to be split further to show that data are handled in various ways • When you believe that you have shown each business form or transaction, on-line display and report as a single data flow • When you believe that there is a separate process for each choice on all lowest-level menu options • Ideally, a DFD has at least three levels
Creating DFDs Level-0 DFD • A data flow diagram (DFD) that represents a system’s major processes, data flows and data stores at a high level of detail • Shows all the processes that comprise the overall system • Shows how information moves from and to each process • Adds data stores • When the Context Diagram is expanded into DFD level-0, all the connections that flow into and out of process 0 needs to be retained • Level 0 DFD should contain only a single process
Creating DFDs Creating Level 0 Diagram • Combine the set of DFD fragments into one diagram. • Generally move from top to bottom, left to right. • Minimize crossed lines.
Creating Context Diagram(Example A) Mail Order System
Creating Context Diagram(Example D) • city complaint handling system (context diagram)
Creating Context Diagram(Example D) city complaint handling system (Level 0)
Creating Level-0 DFD (Example B) سیستم نمره دهی
Creating Level-0 DFD (Example E) سیستم پمپ بنزین
Creating DFDs Level 1 Diagrams • Shows all the processes that comprise a single process on the level 0 diagram • Shows how information moves from and to each of these processes • Shows in more detail the content of higher level process • Level 1 diagrams may not be needed for all level 0 processes
Creating DFDs Creating Level 1 Diagram • Each use case is turned into its own DFD. • Take the steps listed on the use case and depict each as a process on the level 1 DFD. • Inputs and outputs listed on use case become data flows on DFD. • Include sources and destinations of data flows to processes and stores within the DFD. • May also include external entities for clarity.
Creating Context Diagram(Example A) Mail Order System
Creating Level-1 DFD (Example E) سیستم پمپ بنزین