Professional Documents
Culture Documents
Analysis Process: Data Flow Diagram
Analysis Process: Data Flow Diagram
Analysis Process
• introduced and popularized for structured
Data Flow Diagram
analysis and design in the late 1970s (Gane
Entity Relationship
Diagram and Sarson 1979)
Types of Data Flow
Diagram Determine Hardware and • invented by Larry Constantine, the original
Data Dictionary Software Needs
developer of structured design, based on
Structured English Identifying and Forecasting
Decision Tables Costs and Benefits Martin and Estrin’s “data flow graph”
Decision Trees Comparing Cost and Benefits model of computation
HIPO Charts
Guidelines for Analysis
Pareto Charts
Systems Proposal
Fishbone Diagram
1 __________________________ 2 _________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
3 __________________________ 4 _________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
Data Flow Diagram Data Flow Diagram
• Steps in developing DFDs
1. Make a list of business activities and use it to 4. Create a child diagram for each of the
determine various data flows, processes, data processes in Diagram 0.
stores, and sources/sinks. 5. Check for errors and make sure the labels you
2. Create a context diagram that shows assign to each process and data flow are
sources/sinks and data flows to and from the meaningful.
system. 6. Develop a physical data flow diagram from
3. Draw Diagram 0, the next level. Show the logical data flow diagram.
processes, but keep them general
5 __________________________ 6 _________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
7 __________________________ 8 _________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
Data Flow Diagram Data Flow Diagram
• Context Diagram • Diagram 0
9 __________________________ 10 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
11 _________________________ 12 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
Data Flow Diagram Data Flow Diagram
• Data Store
• Data cannot move directly from one data store to • Data cannot move directly to an outside sink from a
another data store. Data must be moved by a data store. Data must be moved by a process.
process. • A data store has a noun phrase label.
• Data cannot move directly from an outside source to
a data store. Data must be moved by a process that
receives data from the source and places the data
into the data store.
13 _________________________ 14 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
15 _________________________ 16 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
Data Flow Diagram Data Flow Diagram
• A fork in a data flow means that exactly the same • It cannot go directly back to the same process it
data goes from a common location to two or more leaves. There must be at least one other process that
different processes, data stores, or sources/sinks. handles the data flow, produces some other data
flow, and returns the original data flow to the
• A join in a data flow means that exactly the same beginning process.
data come from any of two or more different
processes, data stores, or sources/sinks to a common • A data flow to a data store means update (delete or
location. change).
17 _________________________ 18 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
19 _________________________ 20 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
Types of Data Flow Diagram Types of Data Flow Diagram
Derive the logical DFD for the current
Current Logical
DFD
system by examining the physical DFD and
isolating unique business activities.
• Benefits of using logical model:
• Better communication with users
• More stable systems
Create the logical DFD for the new system
New Logical by adding the input, output, and processes • Better understanding of the business by analysts
DFD required in the new system to the logical
DFD for the current system. • Flexibility and maintenance
• Elimination of redundancies and easier creation
Derive the physical DFD by examining of the physical model
processes on the new logical diagram.
New Physical
Determine where the user interfaces should
DFD
exist, the nature of the processes, and
necessary data stores.
21 _________________________ 22 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
23 _________________________ 24 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
Types of Data Flow Diagram Types of Data Flow Diagram
• Items contained in the physical DFDs that
are not found in logical DFDs: • Sequencing processes to rearrange the order of
• Manual processes records
• Processes for adding, deleting, changing, and • Processes to produce every unique system
updating records output
• Data entry and verifying processes • Intermediate data stores
• Validation processes for ensuring accurate data • Actual file names used to store data
input • Controls to signify completion of tasks or error
conditions
25 _________________________ 26 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
27 _________________________ 28 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
Data Dictionary Data Dictionary
• Data Dictionary Notation • Examples:
= is composed of • Name = Courtesy Title + First Name + (Middle
+ and Initial) + Last Name
( ) optional (may be present or absent) Courtesy Title = [Mr. | Miss | Mrs. | Ms. | Dr. |
{ } iteration Professor]
[ ] select one of several alternative choices
First Name = {Legal Character}
** comment
Middle Initial = {Legal Character}
@ identifier (key field) for a store
| separates alternative choices in the [ ] construct Last Name = {Legal Character}
Legal Character = [A-Z|a-z|0-9|'|-| | ]
29 _________________________ 30 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
31 _________________________ 32 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
Structured English Structured English
• does not involve declaration, initialization, • Five conventions followed when using
or linking structured English:
• it uses some of the logical constructs of 1. Express all logic in terms of sequential
structured programming to overcome the structures, decision structures, or iterations.
lack of structure and precision in the 2. Use and capitalize accepted keywords, such as
English language IF, THEN, ELSE, DO, DO WHILE, DO
• its general structure is built using the UNTIL, and PERFORM.
fundamental constructs, such as sequential, 3. Indent blocks of statements to show their
decision, and iteration hierarchy (nesting) clearly.
33 _________________________ 34 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
5. Be careful when using “and” and “or” as well • Decision structure IF Condition A is TRUE
35 _________________________ 36 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
Structured English Decision Table
• Advantages: • matrix representation of processing logic,
• clarify the logic and relationships found in which specifies the possible conditions for
human languages the decision and the resulting actions
• it is a communication tool
• useful when complex combinations of
• A structured English is used when: conditions, actions, and rules are found or if
• There are many repetitious actions, or it requires a method that effectively avoid
• Communication to end users is important. impossible situations, redundancies, and
contradictions
37 _________________________ 38 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
39 _________________________ 40 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
Decision Table Decision Table
• Steps in constructing decision tables: 4. in the decision table by multiplying the
number of alternatives for each condition.
1. Determine the number of conditions that may
affect the decision. 5. Fill in the condition alternatives.
2. Determine the number possible actions that 6. Complete the table by inserting an X where
can be taken. rules suggest certain actions.
3. Determine the number of condition 7. Combine rules where it is apparent that an
alternatives for each condition. alternative does not make a difference in the
outcome.
41 _________________________ 42 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
43 _________________________ 44 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
Decision Table Decision Trees
• A decision table is used when: • graphical representation of a decision or
choice situation as a connected series of
• Complex combinations of conditions, actions, nodes and branches
and rules are found, or • useful when the sequence of conditions and
• A method is required that effectively avoids actions is critical or not every condition is
impossible situations, redundancies, and relevant to every action
contradictions.
• designed to make it easier for analysts to
communicate with users
45 _________________________ 46 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
47 _________________________ 48 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
Decision Trees Decision Trees
• A decision tree is used when: Sunday
Sleep two more
2 Weekday
• The sequence of conditions and actions is hours
Saturday
critical, or YES Time to get up
1) Sun up?
2) What day is it?
49 _________________________ 50 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
51 _________________________ 52 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
Decision Trees HIPO Charts
• stands for Hierarchy Input Process Output
• Compared with decision tables, decision trees • was developed by IBM as a tool and
are more readily understood by others in the
documentation technique that attempts to:
organization.
• provide a structure by which the function of a
system can be understood
• state the functions to be accomplished
• provide a visual description of the input,
process, and output for each function
53 _________________________ 54 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
55 _________________________ 56 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
HIPO Charts HIPO Charts
• Example of a Hierarchy Chart • Example of an IPO Overview Diagram
57 _________________________ 58 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
59 _________________________ 60 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
Pareto Charts Pareto Charts
• Uses of Pareto Chart:
• Focus on critical issues by ranking them in • Analyze problems or causes by different
terms of importance and frequency. groupings of data (e.g., by program, by teacher,
by school building, by machine, by team).
• Prioritize problems or causes to efficiently
initiate problem solving. • Analyze the before and after impact of changes
made in a process.
61 _________________________ 62 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
63 _________________________ 64 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
Pareto Charts Pareto Charts
4. Create the framework for the horizontal and 5. Plot the bars on the Pareto chart.
vertical axes of the Pareto Chart.
65 _________________________ 66 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
67 _________________________ 68 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
Fishbone Diagram Fishbone Diagram
• The fishbone diagram is used if the project
• its main purpose is to assist project teams in team:
categorizing the many potential causes of • Need to study a problem/issue to determine the
problems or issues in an orderly manner and root cause
in identifying root causes • Want to study all the possible reasons why a
process is beginning to have difficulties,
problems, or breakdowns
69 _________________________ 70 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
71 _________________________ 72 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
Fishbone Diagram Fishbone Diagram
• Steps in constructing fishbone diagram: • 4 S’s – Surroundings, Suppliers, Systems, Skills
Take note that one of the four categories suggested can
be used or can be combined in any fashion. These
1. List the problem/issue to be studied in the categories are helpful in organizing ideas.
head of the fish.
2. Label each bone of the fish. The major
3. Use an idea-generating technique to identify
categories typically used are:
the factors within each category that may be
• 4 M’s – Methods, Machines, Materials, Manpower
affecting the problem/issue and/or effect
• 4 P’s – Place, Procedure, People, Policies being studied.
• 4 S’s – Surroundings, Suppliers, Systems, Skills
73 _________________________ 74 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
75 _________________________ 76 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
Entity-Relationship Diagram Entity-Relationship Diagram
• graphical representation of an E-R model
• notations used:
• Entities
• Attributes
• Candidate keys and identifiers
• Relationships
77 _________________________ 78 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
79 _________________________ 80 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
Determine Hardware and Determine Hardware and
Software Needs Software Needs
• Inventory Computer Hardware
• If an updated computer hardware is 4. The projected life of the equipment.
unavailable, the systems analyst needs to set up 5. The physical location of the equipment.
one quickly and carry through on it by 6. The department or person considered responsible
identifying the following: for the equipment.
1. The type of equipment: model number, 7. The financial arrangement for the equipment:
manufacturer. owned, leased, rented.
2. The operation status of the equipment: on order,
operating, in storage, in need of repair.
3. The estimated age of the equipment.
81 _________________________ 82 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
83 _________________________ 84 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
Determine Hardware and Determine Hardware and
Software Needs Software Needs
• Evaluate Computer Hardware • Criteria used by systems analysts and users
in evaluating performance of different
• Evaluation of computer hardware is the shared systems hardware:
responsibility of management, users, and • The time required for average transactions
systems analysts. (including how long it takes to input data and
• Systems analysts may have to educate users and how long it takes to receive output).
management about the general advantages and
disadvantages if hardware before they can
capably evaluate it.
85 _________________________ 86 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
87 _________________________ 88 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
Determine Hardware and Determine Hardware and
Software Needs Software Needs
Advantages Disadvantages • Evaluate Software
Purchasing - Cheaper than leasing or renting over the - Initial cost is high
long run
- Ability to change system
- Risk of obsolescence
- Risk of being stuck if choice was
• Analysts and organizations are increasingly
- Provides tax advantages of accelerated
depreciation
wrong
- Full responsibility
faced with a make, buy, or outsource decision
- Full control when assessing software for information
Leasing - No capital is tied up
- No financing is required
- Company doesn’t own the system
when lease expires
systems projects, particularly when
- Leases are lower than rental payments - Usually a heavy penalty for terminating
the lease
contemplating upgrades to existing or legacy
- Leases are more expensive than buying systems.
Renting - No capital is tied up - Company doesn’t own the computer
- No financing is required - Cost is very high because vendor
- Easy to change systems assumes the risk (most expensive option)
- Maintenance and insurance are usually
included`
89 _________________________ 90 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
• Analysts decide whether to purchase COTS Creating Custom Software - Specific response to specialized
business needs
- May be significantly higher initial
cost compared to COTS software
Innovation may give firm a of ASP
software, rent software from an application competitive advantage - Necessity of hiring or working
- In-house staff available to maintain with a development team
service provider (ASP), or create custom software - On-going maintenance
- Pride of ownership
software for the project. Purchasing COTS Packages - Refined in the commercial world - Programming focused; not
- Increased reliability business focused
- Increased functionality - Must live with the existing
- Often lower initial cost features
- Already in use by other firms - Limited customization
- Help and training comes with - Uncertain financial future of
software vendor
- Less ownership and commitment
91 _________________________ 92 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
Determine Hardware and Identifying and Forecasting
Software Needs Costs and Benefits
• Systems analysts are required to predict
Advantages Disadvantages certain key variables before the proposal is
Using an ASP - Organizations that do not specialize in - Loss of control of data, systems, IT
information systems can focus on what they employees, and schedules submitted to the client.
do best (their strategic mission) - Concern over the financial viability
- There is no need to hire, train, or retain a and long-run stability of the ASP
large IT staff - Security, confidentiality, and
- There is no expenditure of employee time privacy concerns
on non-essential IT tasks - Loss of potential strategic corporate
advantage regarding innovativeness
• The systems analysts uses forecasting
of applications
models and the main condition for choosing
a model is the availability of historical data.
93 _________________________ 94 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
95 _________________________ 96 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
Identifying and Forecasting Identifying and Forecasting
Costs and Benefits Costs and Benefits
• If historical data are unavailable, the analyst
• Unconditional methods: must turn to one of the judgment methods:
• Graphical judgment • Estimates from the sales force
• Moving averages • Surveys to estimate customer demand
• Analysis of time series data • Delphi studies
• Creating scenarios
• Drawing historical analogies
97 _________________________ 98 ________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
____________________________ ___________________________
Subsidiary A CEM
15% Medical
20%
Appliance
Vending
5% POS
20%
3% Transportation
2% Military
5%
Telecom
0 10000 20000 30000 40000 50000 5%
15% Industrial
Vendor A Vendor B Vendor C 10%
Process Control
Vendor D Vendor E Vendor F