1. Process Modeling Process Modeling (Cont.)

advertisement
Content
9
Chapter 7
Structuring System Process
Requirements
9
9
9
9
9
9
© 2011 by Prentice Hall: J.A.Hoffer et.al., Modern Systems Analysis & Design, 6th Edition
Understand the logical (&physical) process modeling
by using data flow diagrams (DFDs)
Draw DFDs & Leveling
Balance higher-level and lower-level DFDs
Explain the differences among four types of DFDs:
current physical, current logical, new physical, and
new logical
Use DFDs as a tool to support the analysis of ISs
Discuss process modeling for e-Commerce
applications
Process Description **
1/68
1. Process Modeling
2/68
Process Modeling (Cont.)
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
„ Processes and data structures are modeled
„
3/68
4/68
2. Data Flow Diagramming Mechanics
1.1 Deliverable and Outcome
„
… Scope
„
DFDs of current physical system
detail only
DFDs of current logical system
… Enables
„
both physical and logical ISs
„ Only four symbols are used
of system
… Adequate
„
„ Represent
Context data flow diagram (DFD)
analysts to understand current system
DFDs of new logical system
… Technology
independent
… Show data flows, structure, and functional requirements of
new system
„
„
DFDs of new physical system
Description of each DFD component
5/68
Definitions and Symbols (Cont.)
„
„
„ Useful
for depicting purely logical
information flows
„ DFDs that detail physical systems differ
from system flowcharts which depict
details of physical computing equipment
or actions performed on data
Data store
… data
„
Data Flow Diagramming Mechanics (Cont.)
Process
… work
at rest (inside the system)
Source/sink (destination); terminator; actor; boundary
… external
entity that is origin or destination of data
(outside the system)
„
6/68
Data flow
… arrows
depicting movement of data
7/68
8/68
Different between Sources/ Sinks and
Processes
2.1 Developing DFDs: an Example
„
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
9/68
Context Diagram
10/68
Developing DFDs (Cont.)
„
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.
… Leveling & Balancing
11/68
12/68
Level-0 Diagram
2.2 Data Flow Diagramming Rules
„ Two
DFD guidelines
…The
inputs to a process are different from
the outputs of that process
„ Processes
purpose is to transform inputs into
outputs
…Objects
„ Every
on a DFD have unique names
process has a unique name
13/68
Data Flow Diagramming Rules (Cont.)
14/68
Data Flow Diagramming Rules (Cont.)
15/68
16/68
Illegal Data Flows
2.3 Decomposition of DFDs
„
B2
Functional decomposition is an iterative
process of breaking a system description down
into finer and finer detail
0
PROJECT
GOAL
Whitten
1
2
3
PHASE
PHASE
PHASE
2.1
2.2
2.3
ACTIVITY
ACTIVITY
ACTIVITY
2.2.1
2.2.2
2.2.3
TASK
TASK
TASK
17/68
18/68
Level-1 DFD
Decomposition of DFDs (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.
„
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
Balancing!!!
Processes are labeled 4.1, 4.2, etc. These can be further
decomposed in more primitive (lower-level) DFDs if necessary.
19/68
20/68
Level-n DFD
2.4 Balancing DFDs
„ Conservation
Level-n DFD shows
the sub-processes
of one of the
processes in the
Level n-1 DFD.
Not Necessary for this level!!
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.
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
21/68
Balancing DFDs (Cont.)
Balancing DFDs (Cont.)
„ Balanced
22/68
means (in general):
…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
23/68
1 input
1 output
2 inputs
1 output
This is
unbalanced
because the
process of the
context diagram
has only one
input but the
Level-0 diagram
has two inputs.
24/68
Balancing DFDs (Cont.)
„ Data
Balancing DFDs (Cont.)
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
25/68
Balancing DFDs: More DFD Rules
26/68
Exercise
„
Document your project requirements by using
… Context
diagram (scope)
… L-0 DFD (main activities)
… ++ Leveling & Balancing
… ++ Process description
27/68
28/68
3. Four Different Types of DFDs
„
Four Different Types of DFDs (Cont.)
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
… Include
additional functions
… Remove obsolete functions
… Reorganize inefficient data flows
„
… Physical
aspects of system are removed as much as
possible
… Current system is reduced to data and processes that
transform them
New Logical
New Physical
… Represents
the physical implementation of the new
system
29/68
System Development Model
(Classical Model)
AS IS (Current)
30/68
4. Using Data Flow Diagram in the
Analysis Process
4.1 Guidelines for Drawing DFDs
TO BE (New)
… Completeness
1 Physical Model 4 Physical Model
DFD must include all components necessary for system
„ Each component must be fully described in the project
dictionary or CASE repository
„
… Consistency
2 Logical Model
3 Logical Model
„
31/68
The extent to which information contained on one level
of a set of nested DFDs is also included on other levels
32/68
Guidelines for Drawing DFDs (Cont.)
„
Primitive DFDs
Timing
Lowest logical level of decomposition
„ Decision has to be made when to stop
decomposition…
„
… Time
is not represented well on DFDs
… Best to draw DFDs as if the system has never
started and will never stop
„
Iterative Development
… Analyst
should expect to redraw diagram several
times before reaching the closest approximation to
the system being modeled
33/68
Rules for stopping decomposition
„
„
„
„
„
„
34/68
4.2 Using DFDs as Analysis Tools
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 each 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
35/68
„
Gap Analysis is the process of discovering
discrepancies between two or more sets of data
flow diagrams or discrepancies within a single
DFD
36/68
4.3 Using DFDs in BPR
FIGURE 7-16
IBM Credit Corporation’s primary work process before BPR
(Source: Based on Hammer and Champy, 1993.)
Using DFDs in BPR (Cont.)
37/68
FIGURE 7-17
IBM Credit Corporation’s primary work process after BPR
(Source: Based on Hammer and Champy, 1993.)
38/68
e-Commerce Application: Process Modeling using
Data Flow Diagrams (Cont.)
5. e-Commerce Application: Process
Modeling using Data Flow Diagram
Process modeling for Pine Valley Furniture’s
Webstore
„ Completed JAD session
„ Began translating the Webstore system
structure into data flow diagram
„
… Identified
six high-level processes
39/68
40/68
e-Commerce Application: Process Modeling using
Data Flow Diagrams (cont.)
6. Process Description
Figure 7-22 Level-0 data flow diagram for the WebStore
41/68
9
Use Structured English as a tool for representing
steps in logical processes in DFDs
9
Use decision tables to represent the logic of
choice in conditional statements
9
Select among Structured English and decision
tables for representing processing logic
9
Understand how logic modeling techniques
apply to the development of your project study
© 2011 by Prentice Hall: J.A.Hoffer et.al., Modern Systems Analysis & Design, 6th Edition
Logic Modeling: process description
Deliverable and Outcome
Data flow diagrams (DFDs) do not show the
logic inside the processes
„ Logic modeling involves representing internal
structure and functionality of processes
depicted on a DFD
„ Logic modeling can also be used to show when
processes on a DFD occur
„
„
Structured English representation of process
logic
„ Decision Tables representation
„ OOT
diagram Æ Sequence diagram &
Communication diagram
… Activity diagram
… Interaction
„
43/68
42/68
Plus: decision tree & flowchart
44/68
Structured English
Structured English
Structured English: modified form of English
language used to specify the logic of IS
processes
„ Typically relies on action verbs and noun
phrases and contains no adjectives or no
specific standards
„
45/68
Structured English
46/68
Structured English Constructs (Part 1)
47/68
Whitten
48/68
Structured English Constructs (Part 2)
Process Description: Modeling Logic * * *
Process #: Process Name
Description: .......................
Created Date: .....................
p
P#
process
Tasks and Activities (show logic Æ not brief description)
p
input
Output
Actor
report…
P#: ...
attribute, ...
D#: ...
(attribute, ...)
output
Input
Actor
form…
P#: ...
attribute, ...
D#: ...
(attribute, ...)
D# data store
Use:
•Structured English or
•Activity diagram
•Flowchart
•Decision table/ tree
•etc.
boundary
49/68
Decision Table
50/68
Decision Table
Decision table: a matrix representation of the
logic of a decision which specifies the possible
conditions for the decision and the resulting
actions
„ Best used for complicated decision logic
„
3
1
2
51/68
52/68
Modeling Logic with Decision Table
Decision Table
Condition stubs: list conditions that relevant to
the decision
„ Action stubs: list actions that result for a given
set of conditions
„ Rules: define which actions are to be followed
for a given set of conditions
„
53/68
Logic Modeling (Cont.)
54/68
Logic Modeling (Cont.)
55/68
56/68
Summary
Questions & Answers
Understand the logical process modeling by
using data flow diagrams (DFDs)
9 Draw DFDs & Leveling
9 Balance higher-level and lower-level DFDs
9 Explain the difference among four types of
DFDs: current physical, current logical, new
physical, and new logical
9 Process Description
9
57/68
Exercise
58/68
Case Study
What is a data flow diagram? Why do system
analysts use data flow diagrams (DFDs)?
„ Explain the rules of drawing good DFDs.
„ What unique rules apply to drawing context
diagram?
„
A simple banking system
1 Open new a/c
2 Deposit and withdraw
3 Close a/c
Draw the context diagram and DFD of this
simple banking system.
59/68
60/68
Main Activity
„
New customers are registered; and accounts are
closed by bank manager
„
When accounts are closed, customers are notified
by a system
Cash deposits into an account are made by the
customer, and salary are paid by the employer
The bank clerk performs a balance check before
allowing a withdrawal by a customer at the bank
counter
„
„
List of system logical
elements
List of System Logical Elements
Wichian
61/68
Wichian
62/68
Data Flow Diagram : a simple banking system
Context Diagram :
A simple banking system
Wichian
63/68
Wichian
64/68
Data Flow Diagram : a simple banking system
Wichian
65/68
Wichian
66/68
Physical Data Flow Diagrams (PDFDs)
Problems of System Development
Technical and human decisions to be implemented
as part of an information system
Poor system thinking
„ Poor system integration
„ Poor verifying the model
„
… Finding
missing algorithm
… Syntax checking
… Tracing data element
… Cross-referencing
… Tracing objective
67/68
68/68
Example: Classify the following aspects into functional
(F), non-functional (NF), or not be a requirement.
1.
2.
3.
4.
5.
6.
7.
How information about flights, passengers
and booking are entered.
What information appears on tickets and
reports.
How fares are calculated.
What information must be stored in the
database that travel agents and others access.
The system should be designed so it can be
extended to handle a frequent flier plan.
The system must be available at all times.
Only 2 minutes downtime a week is to be
permitted.
A “merge sort” algorithm must be used to
sort the flights by departure time.
69/68
Download