Title: INFS205 Spring 2004
1INFS205 Spring 2004
- Graphical Representations
- for
- Problem Solving
2Graphical Representations
- Flowcharts
- System
- Program
- Structure
- Entity Relationships
- Data Flow Diagrams
3System Flowcharts
Overview description of basic Input-Processing-Out
put. IPO charts deal with top level. If broken
down further to describe further decomposition,
then described as HIPO or Hierarchical Input
Processing Output charts.
Input Processing
Output
4System Flowcharts
Overview description of basic Input-Processing-Out
put. IPO charts deal with top level. If broken
down further to describe further decomposition,
then described as HIPO or Hierarchical Input
Processing Output charts.
Input Processing
Output
File1 Record Field Field File2
Record Field1 Field2
Report1 Headings Body Footings File3
Record Field1 Field2
Get input record Look up rate in table Calculate
change Accumulate Totals
5Program Flowcharts
- Program flowcharts describe the logic
6Structure Chart
- Structure charts present both hierarchy and
data(switches)
Produce Report Line
Good Input
Output Data
Good Input
Output Data
Output Report Line
Get Good Input
Process Good Data
Output line
Output Data
Good Input
Input line
Output line
Input line
Write Report Line
Format Report Line
Edit Input
Read Input
7Entity Relationship Diagrams
- Uses basic diagramming figures to define the
complete environment for a systems. The
components represent entities and the
relationships between those entities. - Basic Figures
- Relationship Lines verbs
- Entities Boxes nouns
8Relationship Symbols
- How entities relate
- 1 instance required
- 1 or no instances required
- 1 or many instances required
- 0, 1 or many instances required
- many instances required
9Relationship Symbols Cardinality
Cardinality Minimum Maximum Interpretatio
n Instances Instances
Exactly One 1
1 Zero or One 0
1 One or More 1
Many (gt1) Zero, One or more 0
Many (gt1) More than One gt1
gt1
10Relationship Diagrams
Employee
Office
is assigned to is occupied by
Machine
Scheduled Maintenance
is undergoing is being done on
Customer
is assigned to is called on by
Salesperson
11Relationship Diagrams
Employee
Office
is assigned to is occupied by
Number ENTITY RELATIONSHIP Number ENTITY
ONE Employee is assigned to ONE Office ONE Office
is occupied by ONE Employee
QUESTION What is the implication of the symbol
12Relationship Diagrams
A (one) MACHINE is undergoing MAINTENANCE MAINTENA
NCE is being done on A (one) MACHINE
Machine
Scheduled Maintenance
is undergoing is being done on
QUESTION What is the implication of the symbol
13Relationship Diagrams
One or More SALESPERSON(S) is assigned to One or
More CUSTOMER One or More CUSTOMER(S) is called
on by One or More SALESPERSON(S)
QUESTION What is the implication of the symbol
QUESTION Can you think of a fundamental business
flaw in the relationship modeled?
Customer
is assigned to is called on by
Salesperson
14Entity Symbols
- Fundamental Real entity, exists without the
information being defined system - Associative entity necessary because of
information system processing - Attributive unique identifier for repeating
group entities
Fundamental
Associative
Attributive
15Entity RelationshipDiagrams
Patron
In the name of has has
Makes Is made for belongs to
Question Describe what is going on in this ER
Diagram
Concert/Show
16Entity Relationship Diagrams
Patron
Patron- name(PK) Address Phone Credit
Card Reservation-number(PK) Patron-name
(FK) Performance-number (FK) Concert/Show Date Tim
e Location Price Performance-number(PK) Concert/S
how Date Time Location Price Options Concert/Show
(PK) Concert details Dates Location
In the name of has has
Makes Is made for belongs to
Concert/Show
17Introduction to Data Flow Diagrams
- Overview
- defined
- symbols
- guidelines for developing
- guidelines for determining a good DFD
- DFD as agent for change
- Example
18DFD Defined
- a graphical representation of data processes
throughout the organization - What is a process?
- What graphical representation?
- Advantages of DFD
- system documentation
- hardware independent
- shows characteristics of the system
(decomposition/boundary/inter-relatedness)
19Process Defined
- Collection of activities that take one or more
kinds of input and creates an output that is of
value Hammer Champy 1993 - The manner of combining the inputs so that the
system will achieve a certain result.
Schoderbeck, et.al. 1985
20Context Data Flow
- Purpose To graphically represent the data
flowing in and out of a system along with the
basic processing (transformation process) of the
system.
Travel Agent
Flights Preferences
Reservation System
0.0
Travel Request
Passenger
Ticket Information
Passenger Reservation
Airline
21Data Flow Symbols
Label
Entity person, group, department, etc. that
receives or originates data. Should be labeled in
body of box.
Process an action or set of actions that takes
place to convert or transform data. Should be
numbered in top and labeled in body.
ID
Label
22Data Flow Symbols
- Label -
Label
ID
Not used in Context Flow
23Diagram Workaround
- In order to minimize the confusion created with
the overlap of data flow lines, you may create
duplicate instances of a data store or entity
symbol. You must identify any duplicates as such,
symbolically.
DS1
E2
E1
DS1
E1
DS2
24Workaround
DS 2
25DFD Development Guidelines
- Make lists
- external entities (Defines Environment)
- processes (Defines Programs or Modules)
- data stores (Defines Data)
- data flows (Defines Logic or Procedures)
- Create context diagram to define scope
- Decompose main transformation into Level 0
diagram Add data stores to the diagram
26DFD Development Guidelines
- Decompose processes in Level 0 to primitive
levels - Check for Errors
- Convert Logical to Physical DFD
- Partition the final Physical DFD
- input/output screens and reports
- batch processing
- to represent programs, procedures or modules
27DFD Development Guidelines
- Name processes as imperative
- Read Input Calculate Salary Increase
- Name data stores by what is stored in them
- records, orders, forms
- Name data flows after flowing data
- records, data elements
- Name entities after what they represent
- person, organization, other system
28DFD Development Guidelines
- When do I stop decomposing the diagram?
- WHEN each process is primitive to the system in
this context, primitive could be single decision,
calculation, data base query AND - WHEN each data store represents data on a single
entity AND - WHEN each data flow is at lowest level AND
- WHEN each transaction, interaction of the system
is shown AND - WHEN you, your team and the user think you have
enough detail
29DFD Decomposition
Context Level 0 Level 1 Level 2
Primitive
30General Considerations
- Completeness - all components are accounted for
and defined - Consistency - are the diagrams between levels
compatible is the inheritance valid - Timing - DFD are timeless the system has
never started and will never stop - Iterative - It will not be correct the first
time you will have to iterate
31Specific Errors to Check for
- No free standing symbols
- All inputs/outputs are inherited - balanced
- Entities are the initial and final destinations
- Data comes out of data sources (not just in)
- No process has only outputs
- No process can have only inputs
32Errors (cont)
- Data cannot move directly from one data store to
another - Data cannot move directly from one entity (source
entity) to another (sink entity). - A data flow should only occur in one direction
read and write should be divided into two arrows.
33Problems?
Raw data
Valid Data
Customer
Customer data
34Problems?
Advising Office
Student
Validate Request
35DFD Logical or Physical
- Logical
- How business operates
- Business activities
- Collections of data
- Show business controls
- Physical
- System implemented
- Programs or module
- Physical files
- Validation actual processes for implementing
controls
According to book, which DFD type (logical or
physical) will probably contain more symbols in
the diagram. Why?
36DFDs in Business Process Re-engineering
- Implementing a new system (or changing a current
system) is by definition change. DFDs can help in
that process by identifying and documenting the
state of the system as it exists now and how it
should exist after the implementation.
AS-IS
TO-BE
Current Logical DFD
New Logical DFD
New Physical DFD
TO-BE minus AS-IS equals the implementation
projects scope
37DFD Summary
- DFDs are a hierarchical, graphical representation
of information system. - When done correctly, DFDs provide
- a complete and consistent image of the system
- a communication tool
- documentation of the system
- a way to determine the scope of change
38DFD Example
Context Level
What does this DFD tell you?
39DFD Example
Level 0
What does this DFD tell you?
40Assignment
- More Information
- Lab 9-B page 463 and on disk
- DFD Assignment
- DFD and short write up
- 10 pts
- Due April 13