0% found this document useful (0 votes)
34 views11 pages

ER2 - DFDs

The document discusses process modeling and data flow diagrams (DFDs). It describes how DFDs can be used to model functional requirements by graphically representing data flows between external entities, processes, and data stores. The document outlines different types of DFDs (e.g. current/new logical and physical) and DFD notations from different authors. It also discusses how to manage complexity through decomposition and leveling of DFDs, and provides an example of drawing a DFD for a distance education system.

Uploaded by

mohammed ashraf
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
34 views11 pages

ER2 - DFDs

The document discusses process modeling and data flow diagrams (DFDs). It describes how DFDs can be used to model functional requirements by graphically representing data flows between external entities, processes, and data stores. The document outlines different types of DFDs (e.g. current/new logical and physical) and DFD notations from different authors. It also discusses how to manage complexity through decomposition and leveling of DFDs, and provides an example of drawing a DFD for a distance education system.

Uploaded by

mohammed ashraf
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 11

Systems Analysis and Design- 1#

Chapter 5
Data and Process Modeling

Process (Functional) Modeling


Process modeling involves graphically representing the processes that capture,
manipulate, store, and distribute data:
between a system and its environment
among components within a system [Source: Hoffer et
al., 2001]

Use information (functional and data requirements) discovered during requirements


elicitation.

Process (Functional) Modelling


Data flow analysis using data flow diagrams (DFDs) is the technique used in the
traditional approach to analysis and design.

Result of process modeling:


a set of coherent, complete, consistent, and interrelated data flow diagrams.

Data Flow Diagrams (DFD)


A network representation of a system. That is, a diagram containing nodes connected
by directed links. It is graphically illustration of the data movement between
different elements of a system.
Useful:
for showing the inter-relationships among different processes.
for indicating the data inputs and outputs for each process within the system.
They assist:
in breaking the system down into identifiable and well-defined processes.
in validating the analyst's understanding of the system.

Where do Data Flow Diagrams Fit?


Model functional (process) requirements identified during requirements analysis.
Describe what the proposed system will do not how.
Can be transformed into pseudo code, decision trees, code, forms, etc.

Types of Data Flow Diagrams


Current physical:
physical aspects and technology identified.

Current logical:
reduced to essence, ignores physical implementation.

New logical:
similar to current logical but represents new system (can be same).

New Physical:
represents physical implementation of new system.

Yourdon & Coad or Gane & Sarson defining different visual representations for
processes, data stores, data flow and external entities.

Yourdon and Coad type data flow diagrams are usually used for system analysis and
design, while Gane and Sarson type DFDs are more common for visualizing information
systems.
Types of Data Flow Diagrams Notations

Gane-Sarson
DeMarco-Yourdon
Process
Process Number
Process Description
Process Number
Process Description
Process Place
Processes transform incoming data flow(s) into outgoing data flow(s)
Data flows must be modified in some way.
Labeled with a name (verb) indicating nature of transformation(s).
Also labeled with a number indicating position in DFD hierarchy.
8

Gane-Sarson
DeMarco-Yourdon
Entity
Entity Name
Entity Name
External entities
“is a person or organization, lying outside the context of a system, that is a net
originator or receiver of system data” [Source: DeMarco, 1979]
Depicts origin and/or destination of data.
Often referred to as sources and sinks.
Anything flowing into the system must end up either in a data store or out of the
system at a sink.
Labeled with a noun.

Source: is an external entity that are the origin of


data flow
Sink : is an external entity that are the
destination of data flow

Data Flow
Data Name
Data Name
Gane-Sarson
DeMarco-Yourdon
Depict data in motion and are shown as named and directed links connecting
external entities, data stores, and processes.

Knowing the composition of the packets (data items), the origin, and the
destination of a data flow is fundamental to the preparation of a DFD.

Pairs of elements may be connected by more than one data flow.

A data flow has a noun phrase label


10

Data Store
Data Store Name
Data Store Symbol
Data Store Symbol
Data Store Name
Gane-Sarson
DeMarco-Yourdon
Depict data at rest.
Temporary repositories for data.
Real world examples include:
memory
data bases
Names of data stores are important and should be nouns.

11

Process
Process Number
Process Description
Process Place
Rules
No process can have only outputs (a miracle)
No process can have only inputs (black hole)
A process has a verb phrase label
12

Process(ONE INPUT-Multi output)

Process Number
Process Description
Process Place
13

Process(Multi input-One output)


Process Number
Process Description
Process Place
14

