You are on page 1of 34

PROCESS MODELING

Definition
A “Simple” Process for
• A business process is a
Making Lunch
collection of activities
designed to produce a
specific output for a
particular customer or
market.
• It implies a strong
emphasis on how the
work is done within an
organization, in
contrast to a product
which focuses on what.
Definition
• A process is thus a specific ordering of work activities
across time and place, with a beginning, an end, and
clearly defined inputs and outputs: a structure for action.
Definition
• Process modeling is a technique for
organizing and documenting a system’s
processes, inputs, outputs and data stores.
• It is a formal way of representing how a
business operates. The main tool of process
modeling is Data Flow Diagram (DFD).
Example – Business Process Modeling (BPM)
For Example: Processing a customer’s order from an internet-
based mail order company involves:
• The customer placing an order (the customer need)
• Send IT-based information to the warehouse
• Sending IT-based information to the accounts department
• Generate of an invoice
• Stock picking
• Packing and recording
• Sending the appropriate IT-based information to the
distribution hub
• Allocate and organise shipment for the vehicle drivers
• Delivery of the item and invoicing (the customer need
fulfilled).
Key Terms
• Logical process models describe processes without suggesting
how they are conducted.
• Physical process models include information about how the
processes are implemented.
• Data model: is static; its main tool is Entity Relationship
Diagram (ERD).
• Process model: it is active; it shows motion, its main tool is
Data Flow Diagram (DFD).
• Decomposition is the process of modeling the system and its
components in increasing levels of detail.
• Balancing involves ensuring that information presented at one
level of a DFD is accurately represented in the next level DFD
System Models
Logical models show what a system ‘is’ or ‘does’.
 implementation-independent; that is, they
depict the system independent of any technical
implementation. As such, logical models
illustrate the essence of the system.
System Models
Physical models show not only what a system ‘is’ or
‘does’, but also how the system is physically and
technically implemented.

They are implementation-dependent because they


reflect technology choices, and the limitations of
those technology choices.
Why Process Modeling?
• It allows designers and users to focus on the business
aspects of systems;
• It is cheap and easy to modify, especially with the
assistance of CASE tools;
• The non-technical notation is easily understood by
business people; and
• DFDs allow isolation of parts of the system at any
chosen level of detail.
Data Flow Diagram (DFD)
• Data Flow Diagram shows business processes and the
data that flows between them.

• A DFD depicts the flow of data through a system and


the work or processing performed by that system.

• DFDs allow the analyst to determine:


– What does the organization do?
– How does the organization do it?
Essentials of DFDs
• They are purely logical not physical.
• They contain no implementation details.
• They are drawn first because they allow
designers and users to concentrate purely on
capturing business aspects.
• They are not contaminated by distractions of
technical details.
DFD Elements
There are four DFD elements (symbols).
• External Agent/Entity: It is depicted as a
rectangle.
– External agents provide the net inputs into a
system, and receive net outputs from a system.
– Nouns are usually used to name external agents.
– Note that the external agent does not perform
processing. Examples: Student, Customer, Client.
Data Flows
2. Data Flows: They are directed arrows.
– They can also be described as pipes.
– Data flows in packet through the pipes. One flow
arrow represents movement of multiple data
items.
– Data flow names should connote the actual
information.
Process
• Process: it is depicted by a rectangle with round edges.
– Data flows into the process, the “process” works on the
data flowing in it.
– The data flowing out has more value after it has been
worked on by the process.
– A process is always active. Examples: Create Student
Record, Calculate Purchase Cost, Register Client.
– Process name must contain verbs, and must not be
procedural,
E.g Add 1 to counter ------Procedural
Increment counter---------Process
Process cont’d
• You should be left only with logical processes that:
– Perform computations (e.g., calculate grade
point average)
– Make decisions (determine availability of
ordered products)
Process Name – Sort, filter or otherwise summarize data
(identify overdue invoices)
– Organize data into useful information (e.g.,
Gane & Sarson
Process Shape generate a report or answer a question)
– Trigger other processes (e.g., turn on the
furnace or instruct a robot)
– Use stored data (create, read, update or
delete a record)
4 Data store
• Data store: A dead, lifeless place to hold data over time.
– The data never changes in any way in the data store. In
naming data stores, avoid verbs and physical description of
how the data is stored. Examples: Student Master, Client
List.
Figure 1: Data Flow Diagram
Table 1: Summary of DFD elements and attributes
• There are different notations from various
bodies but for this course, we will be adopting
the Gane Sarson notation. This represents a
process as a rounded rectangle.
Decomposition of DFDs
• Functional decomposition is
the act of breaking a system
into its component
subsystems, processes and
sub processes.

