Date post: | 20-Dec-2015 |
Category: |
Documents |
View: | 278 times |
Download: | 3 times |
Structuring System Process Requirements
-- Process Modeling --
© 2008 by Prentice Hall 2Chapter 7
Learning Objectives
Understand the logical modeling of processes by studying examples of data flow diagrams (DFDs).
Draw data flow diagrams following specific rules and guidelines that lead to accurate and well-structured process models.
Decompose data flow diagrams into lower-level diagrams.
Balance higher-level and lower-level data flow diagrams. Explain the differences among four types of DFDs:
current physical, current logical, new physical, and new logical.
Use data flow diagrams as a tool to support the analysis of information systems.
© 2008 by Prentice Hall 3Chapter 7
Process Modeling Graphically represent the processes that
capture, manipulate, store, and distribute data between a system and its environment and among system components.
Utilize information gathered during requirements determination.
Illustrates the activities that are performed and how data moves among them
Processes and data structures are modeled.
DATA FLOW DIAGRAMS (DFD)
Technique for creating process models
© 2008 by Prentice Hall 5Chapter 7
Data Flow Diagram
Represent both physical and logical information systems.
Only four symbols are used. Useful for depicting purely logical
information flows. DFD that detail physical systems differ
from system flowcharts which depict details of physical computing equipment.
A simple process for making lunch
© 2008 by Prentice Hall 7Chapter 7
DFD Elements
© 2008 by Prentice Hall 8Chapter 7
DFD Elements
Process: work or actions performed on data (inside the system).
Data store: data at rest (inside the system).
Source/sink: external entity that is origin or destination of data (outside the system).
Data flow: arrows depicting movement of data.
DFD Elements
Process An activity or function
performed for a specific business reason
Manual or computerized Data flow
A single piece of data or a logical collection of data
Always starts or ends at a process
DFD Elements
Data Store A collection of data that is
stored in some way Data flowing out is retrieved
from the data store Data flowing in updates or is
added to the data store Source (External entity)
A person, organization, or system that is external to the system but interacts with it.
Naming and Drawing DFD Elements
Process
Data flow
Data store
Source (externalEntity)
Depicting Business Processes with DFDs Business processes are too complex to be
shown on a single DFD Decomposition is the process of
representing the system in a hierarchy of DFD diagrams Child diagrams show a portion of the
parent diagram in greater detail Balancing involves insuring that information
presented at one level of a DFD is accurately represented in the next level DFD.
Relationship Among DFD levelsContext diagram
Level 0 diagram
Level 1 diagram
Level 2 diagram
• DecompositionDecomposition
• BalancingBalancing
Context Diagram First DFD in every business process Shows the overall business process as just one
process (process 0) Context diagram is an overview of an
organizational system that shows: the system boundaries; external entities that interact with the
system; Major information flows between the entities
and the system. Note: only one process symbol, and no data stores shown.
© 2008 by Prentice Hall 14Chapter 7
Context Diagram
© 2008 by Prentice Hall 15Chapter 7
Level-0 Diagram
Level-0 diagram is a data flow diagram that represents a system’s major processes, data flows, and data stores at a high level of detail.Processes are labeled 1.0, 2.0, etc.
These will be decomposed into more primitive (lower-level) DFDs.
© 2008 by Prentice Hall 16Chapter 7
Level 0 Diagram Shows all the major processes that comprise the overall
system – the internal components of process 0 Shows how the major processes are interrelated by data flows Shows external entities and the major processes with which
they interact Adds data stores Example: DFD Level 0
Level-0 Diagram
© 2008 by Prentice Hall 18Chapter 7
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
© 2008 by Prentice Hall 20Chapter 7
Level-1 DFD
Level-1 DFD shows the sub-processes of one of the processes in the Level-0 DFD.
This is a Level-1 DFD for Process 4.0.
Processes are labeled 4.1, 4.2, etc. These can be further decomposed in more primitive (lower-level) DFD if necessary.
© 2008 by Prentice Hall 21Chapter 7
Level-n DFD
Level-n DFD shows the sub-processes of one of the processes in the Level n-1 DFD.
This is a Level-2 DFD for Process 4.3.
Processes are labeled 4.3.1, 4.3.2, etc. If this is the lowest level of the hierarchy, it is called a primitive DFD.
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
Relationship Among DFD levelsContext diagram
Level 0 diagram
Level 1 diagram
Level 2 diagram
.
.
.Level-n diagram
© 2008 by Prentice Hall 25Chapter 7
DFD Rules There are two DFD
guidelines that apply: The inputs to a
process are different from the outputs of that process.
Processes purpose is to transform inputs into outputs.
Objects on a DFD have unique names.
Every process has a unique name.
© 2008 by Prentice Hall 26Chapter 7
Decomposition of DFD
Functional decomposition is an iterative process of breaking a system description down into finer and finer detail.Creates a set of charts in which one process
on a given chart is explained in greater detail on another chart.
Continues until no sub-process can logically be broken down any further.
© 2008 by Prentice Hall 27Chapter 7
Decomposition of DFD (Cont.)
Primitive DFD is the lowest level of a DFD.
Level-1 diagram results from decomposition of Level-0 diagram.
Level-n diagram is a DFD diagram that is the result of a n nested decompositions from a process on a level-0 diagram.
© 2008 by Prentice Hall 28Chapter 7
Balancing DFD
Conservation Principle: conserve inputs and outputs to a process at the next level of decomposition.
Balancing: conservation of inputs and outputs to a data flow diagram process when that process is decomposed to a lower level.
Balanced means: Number of inputs to lower level DFD equals number
of inputs to associated process of higher-level DFD Number of outputs to lower level DFD equals
number of outputs to associated process of higher-level DFD
© 2008 by Prentice Hall 29Chapter 7
Balancing DFDs (Cont.)
This is unbalanced because the process of the context diagram has only one input but the Level-0 diagram has two inputs.
1 input
1 output
2 inputs
1 output
© 2008 by Prentice Hall 30Chapter 7
Balancing DFD (Cont.)
Data flow splitting is when a composite data flow at a higher level is split and different parts go to different processes in the lower level DFD.
The DFD remains balanced because the same data is involved, but split into two parts.
Balancing DFD (Cont.)
© 2008 by Prentice Hall 31Chapter 7
© 2008 by Prentice Hall 32Chapter 7
Balancing DFD: More DFD Rules
CREATING DATA FLOW DIAGRAMS
Steps in Building DFDs
Build the context diagramCreate DFD fragments for each activityOrganize DFD fragments into level 0 diagramDecompose level 0 processes into level 1 diagrams as needed; decompose level 1 processes into level 2 diagrams as needed; etc.Validate DFDs with user to ensure completeness and correctness
Build 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
A Context Diagram Example
Creating DFD Fragments
Each activity is converted into one DFD fragment Change process name into verb phrase Design the processes from the viewpoint of the
organization running the system Add data flows to show use to data stores as
sources and destinations of data Layouts typically place
processes in the center inputs from the left outputs to the right stores beneath the processes
A DFD Fragment Example
Creating the Level 0 Diagram
Combine the set of DFD fragments into one diagram
Generally move from top to bottom, left to right
Minimize crossed lines Iterate as needed
DFDs are often drawn many times before being finished, even with very experienced systems analysts
A Level 0 DFD Example
Creating Level 1 Diagrams (and Below) Each use case is turned into its own DFD Inputs and outputs 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 Level 1 Diagrams (and Below) Input data flows shown on a parent DFD are
often unbundled on the child diagram using splits
Output data flows shown on a child DFD are often bundled using joins and shown as a larger data flow on the parent diagram
When to stop decomposing DFDs? Ideally, a DFD has at least 3 processes and no
more than 7-9.
Validating the DFD
Syntax errors – diagram follows the rulesAssure correct DFD structure
For each DFD:Check each process for:
A unique name: action verb phrase; number; descriptionAt least one input data flowAt least one output data flowOutput data flow names usually different than input data flow namesBetween 3 and 7 processes per DFD
Validating the DFDFor each DFD:Check each data flow for:A unique name: noun; descriptionConnects to at least one processShown in only one direction (no two-headed arrows)A minimum number of crossed lines
Check each data store for:A unique name: noun; descriptionAt least one input data flowAt least one output data flow
Check each external entity for:A unique name: noun; descriptionAt least one input or output data flow
Validating the DFD
Across DFDs:Context Diagram:Every set of DFDs must have one Context DiagramDecomposition:
Every process is wholly and complete described by the processes onits children DFDsBalance:
Every data flow, data store, and external entity on a higher level DFD is shown on the lower level DFD that decomposes itNo data stores or data flows appear on lower-lever DFDs that do not appear on their parent DFD
Validating the DFD
Semantics errors – diagram conveys correct meaningAssure accuracy of DFD relative to
actual/desired business processes To verify correct representation, use
User walkthroughsRole-play processes
Examine lowest level DFDs to ensure consistent decomposition
Examine names carefully to ensure consistent use of terms
© 2008 by Prentice Hall 47Chapter 7
Four Different Types of DFD
Current Physical Process labels identify technology (people or
systems) used to process the data. Data flows and data stores identify actual name of
the physical media. Current Logical
Physical aspects of system are removed as much as possible.
Current system is reduced to data and processes that transform them.
© 2008 by Prentice Hall 48Chapter 7
Four Different Types of DFD (Cont.) New Logical
Includes additional functions.Obsolete functions are removed.Inefficient data flows are reorganized.
New PhysicalRepresents the physical implementation
of the new system.
© 2008 by Prentice Hall 49Chapter 7
Guidelines for Drawing DFD (Cont.) Completeness
DFD must include all components necessary for system.
Consistency The extent to which information contained on one
level of a set of nested DFDs is also included on other levels.
Timing Time is not represented well on DFDs. Best to draw DFDs as if the system has never
started and will never stop.
© 2008 by Prentice Hall 50Chapter 7
Guidelines for Drawing DFD (Cont.)
Iterative DevelopmentAnalyst should expect to redraw diagram
several times before reaching the closest approximation to the system being modeled.
Primitive DFDsLowest logical level of decomposition.Decision has to be made when to stop
decomposition.
© 2008 by Prentice Hall 51Chapter 7
Guidelines for Drawing DFD (Cont.) Rules for stopping decomposition
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, online 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.
© 2008 by Prentice Hall 52Chapter 7
Using DFD as Analysis Tools
Gap Analysis is the process of discovering discrepancies between two or more sets of data flow diagrams or discrepancies within a single DFD.
Inefficiencies in a system can often be identified through DFDs.
Example: A Video Sales System - step by stepThe system accepts video orders from customers. These customer orders are checked against a video file (i.e. title and distributor match etc) to ensure they are correct. Also, another file is used to check the customers credit worthiness.
Once a valid order is received it is stored in a pending order file, until a batch of orders is assembled to be sent to a specific distributor.
Each distributor send a delivery note with the video and this is checked with the customer order. Videos are then delivered with a delivery note to the customer. An invoice is also sent for all the orders that a customer has been sent. a copy of this is sent is stored for use by the accounts department. Payment is outside the scope of this investigation.
Context Diagram
0
A Video Sales
System: ProcessProcessOrdersOrders
Customer
Distributorcustomer order
Purchase order
delivery note, invoice
delivery note
DFD Level 0
Customer
VerifyOrderValid
1.0
D2 Customer Data
D1 Video File
Video details
customerorder
D3 Pending Orders
CreatePurchaseOrders
2.0
validcustomerorder
Distributor
purchaseorder
batched order
AssembleCustomerOrders
3.0
creditstatus
invoice
VideoOrder details
D4 Distributor file
Distributor details
delivery notedelivery note
address
DFD Level 1 (Process 3.0)
D3 Pending Orders
Videoorderdetails
Distributor
Assigndelivery topendingorders
3.1
delivery note
Customer
CreateInvoice
3.3
VerifyCorrectDelivery
3.2
D5 A/c Receivable
invoice copy
invoice
detailsof indiv.orders
assembledorders
CreateDeliveryNote
3.4Del. note
assembledorders
D6 Customer Data
Customer details
An example -- Electronic Commerce Application: Process Modeling using DFD
© 2008 by Prentice Hall 57Chapter 7
Figure 7-19 Level-0 data flow diagram for the WebStore
© 2008 by Prentice Hall 58Chapter 7
Deliverables and Outcomes
Context data flow diagram (DFD)Scope of system.
DFD of current physical systemAdequate detail only.
DFD of current logical systemEnables analysts to understand
current system.
© 2008 by Prentice Hall 59Chapter 7
Deliverables and Outcomes (Cont.)
DFD of new logical systemTechnology independent.Show data flows, structure, and
functional requirements of new system.
Thorough description of each DFD component
© 2008 by Prentice Hall 60Chapter 7
Summary In this chapter you learned how
to:Understand logical process modeling
via data flow diagrams (DFDs).Draw data flow diagrams of well
structured process models.Decompose data flow diagrams into
lower-level diagrams.
© 2008 by Prentice Hall 61Chapter 7
Summary (Cont.)Balance high-level and low-level data
flow diagrams.Explain differences between current
physical, current logical, new physical, and new logical data flow diagrams.
Use data flow diagrams for analyzing information systems.