Entity
Entity Name
Entity Name
Entity Name
16

Entity
Entity Name
Entity Name
17

Data Store
Data Store Name
Data Store Symbol
Data Store Name
Data Store Symbol
Data Store Name
Data Store Symbol
A data flow to a data store means update
A data flow from a data store means retrieve or use
Rule
18

Data Store
Data Store Name
Data Store Symbol
Data Store Name
Data Store Symbol
19

Common Errors
20

Common Errors
Rule
Data cannot move directly from a source to a sink
21

Common Errors
Rule
Data cannot move directly from a source to a sink
22

Common Errors
Rule
Data cannot be moved directly from one store to another
Data cannot move directly from an outside source to a data store
Data cannot move directly from a data store to a data sink
Data store has a noun phrase label
23

Invoice and payment card


Phone company
Invoice
Payment card
1
Pay phone bill
Payment card and payment
Common Errors
24

Customer
1
Open new account
New account application
Customer accounts
Account data
2
Frizzing a customer account
Status of a new customer account
Accountant department
Frizzing account letter
Customer account data
customer data
3
Prepare the monthly account report for a customer
customer data
Account number and address
Monthly account report
25

Creating a Set of DFDs


Creating a Set of DFDs (Cont.)

Creating a Set of DFDs (Cont.)

Creating a Set of DFDs (Cont.)

Creating a Set of DFDs (Cont.)

Creating a Set of DFDs (Cont.)

How do we Manage Clutter?


Leveling (decomposition).
Process of transformation from a single system to individual components
(subsystems).

Large DFDs divided into mini-DFDs.

Hierarchically organized according to the level of detail required by each DFD.

How far should we decompose a DFD?


Each process reduced to a single decision or operation.
System user requires no further detail.

Balancing DFDs
When decomposing a DFD, you must conserve inputs to, and outputs from, a process at
the next level of decomposition.
[Source: Valacich et al., 2006]

Data flows that enter and leave a parent process must be identical to those that
enter and leave the child DFD.

No new inputs or outputs should be introduced.

Creating a Set of DFDs (Cont.)

conserved between levels of DFDs. For example, level n & n+1 must have the same
inputs and outputs

DFD Example
Draw the DFD for a distance education university. The enrolment process works as
follows: Students send in an application form containing their personal details,
and their desired course The university checks that the course is available and
that the student has necessary academic qualifications. If the course is available
the student is enrolled in the course, and the university confirms the enrolment by
sending a confirmation letter to the student. If the course is unavailable the
student is sent a rejection letter.

DFD Example (cont’)


Read the problem description carefully looking for
people/organizations/things that supply information to or use information from the
system => external entities (EE)
actions/doing words/verbs => Processes (P)
movement/exchange of information/data between external entities to processes, and
processes to processes => data flows (DF)
store/record information/data => data stores(DS)
DFD Example (cont’)
It often helps to walk through the system in its logical sequence; eg. starting
with an external entity (source), add data flows, processes and data stores as the
data provided by the entity is manipulated by the system.
A student (EE) sends in an application form (DF) containing their personal details,
and their desired course
The university checks (P) that the course is available.
If the course is available the student is enrolled (P) in the course, and the
university confirms (P) the enrolment by sending a confirmation letter (DF) that
they are registered for the course to the student.
Or if the course is unavailable the student is sent a rejection letter (DF).

Context Diagram
In this case:
External entity - Student
Process - Student Administration process application
Data Flows - Application Form, Confirmation/Rejection Letter

Highest level DFD.


Has data flows, external entities, one process (system in focus) and no data
stores.
Shows the system boundary and interactions with external entities.
0
Student Administration System
Student
Application Details
Confirmation/Rejection Details

System/Level 0 DFD
External entity - Student

Processes - Check available, Enroll student, Confirm Registration

Data Flows - Application Form, Course Details, Course Enrolment Details,


Student Details, Confirmation/Rejection Letter

Data Stores - Courses, Students.

System/Level 0 DFD

Benefits of Logical Data Flow Diagram


A logical diagram is drawn present business information and centered on business
activities, which makes it an ideal communication tool when use in communicating
with project users.

Logical DFD is based on business events and independent of particular technology or


physical arrangement, which makes the resulting system more stable.

Logical DFD allows analyst to understand the business being studied and to identify
the reason behind implementation plans.

Systems implemented based on logical DFD will be easier to maintain because


business functions are not subject to frequent change.

