1. Process Modeling - SIT KMUTT ProcessSpec Stu.pdf · of decomposition Balancing: ... 4.1...
Transcript of 1. Process Modeling - SIT KMUTT ProcessSpec Stu.pdf · of decomposition Balancing: ... 4.1...
1/68
Chapter 7Structuring System Process
Requirements
© 2011 by Prentice Hall: J.A.Hoffer et.al., Modern Systems Analysis & Design, 6th Edition 2/68
ContentUnderstand the logical (&physical) process modelingby using data flow diagrams (DFDs)Draw DFDs & LevelingBalance higher-level and lower-level DFDsExplain the differences among four types of DFDs: current physical, current logical, new physical, and new logicalUse DFDs as a tool to support the analysis of ISsDiscuss process modeling for e-Commerce applicationsProcess Description **
3/68
1. Process Modeling
4/68
Process Modeling (Cont.)
Graphically represent the processes that capture, manipulate, store, and distribute databetween a system and its environment and among system componentsUtilize information gathered during requirements determinationProcesses and data structures are modeled
5/68
1.1 Deliverable and OutcomeContext data flow diagram (DFD)
Scope of systemDFDs of current physical system
Adequate detail onlyDFDs of current logical system
Enables analysts to understand current systemDFDs of new logical system
Technology independentShow data flows, structure, and functional requirements of new system
DFDs of new physical systemDescription of each DFD component
6/68
2. Data Flow Diagramming MechanicsRepresent both physical and logical ISsOnly four symbols are used
7/68
Definitions and Symbols (Cont.)
Processwork or actions performed on data
Data storedata at rest (inside the system)
Source/sink (destination); terminator; actor; boundary external entity that is origin or destination of data (outside the system)
Data flowarrows depicting movement of data
8/68
Data Flow Diagramming Mechanics (Cont.)
Useful for depicting purely logical information flowsDFDs that detail physical systems differ from system flowcharts which depict details of physical computing equipment
9/68
Different between Sources/ Sinks and Processes
10/68
2.1 Developing DFDs: an Example
Context diagram is an overview of an organizational system that shows
the system boundariesexternal entities that interact with the systemMajor “information flows” between the entities and the system
Note: only one process symbol, and no data stores shown
11/68
Context Diagram
12/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
13/68
Level-0 Diagram
14/68
2.2 Data Flow Diagramming Rules
Two DFD guidelinesThe 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 namesEvery process has a unique name
15/68
Data Flow Diagramming Rules (Cont.)
16/68
Data Flow Diagramming Rules (Cont.)
17/68
B2
Illegal Data Flows
Whitten 18/68
2.3 Decomposition of DFDsFunctional decomposition is an iterative process of breaking a system description down into finer and finer detail
PROJECTGOAL
0
PHASE
2PHASE
3PHASE
1
ACTIVITY
2.2ACTIVITY
2.1ACTIVITY
2.3
TASK
2.2.2TASK
2.2.1TASK
2.2.3
19/68
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.
20/68
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) DFDs if necessary.
Balancing!!!
21/68
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.
Not Necessary for this level!!
22/68
2.4 Balancing DFDs
Conservation Principle: conserve inputs and outputs to a process at the next level of decompositionBalancing: conservation of inputs and outputs to a data flow diagram process when that process is decomposed to a lower level
23/68
Balancing DFDs (Cont.)
Balanced means (in general):Number of inputs to lower level DFD equals number of inputs to associated process of higher-level DFDNumber of outputs to lower level DFD equals number of outputs to associated process of higher-level DFD
24/68
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 input1 output
2 inputs1 output
25/68
Balancing DFDs (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 DFDThe DFD remains balanced because the same data is involved, but split into two parts
26/68
Balancing DFDs (Cont.)
27/68
Balancing DFDs: More DFD Rules
28/68
Exercise
Document your project requirements by usingContext diagram (scope)L-0 DFD (main activities)++ Leveling & Balancing ++ Process description
29/68
3. Four Different Types of DFDs
Current PhysicalProcess labels identify technology (people or systems) used to process the dataData flows and data stores identify actual name of the physical media
Current LogicalPhysical aspects of system are removed as much as possibleCurrent system is reduced to data and processes that transform them
30/68
Four Different Types of DFDs (Cont.)
New LogicalInclude additional functionsRemove obsolete functions Reorganize inefficient data flows
New PhysicalRepresents the physical implementation of the new system
31/68
System Development Model (Classical Model)
AS IS (Current)
1 Physical Model
2 Logical Model
TO BE (New)
4 Physical Model
3 Logical Model
32/68
4. Using Data Flow Diagram in the Analysis Process
4.1 Guidelines for Drawing DFDsCompleteness
DFD must include all components necessary for systemEach component must be fully described in the project dictionary or CASE repository
ConsistencyThe extent to which information contained on one level of a set of nested DFDs is also included on other levels
33/68
Guidelines for Drawing DFDs (Cont.)
TimingTime is not represented well on DFDsBest to draw DFDs as if the system has never started and will never stop
Iterative DevelopmentAnalyst should expect to redraw diagram several times before reaching the closest approximation to the system being modeled
34/68
Primitive DFDs
Lowest logical level of decompositionDecision has to be made when to stop decomposition…
35/68
Rules for stopping decompositionWhen each process has been reduced to a single decision, calculation or database operationWhen each data store represents data about a single entityWhen each user does not care to see any more detailWhen every data flow does not need to be split further to show that data are handled in various waysWhen you believe that you have shown each business form or transaction, online display and report as a single data flowWhen you believe that there is a separate process for each choice on all lowest-level menu options
36/68
4.2 Using DFDs 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
37/68
4.3 Using DFDs in BPR
FIGURE 7-16IBM Credit Corporation’s primary work process before BPR(Source: Based on Hammer and Champy, 1993.) 38/68
Using DFDs in BPR (Cont.)
FIGURE 7-17IBM Credit Corporation’s primary work process after BPR(Source: Based on Hammer and Champy, 1993.)
39/68
5. e-Commerce Application: Process Modeling using Data Flow Diagram
Process modeling for Pine Valley Furniture’s WebstoreCompleted JAD sessionBegan translating the Webstore system structure into data flow diagram
Identified six high-level processes
40/68
e-Commerce Application: Process Modeling using Data Flow Diagrams (Cont.)
41/68
e-Commerce Application: Process Modeling using Data Flow Diagrams (cont.)
Figure 7-22 Level-0 data flow diagram for the WebStore42/68
6. Process Description Use Structured English as a tool for representing steps in logical processes in DFDsUse decision tables to represent the logic of choice in conditional statementsSelect among Structured English and decision tables for representing processing logicUnderstand 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
43/68
Logic Modeling: process description
Data flow diagrams (DFDs) do not show the logic inside the processesLogic modeling involves representing internal structure and functionality of processes depicted on a DFDLogic modeling can also be used to show when processes on a DFD occur
44/68
Deliverable and Outcome
Structured English representation of process logicDecision Tables representationOOT
Interaction diagram Sequence diagram & Communication diagramActivity diagram
Plus: decision tree & flowchart
45/68
Structured English
Structured English: modified form of English language used to specify the logic of IS processesTypically relies on action verbs and noun phrases and contains no adjectives or no specific standards
46/68
Structured English
47/68
Structured English
48/68
Structured English Constructs (Part 1)
Whitten
49/68
Structured English Constructs (Part 2)
50/68
Process Description: Modeling Logic * * * Process #: Process NameDescription: .......................Created Date: .....................
InputActor
form…P#: ...
attribute, ...D#: ...
(attribute, ...)
OutputActor
report…P#: ...
attribute, ...D#: ...
(attribute, ...)
Tasks and Activities (show logic not brief description)Use:
•Structured English or•Activity diagram•Flowchart•Decision table/ tree •etc.
P# process
boundary
outp
ut
inpu
t
D# data store
p p
51/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 actionsBest used for complicated decision logic
52/68
Decision Table
1
2
3
53/68
Decision Table
Condition stubs: list conditions that relevant to the decisionAction stubs: list actions that result for a given set of conditionsRules: define which actions are to be followed for a given set of conditions
54/68
Modeling Logic with Decision Table
55/68
Logic Modeling (Cont.)
56/68
Logic Modeling (Cont.)
57/68
SummaryUnderstand the logical process modeling by using data flow diagrams (DFDs)Draw DFDs & LevelingBalance higher-level and lower-level DFDsExplain the difference among four types of DFDs: current physical, current logical, new physical, and new logicalProcess Description
58/68
Questions & Answers
59/68
Exercise
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?
60/68
Case Study
A simple banking system1 Open new a/c2 Deposit and withdraw3 Close a/cDraw the context diagram and DFD of this
simple banking system.
61/68
Main ActivityNew customers are registered; and accounts are closed by bank managerWhen accounts are closed, customers are notified by a systemCash deposits into an account are made by the customer, and salary are paid by the employerThe bank clerk performs a balance check before allowing a withdrawal by a customer at the bank counter
List of System Logical ElementsWichian 62/68
List of system logical elements
Wichian
63/68
Context Diagram :A simple banking system
Wichian 64/68
Data Flow Diagram : a simple banking system
Wichian
65/68
Data Flow Diagram : a simple banking system
Wichian 66/68Wichian
67/68
Problems of System Development
Poor system thinkingPoor system integrationPoor verifying the model
Finding missing algorithmSyntax checkingTracing data elementCross-referencingTracing objective
68/68
Physical Data Flow Diagrams (PDFDs)
Technical and human decisions to be implemented as part of an information system
69/68
Example: Classify the following aspects into functional (F), non-functional (NF), or not be a requirement.
1. How information about flights, passengers and booking are entered.
2. What information appears on tickets and reports.
3. How fares are calculated.4. What information must be stored in the
database that travel agents and others access.5. The system should be designed so it can be
extended to handle a frequent flier plan.6. The system must be available at all times.
Only 2 minutes downtime a week is to be permitted.
7. A “merge sort” algorithm must be used to sort the flights by departure time.