04/18/23
IFS310: Week 3BIS310: Structured Analysis and Design
Process Modeling and Data Flow Diagrams
04/18/23
IFS310: Week 3
Overview
• Discussion– Systems Theory (Input-Process-Output)– Process Modeling and Mechanics of DFDs– Current System Process Modeling– Future System Process Modeling
04/18/23
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
04/18/23
IFS310: Week 3
The System's Environment (constantly changing)
The System Process
input output
Feeback and Control Loop
inputinput
outputoutput
04/18/23
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
04/18/23
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.
04/18/23
IFS310: Week 3
Data Flow Diagram
• There are only three symbols and one connection:– The rounded rectangles represent processesprocesses or work to
be done.
– The squares represent external agentsexternal agents – the boundary of the system.
– The open-ended boxes represent data storesdata stores, sometimes called files or databases, and correspond to all instances of a single entity in a data model.
– The arrows represent data flowsdata flows, or inputs and outputs, to and from the processes.
04/18/23
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 products)
– Sort, filter or otherwise summarize data (identify overdue invoices)
– Organize data into useful information (e.g., 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)
Gane & Sarson Process Shape
Process Name
04/18/23
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.
Gane & Sarson Data Flow Shape
Name of data-flow
04/18/23
IFS310: Week 3
• 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.
Gane & Sarson External Agent
Shape
System Concepts for Process Modeling
External Agent
04/18/23
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).
Gane & SarsonData Store
Shape
D1 Data-store name
04/18/23
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
04/18/23
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
04/18/23
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
04/18/23
IFS310: Week 3 Figure 3.2An unbalanced set of data flow diagrams
(a) Context diagram(b) Level-0 diagram
04/18/23
IFS310: Week 3
Common Mechanical Errors
3.1.2 Create a new
member account
3.1.1 Generate an
employee bank statement
3.1.3 Freeze member account number
Accounts Receivable Department
Employee
Member Accounts Employees
Existing account
New account status
Employee status
Frozen account notification
Employee address
Bank statement
Membership application
04/18/23
IFS310: Week 3Illegal Data Flows
B1 B2 B1 B1
B1 B1
B1 B1
DS1 DS2 DS1
a process is needed to
exchange data flows between
boundaries
a process is needed to update (or use) a data
store
a process is needed to
present data from a data
store
a process is needed to move data
from one data store to another
DS2
DS1
DS1 DS1
DS1
Illegal data flows
Corrected data flows
04/18/23
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
04/18/23
IFS310: Week 3
Context Diagram
04/18/23
IFS310: Week 3
System Diagram
04/18/23
IFS310: Week 3
Event (Child) Diagram(s)
04/18/23
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
04/18/23
IFS310: Week 3Identify 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
04/18/23
IFS310: Week 3
04/18/23
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?
04/18/23
IFS310: Week 3
New Context Diagram
04/18/23
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
04/18/23
IFS310: Week 3
New System Diagram
04/18/23
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
04/18/23
IFS310: Week 3A New Event (Child) Diagram
04/18/23
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.