• It is the iterative act of going


from one single system to
many component processes.
Each level of abstraction
reveals more or less details.
Decomposition of DFDs cont’d
• Decomposition diagram shows hierarchy; it shows
the top-down, functional decomposition of a
system, using a numbering scheme.
• When decomposing a DFD, you must conserve inputs
and outputs from processes at the next level of
decomposition. This is called Balancing.
Context Diagram
• It is also known as “Process 0”.
• All the functionality of the whole system is contained
within “Process 0”.
• Shows the context into which the business process
fits.
• Shows the overall business process as just one
process.
• Shows all the outside entities that receive
information from or contribute information to the
system.
Student info Lecturer Info
STUDENT LECTURER

Course Assigned
Registration slip COURSE
REGISRTATION Student info
Fee Status
SYSTEM

STUDENT
Course Info
COURSE Fee Status FINANCIAL
SYSTEM

Context Diagram for Course Registration System


Level 0 Diagram (DFD)

• A DFD that represents a system’s major


processes, data flows and data stores at a higher
level.
• Shows all the processes that comprise the overall
system.
• Shows how information moves from and to each
process.
• Adds data stores.
Student info 1 Course info 2 Registration Report
STUDENT

Student info Produce


Register Registration
report
Course

List Course
Offered STUDENT

COURSE

3
Lecturer Info
LECTURER
Courses Assigned
Course
Course Assigned

Fee status 4 Fee status STUDENT


FINANCIAL
Check Fee SYSTEM
Student info Student info
status

Level 0 DFD for Course Registration System


Level 1 Diagram (DFD)

• 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 diagram may not be needed for all level 0
processes.
Diagram 1
1.1 1.3

Course Choose
Assign
days and
rooms
times

Academic Offered course


department

1.2

Assign Offered course


Available faculty
faculty
Level 2 Diagram (DFD)

• 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.
Steps in creating DFDs
• Create a use case narrative: description of system.
• Create a Context Diagram that contains a single process
(“the system”) and all entities which share data with the
system.
• Explode the “parent” context diagram to produce a
Diagram 0 (“child”) DFD.
• Create Diagram 1, 2, …, n DFDs that represent
“explosions” of Diagram 0, 1, …, n-1 DFDs until a diagram
has only “primitive” processes .
• Create process descriptions to be implemented by
application programs: queries, macros, reports,
programming languages.
****Explosion Tips:

• All process names must be verb phrases


• Maintain organization’s viewpoint in naming
processes
• Layouts often place
– processes in the center
– inputs from the left
– outputs to the right
– stores beneath the processes
An unbalanced set of data flow diagrams
(a) Context diagram
(b) Level-0 diagram
Common Mechanical Errors
Membership
1.Black hole application
Employee

2.Miracle Bank statement

3.Gray hole
3.1.2 3.1.1
Existing account Generate an
Create a new
member account employee bank
statement
Employee
status
Employee address

Member Accounts Employees

3.1.3 Accounts
New account status Frozen account notification
Freeze member Receivable
account number Department
Illegal Data Flows
Illegal Corrected
data data
flows flows

a process is
needed to
B1 B2 B1 exchange data B1
flows between
boundaries

a process is
needed to
B1 DS1 B1 update (or DS1
use) a data
store

a process is
needed to
DS1 B1 DS1 present data B1
from a data
store

a process is
needed to
move data
DS1 DS2 DS1 DS2
from one data
store to
another
Validating DFDs

• Syntax errors: Ensure correct DFD structure


• Semantics errors: Ensure accuracy of DFD
relative to actual/desired business processes
• User walkthroughs
• Role-play processes
• Examine lowest level DFDs
• Examine names carefully

You might also like