Very often, logical DFD does not contain data stores other than files or a
database, making less complex than physical DFD and is easier to develop.

Physical DFD can be easily formed by modifying a logical DFD.


#

Benefits of Physical Data Flow Diagram


Clarifying which processes are manual and which are automated: Manual processes
require detailed documentation and automated process require computer programs to
be developed.

Describing processes in more detail than do logical DFDs: Describes all steps for
processing of data.

Sequencing processes that have to be done in a particular order: Sequence of


activities that lead to a meaningful result are described. For example, update must
be performed before a producing a summary report.

Identifying temporary data storage: Temporary storage such as a sales transaction


file for a customer receipt (report) in a grocery store, are described.

Specifying actual names of files and printouts: Logical data flow diagrams
describes actual filenames and reports, so that the programmers can relate those
with the data dictionary during the developmental phase of the system.

Adding controls to ensure the processes are done properly: These are conditions or
validations of data that are to be met during input, update, delete, and other
processing of data.

Logical DFD Example - Grocery Store


The logical DFD illustrates the processes involved without going into detail about
the physical implementation of activities.

Physical DFD Example - Grocery Store

Further Reading
http://yourdon.com/strucanalysis/wiki/index.php?title=Chapter_9

Data dictionary
Data stores:
Name
Symbol
Description
Data item
Record place
Authorization
Process:
Number
Name
Description
Input
Output
process place

Data dictionary (cont,)


Data Flow:
Name
Abbreviation
Description
Origin
Destination
Value of frequency
External Entity:
Name
Input data
Output data
Description

Summary
Basic concepts associated with DFDs
data flows, processes, external entities, and data stores.
leveling … dividing a large complex DFD into smaller related DFDs
balancing … flows in and out of a parent process are identical to that of the child
DFD

Rules for DFD construction.

online University Registration


At the beginning of each semester students may request a course catalogue
containing a list of course offerings for the semester. Information about each
course, such as professor, department, and prerequisites will be included to help
students make informed decisions. The new on-line registration system will allow
students to select four course offerings for the coming semester. In addition, each
student will indicate two alternative choices in case a course offering becomes
filled or canceled. No course offering will have more than ten students. No course
offering will have fewer than three students. A course offering with fewer than
three students will be canceled. Once the registration process is completed for a
student, the registration system sends information to the billing system, so the
student can be billed for the semester. Professors must be able to access the on-
line system to indicate which courses they will be teaching. They will also need to
see which students signed up for their course offering. For each semester, there
is a period of time that students can change their schedules. Students must be able
to access the on-line system during this time to add or drop courses. The billing
system will credit all students for courses dropped during this period of time.

Registration Context Diagram


Department
Staff
Course
Registration
System
Course
information
Course
offerings
Enrollment
information
0
Students
Student
schedules

Level 0 DFD: Registration


Dept
Staff
1
Maintain
department
course
offerings
2
Maintain
student
enrollments
3
Course
Enrollment
Reports
Course Offering
Changes
Course
Offerings
Available
courses
D1
Fees
D2
Course Offerings
D3
Enrollments
Course
information
Student Enrollment
Report Request
Student
Enrollment
Report
Enrollment
information
Students
Course
Offering
Updates
Course Offering
List
Fee Payment
History
Available
course request
Available courses
Available
courses
Course enrollment
Student schedule
Student
schedule
Course
enrollment
request

Level 1 DFD (1 of 3): Registration


Dept.
Staff
Produce
course
offering
list
Add new
course
Department ID
Department ID
D2
Course Offerings
Course to
delete
Course modifications
Course Offering
List Request
Course offering list
New Course
information
New Course
Delete
course
Modify
existing
courses
Course to delete
Course modifications
Existing Course
information
1.1
1.2
1.3
1.4

Level 1 DFD (2 of 3): Registration


Students
Produce
course
offering
list
Add course
to schedule
D2
Course Offerings
Course to
delete
Current schedule request
Available courses
Course to add
to enrollment
Course enrollment add
Delete
course from
schedule
Obtain
current
schedule
Course to delete
2.1
2.2
2.3
2.4
Available Course
Request
Available
Courses
D3
Enrollments
D1
Fees
Student enrollment
information
Fee payment history
Course enrollment
add
Student schedule

Level 1 DFD (3 of 3): Registration


Dept.
Staff
Obtain
report
type
D2
Course Offerings
Report
type
Course offering
information
Generate
requested
report
3.1
3.2
Report
Request
D3
Enrollments
Enrollment
information
Requested
report

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy