Professional Documents
Culture Documents
Outline
Introduction Data flow diagrams
Reading DFD Elements of DFD Using DFD to define business processes
What is a process model? What is a data flow model? Are the two related? If so, how? Process models are used to document and organize the information obtained during the analysis phase of a systems development project. Data flow diagramming is a popular technique that is used in process modeling today. Data flow diagrams document the business processes and the data that passes among them.
Distinguish between logical process models and physical process models. Logical process models describe processes without suggesting how they are constructed. Physical process models provide information that is needed to ultimately build the system.
Define what is meant by a process in a process model. How should the process be named? What information about a process should be stored in the CASE repository? A process represents actions that are performed for some specific business reason. A process should be named using a verb phrase; information regarding a process to be stored in the CASE repository includes: Label (name) Type (process) Description (what it is) Process Number Process Description (Structured English) Notes
Define what is meant by a data flow in a process model. How should the data flow be named? What information about a data flow should be stored in the CASE repository? A data flow represents a single piece of data or a set of logically-related data items that move to or from processes. A data flow should be named using a noun; information regarding a data flow to be stored in the CASE repository includes: Label (name) Type (flow) Description Alias Composition (description of data elements) Notes
Define what is meant by a data store in a process model. How should the data store be named? What information about a data store should be stored in the CASE repository? A data store represents a set of data that is stored together - the data store holds the data. A data store should be named using a noun; information regarding a data store to be stored in the CASE repository includes: Label (name) Type (store) Description Alias Composition (description of data elements) Notes
Define what is meant by an external entity in a process model. How should the external entity be named? What information about an external entity should be stored in the CASE repository? An external entity is something that is outside the scope of our system, but interacts with it. An external entity may be a person, organization, or another system that supplies information to the system and/or receives information from the system. An external entity should be named using a noun; information regarding an external entity to be stored in the CASE repository includes: Label (name) Type (entity) Description Alias Notes
Why is a process model typically composed of a set of DFDs? What is meant by decomposition of a business process? Most business processes are too complex to depict using one diagram. Consequently, business processes are typically depicted with a set of DFDs, with the first diagram (Context Level) showing a summary of the system, and subsequent DFDs showing processes within that system. Decomposition is a method for breaking down a business process into smaller, logical processes.
Explain the relationship between a DFD context diagram and the DFD level 0 diagram. A context level diagram is a high-level view of the entire system represented as one process symbol. Data flows going into and out of the system and the external entities that interact with the system are the only other element of the system shown on this type of diagram. A level 0 diagram is the first view of the internal processes of the business system. These processes are shown from fairly high level, with subsequent diagrams depicting increasing levels of detail. The level 0 diagram shows the same data flows and entities as the context, as well as data stores associated with the system.
Explain the relationship between a DFD level 0 diagram and a DFD level 1 diagram(s). The DFD level 0 diagram depicts only the major high-level processes in the system. Each process is then decomposed into a more detailed DFD level 1 diagram. Typically a set of DFD diagrams for a system will include at least one DFD level 1 diagram for each process shown on the context level diagram.
Discuss how the analyst knows how to stop decomposing the process model into more and more levels of detail. The complexity of an overall system or business process that is being modeled sets the boundary conditions for knowing what is the ideal level of decomposition for any specific system or process. Processes are typically decomposed into lower-level DFDs when the additional decomposition helps to explain the complexity of the process; experts suggest that each DFD page have at least three, but not more than seven to nine, processes. A good rule of thumb is to consider a process decomposition complete when the process in question can be explained on one sheet of paper (e.g., structured English, Pseudocode), or with one process description model (decision table/tree).
Suppose a process on a DFD is numbered 4.3.2. What level diagram contains this process? What is the processs parent process? Level 2 diagram contains the process numbered 4.3.2 Parent process is 4.3 Explain the use of structured English in process descriptions. Structured English is one method of describing a process. Typically, short sentences are used to describe the elements or steps in the process.
Why would one use a decision tree and/or a decision table in a process description? Alternate methods of describing a process are a decision tree and a decision table. A decision tree is useful in that it aids in understanding decision logic pertaining to nodes (questions) and branches (answers). A decision table aids in understanding the actions (business policies) that based on a condition or a set of conditions.
Explain the process of balancing a set of DFDs. Balancing involves assuring that all the information from a higher-level diagram is appropriately represented on the next level, or child diagram. The child diagram shows more detail, but must show all the inflows and outflows to and from the parent process on the higher level diagram.
How are mutually exclusive data flows (i.e., alternative routes thorough a process) depicted in DFDs? Mutually exclusive data flows (alternatives) are all shown on the data flow diagram. Nothing is shown on the diagram to indicate these are alternatives. The information in the written process description will document the fact that the data flows are mutually exclusive.
Discuss various ways to verify the correctness of a process model. Model correctness can be verified by having the users validate it in a walkthrough, or through role-playing. Analysts should also check that the decomposition of diagrams goes to the same level of detail (not necessarily the same number of levels). Analysts should also check for consistency in terminology throughout the model.
What is meant by a DFD semantic error? Provide an example. A semantics error is an error of meaning in the data flow diagram, in which the model does not accurately represent the business process being modeled. One example of a semantic error is one in which the data inputs to a process do not correspond to the type of information in the output data flow (see following DFD excerpt).
Creating use cases when working with users is a recent development in system analysis practice. Why is the trend today to employ use cases in user interviews or JAD sessions? Users may be confused or intimidated by the symbols used in drawing DFDs. Most users can verbalize the content of a use case more easily than they can grasp drawing DFDs. Use cases are easier to start with than DFDs for most users.
How can you make a DFD easier to understand? (Think first about how to make one difficult to understand). Try to ensure that the processes are clearly named and that each process on a diagram is of about the same scale. It is confusing if some processes on a diagram are significantly more complex than others on the same diagram. Try to structure the flow through the processes from top to bottom, left to right, since that is the natural way most people read diagrams.
Suppose your goal is to create a set of DFDs. How would you begin an interview with a knowledgeable user? How would you begin a JAD session? Although my goal is to create a set of DFDs, it is best to begin by creating a set of use cases. Therefore, I would begin my interviews or the JAD session by working with the users to identify the major events that are handled by the system and to complete the use cases for those events. After I had a complete and verified set of use cases, then I could work on structuring the information from them into a set of DFDs for the system.
Introduction
In this chapter how the requirements definition and use case are further refined into a process model. Process model is a formal way of representing how a business system operates.
Illustrates the processes and activities that are performed and how data move among them. Can be used to document the current system (as-is) or the new system (to be) being developed, whether computerized or not.
Introduction
There are many different process modeling techniques, but we use one of the most commonly used techniques: DFD Data flow diagramming is a technique that diagrams the business processes and the data that pass among them.
Focus is mainly on the processes or activities that are performed.
Introduction
In this chapter, we focus on logical process model. Logical process model are models that describe processes, without suggesting how they are conducted.
Focus on how the business should run, without being distracted by implementing details.
Physical models (chapter 10) provide information that is needed to ultimately build the system. The physical details are defined during the design phase, such as:
Be able to tell whether a process is computerized or manual Whether a piece of information is collected by paper form or via the Web Whether information is placed in a filing cabinet or a large database
This Chapter
Explain how to read DFDs Describe the DFDs basic syntax Describe the process used to build DFDs
that draws information from the use cases and from the additional requirements information gathered from the users
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 4th Edition Copyright 2009 John
6 - 26
Reading a DFD
The relation between use cases and data flow diagrams is use cases are developed first and then data flow diagrams ensue (to take place afterward ).
Names of use cases become processes Inputs and outputs become data flows
6 - 29
Elements of a DFD
Process Data flows Data stores External entities
Neither is better than the other. We will use Gane and Sarson style.
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 4th Edition Copyright 2009 John 6 - 31
Elements of a DFD
Process
An activity or function performed for a specific business reason Its name is verb phrase. Manual or computerized
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 4th Edition Copyright 2009 John
6 - 32
Elements of a DFD
Data flow
A single piece of data or a logical collection of data Its name is noun. Always starts or ends at a process Each process must create at least one output data flow
no output, the process does not do anything
DFD Elements
Data Store
A collection of data that is stored in some way Its name is noun. Data flowing out is retrieved from the data store Data flowing in updates or is added to the data store
External entity
A person, organization, or system that is external to the system but interacts with it. Its name is noun.
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 4th Edition Copyright 2009 John 6 - 34
Data flow
arrow
Data store
Rectangle that are open on the right endq
External entity
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 4th Edition Copyright 2009 John 6 - 35
rectangle
Key Definition
Balancing involves insuring that information presented at one level of a DFD is accurately represented in the next level DFD.
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 4th Edition Copyright 2009 John
6 - 37
Level 0 diagram
Level 1 diagram
Level 2 diagram
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 4th Edition Copyright 2009 John
6 - 38
Context Diagram
First DFD in every business process Shows the overall business process as just one process (process 0) Shows all the external entities that receive information from or contribute information to the system No data stores Use Number 0
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 4th Edition Copyright 2009 John 6 - 39
Level 0 Diagram
Shows all the major processes that comprise the overall system the internal components of process 0 Shows how the major high-level processes are interrelated by data flows Shows external entities and the major processes with which they interact Adds data stores Use numbers 1, 2, 3..etc.
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 4th Edition Copyright 2009 John 6 - 40
Level 1 Diagrams
Generally, one level 1 diagram is created for every major process on the level 0 diagram Shows all the internal processes that comprise a single process on the level 0 diagram Shows how information moves from and to each of these processes If a parent process is decomposed into, for example, three child processes, these three child processes wholly and completely make up the parent process Use numbers 1.1, 1.2,etc. called children of level 0 (1,2,..etc.)
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 4th Edition Copyright 2009 John 6 - 41
Level 2 Diagrams
Shows all processes that comprise a single process on the level 1 diagram Shows how information moves from and to each of these processes Level 2 diagrams may not be needed for all level 1 processes Correctly numbering each process helps the user understand where the process fits into the overall system
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 4th Edition Copyright 2009 John 6 - 42
Summary of DFDs
Context Level 0 Level 1 Level 2
Process
all the internal processes that comprise a single process on the level 0 diagram
1.1, 1.2.. DS
0 w/o DS
1, 2, 3 With DS
6 - 44
Process Descriptions
To explain what the process does and provide additional information that the DFD does not provide.
Text-based process descriptions provide more information about the process than the DFD alone
If the logic underlying the process is quite complex, more detail may be needed in the form of
Structured English Decision trees Decision tables PowerPoint Presentation for
Dennis, Wixom, & Roth Systems Analysis and Design, 4th Edition Copyright 2009 John 6 - 45
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 4th Edition Copyright 2009 John
6 - 47
Review
Interviewing and/or JAD sessions; creating use cases; creating data flow. DFDs are usually created by the project team and reviewed by users for correctness Decomposing a DFD
means breaking complex processes into a structured set of detailed diagrams.
Balancing a DFD
means making sure that all information presented at one level is accurately represented in the next level.
DATA FLOW
E.g. Result of a query to a database, contents of a printed report : data that moves together to common destinations
SOURCE/SINK Origin and/or destination of the data. Often referred to as external entities as they are outside the system. We are only interested in how data flows in to or from the system to them.
Dos and Donts when constructing a Data Flow Diagram Miracle error - A process has no input data flows
2.0
B SINK
Payment
x.1
Coupon
x.2
6 - 57
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 4th Edition Copyright 2009 John
6 - 59
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 4th Edition Copyright 2009 John
fig_05_06
6 - 64
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 4th Edition Copyright 2009 John
6 - 65
6 - 66
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 4th Edition Copyright 2009 John
6 - 67
CD SELECTIONS
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 4th Edition Copyright 2009 John
5 - 68
CD SELECTIONS
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 4th Edition Copyright 2009 John
5 - 69
CD SELECTIONS
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 4th Edition Copyright 2009 John
5 - 70
CD SELECTIONS
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 4th Edition Copyright 2009 John
5 - 71
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 4th Edition Copyright 2009 John
6 - 72
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 4th Edition Copyright 2009 John
6 - 73
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 4th Edition Copyright 2009 John
6 - 74
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 4th Edition Copyright 2009 John
6 - 75
fig_05_12
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 4th Edition Copyright 2009 John
6 - 79
Check each external entity for: A unique name: noun; description At least one input or output data flow
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 4th Edition Copyright 2009 John
6 - 80
Decomposition: Every process is wholly and complete described by the processes on its children DFDs
Balance: Every data flow, data store, and external entity on a higher level DFD is shown on the lower level DFD that decomposes it No data stores or data flows appear on lower-lever DFDs that do not appear on their parent DFD
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 4th Edition Copyright 2009 John
6 - 81
Examine lowest level DFDs to ensure consistent decomposition Examine names carefully to ensure consistent use of terms
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 4th Edition Copyright 2009 John
6 - 82
Summary
The Data Flow Diagram (DFD) is an essential tool for creating formal descriptions of business processes. Use cases record the input, transformation, and output of business processes and are the basis for process models. Eliciting use cases and modeling business processes are critically important skills for the systems analyst to master.
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 4th Edition Copyright 2009 John 6 - 83
fig_05_06
fig_05_07a
fig_05_07b
fig_05_08
fig_05_09
fig_05_10