You are on page 1of 31

IFS310: Week 3

BIS310: Structured
Analysis and Design

Process Modeling and


Data Flow Diagrams

12/09/19
IFS310: Week 3

Overview

• Discussion
– Systems Theory (Input-Process-Output)
– Process Modeling and Mechanics of DFDs
– Current System Process Modeling
– Future System Process Modeling

12/09/19
IFS310: Week 3

Systems Theory and Process


Concepts
– A System is a Process
• The simplest process model of a system is based on
inputs, outputs, and the system itself – viewed a
process.
• The process symbol defines the boundary of the
system.
• The system is inside the boundary; the environment
is outside that boundary.
• The system exchanges inputs and outputs with its
environment
12/09/19
IFS310: Week 3

input The output


input System output
input output
Process

Feeback and
Control Loop

The System's Environment


(constantly changing)

12/09/19
IFS310: Week 3
System Models
• Logical models show what a system ‘is’ or ‘does’. They are
implementation-independent; that is, they depict the system
independent of any technical implementation. As such, logical
models illustrate the essence of the system. Popular synonyms
include essential model, conceptual model, and business
model.
• 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. Synonyms include implementation model
and technical model

12/09/19
IFS310: Week 3

What is Process Modeling ?

• Process modeling is a technique for organizing and


documenting the structure and flow of data through a system’s
PROCESSES and/or the logic, policies, and procedures to be
implemented by a system’s PROCESSES.
• Process modeling originated in classical software engineering
methods.
• A systems analysis process model consists of data flow
diagrams (DFDs).
– A data flow diagram (DFD) is a tool that depicts the flow of
data through a system and the work or processing performed by
that system. Synonyms include bubble chart, transformation
graph, and process model.

12/09/19
IFS310: Week 3

Data Flow Diagram

• There are only three symbols and one connection:


– The rounded rectangles represent processes or work to
be done.
– The squares represent external agents – the boundary of
the system.
– The open-ended boxes represent data stores,
stores sometimes
called files or databases, and correspond to all instances
of a single entity in a data model.
– The arrows represent data flows,
flows or inputs and outputs,
to and from the processes.
12/09/19
IFS310: Week 3

Logical Processes
• You should be left only with logical processes that:
– Perform computations (e.g., calculate grade point
average)
– Make decisions (determine availability of ordered
Process Name products)
– Sort, filter or otherwise summarize data (identify
overdue invoices)
Gane & Sarson – Organize data into useful information (e.g., generate a
Process Shape 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)

12/09/19
IFS310: Week 3
Data Flows
– Data in Motion
• A data flow is data in motion.
– A data flow represents an input of data to a process, or the
output of data (or information) from a process. A data
flow is also used to represent the creation, deletion, or
update of data in a file or database (called a data store on
the DFD).
– A data flow is depicted as a solid-line with arrow.

Name of data-flow

Gane & Sarson


Data Flow Shape
12/09/19
IFS310: Week 3

System Concepts for Process


Modeling
• External Agents
– An external agent defines a person, organization unit, other
system, or other organization that lies outside of the scope of
the project, but which interacts with the system being studied.
External agents provide the net inputs into a system, and
receive net outputs from a system. Common synonyms include
external entity.

External Agent

Gane & Sarson


External Agent Shape
12/09/19
IFS310: Week 3

System Concepts for Process


Modeling
• Data Stores
– A data store is an ``inventory’’ of data. Synonyms
include file and database (although those terms are
too implementation-oriented for essential process
modeling).

D1 Data-store name

Gane & Sarson


Data Store Shape
12/09/19
IFS310: Week 3

Data Flow Diagramming Definitions

• Context Diagram
– A data flow diagram (DFD) of the scope of an
organizational system that shows the system
boundaries, external entities that interact with the
system and the major information flows between the
entities and the system
• Level-0 Diagram
– A data flow diagram (DFD) that represents a system’s
major processes, data flows and data stores at a high
level of detail
12/09/19
IFS310: Week 3

Decomposition of DFDs

• Functional decomposition
– Act of going from one single system to many
component processes
– Repetitive procedure

• Level-N Diagrams
– A DFD that is the result of n nested decompositions of
a series of subprocesses from a process on a level-0
diagram

12/09/19
IFS310: Week 3

Guidelines for Drawing DFDs

• Completeness
– DFD must include all components necessary
for system
– Each component must be fully described in the
project dictionary or CASE repository
• Consistency
– The extent to which information contained on
one level of a set of nested DFDs is also
included on other levels
12/09/19
IFS310: Week 3 Figure 3.2
An unbalanced set of data flow diagrams
(a) Context diagram
(b) Level-0 diagram

12/09/19
IFS310: Week 3

Common Mechanical Errors


Membership
application
Employee

Bank statement

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 Receivable
Freeze member
account number Department

12/09/19
IFS310: Week 3
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

12/09/19
IFS310: Week 3

Logical Processes
• Logical processes are work or actions that must be
performed no matter how you implement the system.
– Even for the future system, at the definition phase, the
process model should be logical.
• In the study phase, the current system was analyzed
in three levels of models:
– Context Diagram
– System Diagram
– Event Diagrams

12/09/19
IFS310: Week 3

Context Diagram

12/09/19
IFS310: Week 3

System Diagram

12/09/19
IFS310: Week 3

Event (Child) Diagram(s)

12/09/19
IFS310: Week 3

How to Model a New System

• Step 1: Identify the changes in functional


requirements for the new system
• Step 2: Establish the context for the new
system
• Step 3: Create a new system diagram
• Step 4: Create necessary child diagrams

12/09/19
IFS310: Week 3

Identify the changes in functional


requirements for the new system
• Source: Problem Statement (Cause/Effect)
• Prioritize the “System Objectives” based on the
urgency/importance of the effects
• Regroup the objectives into changes in functional
requirements
e.g.,
– Operational requirements,
– Reporting/Inquiry requirements

12/09/19
IFS310: Week 3

12/09/19
IFS310: Week 3

Establish the context for the new


system
• Analyze the new functional requirements in terms
of necessary input/output of data
i.e.,
• Is there any new input?
• Is it necessary to produce new output?
• Is it going to allow new functions to external
entities?

12/09/19
IFS310: Week 3
New Context Diagram

12/09/19
IFS310: Week 3

Create a new system diagram

• Principles for creating new DFD


– Keep the model simple
– Try to use data stores to connect all the processes
• Identify the functions that must be affected by the
new functional requirements
• Determine the boundary of the new system

12/09/19
IFS310: Week 3
New System Diagram

12/09/19
IFS310: Week 3

Create necessary child diagrams

• Explode each function to depict the flow of data


within the function
• A list of events within the function will be helpful
• Add necessary data stores

12/09/19
IFS310: Week 3
A New Event (Child) Diagram

12/09/19
IFS310: Week 3

Group Project (Assignment 2)

Objectives
– The goal for this assignment is having all
leveled data flow diagrams (logical). Do your
best to decompose the system (process) into as
detail as you can, using assumptions from your
common sense to the wildest imagination. You
may use Visio, or any other graphical
processors (e.g., Word, or PowerPoint) to create
the diagrams.
12/09/19

You might also like