Systems Analysis Systems Analysis

1
Systems Analysis
Data and process analysis
ผูส้ อน ดร.สลิล บุญพราหมณ์
ITM-631 Information System Development
2
... ความคิดนัน
เป็ นแม่บทใหญ่ของการพูดและการกระทํา เพราะกิจทีจ
" ะทําคําที"
จะพูดทุกอย่างล ้วนสําเร็จมาจากความคิด
การคิดก่อนพูดและก่อนทํา จึงชว่ ยให ้บุคคลสามารถยับยัง คําพูดทีไ" ม่สมควร
หยุดยัง การกระทําทีไ" ม่ถก
ู ต ้อง ...
พระบรมราโชวาทของพระบาทสมเด็จพระเจ้าอยูหั
่ ว
ในพิธพ
ี ระราชทานปริญญาบัตรของจุฬาลงกรณมหาวิ
ทยาลัย
์
๑๐ กรกฎาคม ๒๕๔๐
Chapter Objectives
3
•
Describe data and process modeling concepts and tools,
including data flow diagrams, a data dictionary, and process
descriptions
•
Describe the symbols used in data flow diagrams and explain
the rules for their use
•
Draw data flow diagrams in a sequence, from general to
specific
•
Explain how to level and balance a set of data flow diagrams
Chapter Objectives
4
Describe how a data dictionary is used and what it contains
Use process description tools, including structured English,
decision tables, and decision trees
Describe the relationship between logical and physical
models
Introduction
5
In Chapters 5 & 6, you will develop a logical model of the
proposed system and document the system requirements
Logical model shows what the system must do
Physical model describes how the system will be
constructed
Overview of Data and Process Modeling Tools
6
Systems analysts use many graphical techniques to describe
an information system
A data flow diagram (DFD) uses various symbols to show how
the system transforms input data into useful information
Data Flow Diagrams
7
A data flow diagram (DFD)
shows how data moves
through an information
system but does not show
program logic or
processing steps
A set of DFDs provides a
logical model that shows
what the system does, not
how it does it
Data Flow Diagrams
8
DFD Symbols
Data Flow Diagrams
9
DFD Symbols
Process symbol
Receives input data and produces output that has a
different content, form, or both
Contain the business
Referred to as a
logic, also called business rules
black box
Data Flow Diagrams
10
สงิ" ทีค" วรทราบ
ชอื" มีความหมายชดั เจนในการอธิบายกิจกรรม เชน่ เพิม"
รายวิชา หรือ produce report
จะต ้องมีหมายเลขกํากับเสมอ
ชอื" process และหมายเลขจะซํากันไม่ได ้
Data Flow Diagrams
11
DFD Symbols
Data
flow symbol
Represents one
or
more data items
The symbol for a data
flow is a line with a
single or double
arrowhead
Data Flow Diagrams
12
Spontaneous generation
Black hole
Gray hole
Data Flow Diagrams
13
สงิ" ทีค" วรทราบ
ื" ของ Data flow จะต ้องเป็ นคํานามทีอ
ชอ
" ธิบายข ้อมูลเสมอ
่ รหัสหนังสอ
ื นํ าหนักสน
ิ ค ้า ข ้อมูลลูกค ้า
เชน
ื" ข ้อมูลมากกว่า 1 ชอ
ื" บนเสนเช
้ อ
ื" มโดยใช ้
อนุโลมให ้เขียนชอ
เครือ
" งหมาย comma ชว่ ยแยก
ื" มโยง Data flow จะโยงให ้มีความเชอ
ื" มต่อสมบูรณ์
การเชอ
่ งว่าง
ไม่มช
ี อ
Data Flow Diagrams
14
DFD Symbols
Data store symbol
Represent data that
the system stores
The physical
characteristics of a
data store are
unimportant because
you are concerned
only with a logical
model
Data Flow Diagrams
15
สงิ" ทีค" วรทราบ
Data store อาจเป็ นการเก็บข ้อมูลในรูปแบบต่างๆกันก็ได ้
่ สมุดลงนาม แฟ้ มเอกสาร หรือ computer file
เชน
โครงสร ้างข ้อมูลทีเ" ก็บใน Data store หนึง
" ๆจะมีรป
ู แบบ
เดียวกันทัง หมด
มีหมายเลขกํากับ และเลขเหล่านีซ
ําไม่ได ้
ในการเขียน Data store จะต ้องมี diagram ทีแ
" สดงว่า
้
นํ าเข ้ามูลเข ้า รวมทัง มีการนํ าข ้อมูลไปใชงาน
16
Data Flow Diagrams
17
DFD Symbols
Entity Symbol
Name of
the
entity appears
inside the symbol
Terminators
Source
Sink
Data Flow Diagrams
18
สงิ" ทีค" วรทราบ
ื" มโยง external entity ตรงๆไม่ได ้
เชอ
ื" ม external entity กับ data store ไม่ได ้
เชอ
Data Flow Diagrams
19
Data Flow Diagrams
20
Creating a Set of DFDs
21
Create a graphical model of the information system based on
your fact-finding results
First, you will review a set of guidelines for drawing DFDs.
Then you will learn how to apply these guidelines and create
a set of DFDs using a three-step process
Creating a Set of DFDs
22
Guidelines for Drawing DFDs
Draw the context diagram so that it fits on one page
Use the name of the information system as the process
name in the context diagram
Use unique names within each set of symbols
ชือ
่ เดียวกันหมายถึงสิ่ งเดียวกัน
Creating a Set of DFDs
23
Guidelines for Drawing DFDs
Do not cross lines
Provide a unique name and reference number for each
process
Obtain as much user input and feedback as possible
Creating a Set of DFDs
24
Step 1: Draw a Context Diagram
25
ในการเขียน Context
diagram
ไม่ให ้มี Data store ใน
context diagram
ั ลักษณ์ process
ให ้มีสญ
ได ้เพียงรูปเดียว
ไม่ควรเขียน External
entity ซํา
ไม่มล
ี ก
ู ศร 2 ทาง
26
กรณีทม
ี" ากกว่า
1 data flow
สามารถเขียน
้
รวบเสนได
้
Creating a Set of DFDs
27
Step 2: Draw a Diagram 0 DFD
Creating a Set of DFDs
28
Step 2: Draw a Diagram 0 DFD (cont)
If same data flows in both directions, you can use a doubleheaded arrow
Diagram 0 is an exploded view of process 0
Parent diagram
Child diagram
Functional primitive
29
DFD Level 0
Context
diagram
Creating a Set of DFDs
30
Step 3: Draw the LowerLevel Diagrams
Must use leveling and
balancing techniques
Leveling examples
Uses a series of
increasingly detailed
DFDs to describe an
information system
Exploding,
partitioning, or
decomposing
DFD Level 1
31
Parent diagram
Child diagram
32
การเขียนโดย
ไม่แสดง External entity
33
Creating a Set of DFDs
34
Step 3: Draw the Lower-Level Diagrams
Balancing Examples
Ensures that the input and output data flows of the
parent DFD are maintained on the child DFD
35
Exercise: find the mistakes
36
Data Dictionary
37
•
A data dictionary, or data repository, is a central storehouse
of information about the system’s data
•
An analyst uses the data dictionary to collect, document, and
organize specific facts about the system
•
Also defines and describes all data elements and meaningful
combinations of data elements
Data Dictionary
38
A data element, also called a data item or field, is the smallest
piece of data that has meaning
Data elements are combined into records, also called data
structures
A record is a meaningful combination of related data
elements that is included in a data flow or retained in a data
store
Data Dictionary
39
Using CASE Tools for Documentation
The more complex the system, the more difficult it is to
maintain full and accurate documentation
Modern CASE tools simplify the task
A CASE repository ensures data consistency
Data Dictionary
Documenting the Data Elements
You must document every data element in the data
dictionary
The objective is the same: to provide clear,
comprehensive information about the data and processes
that make up the system
Data Dictionary
41
Documenting the Data Elements (cont)
The following attributes usually are recorded and described
Data element name and label
Alias
Type and length
Default value
Acceptable values - Domain and validity rules
Data Dictionary
42
Documenting the Data Elements (cont)
The following attributes usually are recorded and described
Source
Security
Responsible user(s)
Description and comments
example
43
Info for a data element names SOCIAL SECURITY NUMBER
System: payroll
Label: system security number
Alias: SSN
Type and length: 9N
Default value: none
Source: employee application form
Acceptable values: any positive number (domain)
Security: payroll department
User responsibility: payroll department
44
Data Dictionary
45
Documenting the Data Flows
The typical attributes are as follows
Data flow
name or label
Description
Alternate name(s)
Origin (source
for data flow can be a process, a data
store, or an entity)
Destination (DFD ending point)
46
Record
Each data flow represents a group of related data
elements called a record or data structure
In most DD, records are defined separately from the data
flow and data store.
more than one data flow or data store can use the same
record
Volume and frequency
Expected number of occurrences for a data flow per unit
of time e.g. 300 time cards per week
47
Data Dictionary
48
Documenting the Data Stores
Typical characteristics of a
data store are
Data store name
or label as
it appears on DFD
Description
Alternate name(s)
Attributes
Volume and frequency
Data Dictionary
49
Documenting the Processes
Typical characteristics of a
process
Process name
or label
Description
Process number
Process description
Data Dictionary
50
Documenting the Entities
Typical characteristics of
an entity include
Entity name
Description
Alternate name(s)
Input data flows
Output data flows
Data Dictionary
51
Documenting the Records
Typical characteristics of a
record include
Record or
data structure
name
Definition or
description
Alternate name(s)
Attributes
Data Dictionary
52
•
Data Dictionary Reports
–
Many valuable reports
•
An alphabetized list of all data elements by name
•
A report describing each data element and indicating the user or
department that is responsible for data entry, updating, or deletion
•
A report of all data flows and data stores that use a particular data
element
•
Detailed reports showing all characteristics of data elements,
records, data flows, processes, or any other selected item stored in
the data dictionary
Process Description Tools
53
•
A process description documents the details of a functional
primitive, which represents a specific set of processing steps
and business logic
•
It should be noted that this chapter deals with structured
analysis, but the process description tools also can be used in
object-oriented development, which is described in Chapter 6
Process Description Tools
54
Modular Design
Based on combinations of three logical structures,
sometimes called control structures, which serve as
building blocks for the process
Sequence
Selection
Iteration - looping
55
Process Description Tools
56
Structured English
Must conform to the following rules
Use only
the three building blocks of sequence,
selection, and iteration
Use indentation for
Use a
readability
limited vocabulary, including standard terms used
in the data dictionary and specific words that describe
the processing rules
57
58
Input data flows: order, credit status, product detail
Output data flows: rejected order, accepted order
For each ORDER
if CUSTOMER STATUS CODE = ‘Y’ and PRODUCT DETAIL = ‘OK’
then output ACCEPTED ORDER
else
output REJECTED ORDER
Process Description Tools
59
Structured English
Might look familiar to programming students because it
resembles pseudocode
The primary purpose of structured English is to describe
the underlying business logic
Process Description Tools
60
Decision Tables
Shows a logical structure, with all possible combinations of
conditions and resulting actions
It is important to consider every possible outcome to
ensure that you have overlooked nothing
Process Description Tools
61
Decision Tables
The number of rules doubles each time you add a
condition
Can have more than two possible outcomes
Often are the best way to describe a complex set of
conditions
Table with two conditions
62
An order will be accepted only if the product is in stock and the customer’s
credit status is OK
Table with three conditions
63
• An order will be accepted only if the product is in stock and the customer’s
credit status is OK
• The credit manager can waive the credit status requirement
64
การ Simplify ตาราง
Multiple outcomes
65
• Preferred customers who order $1,000 or more are entitled to a 5% discount,
and an additional 5% discount if they use our charge card
• Preferred customers who do not order $1,000 or more will receive a $25 coupon
• All other customers will receive a $5 bonus coupon
66
Process Description Tools
67
Decision Trees
Logical Versus Physical Models
68
While structured analysis tools are used to develop a logical
model for a new information system, such tools also can be
used to develop physical models of an information system
A physical model shows how the system’s requirements are
implemented
Logical Versus Physical Models
69
Sequence of Models
Many systems analysts create a physical model of the
current system and then develop a logical model of the
current system before tackling a logical model of the new
system
Performing that extra step allows them to understand the
current system better
Logical Versus Physical Models
70
Four-Model Approach
Develop a physical model of the current system, a logical
model of the current system, a logical model of the new
system, and a physical model of the new system
The only disadvantage of the four-model approach is the
added time and cost
Chapter Summary
71
•
During data and process modeling, a systems analyst
develops graphical models to show how the system
transforms data into useful information
•
The end product of data and process modeling is a logical
model that will support business operations and meet user
needs
•
Data and process modeling involves three main tools: data
flow diagrams, a data dictionary, and process descriptions
Chapter Summary
72
Data flow diagrams (DFDs) graphically show the movement
and transformation of data in the information system
DFDs use four symbols
A set of DFDs is like a pyramid with the context diagram at the
top
Chapter Summary
73
•
The data dictionary is the central documentation tool for
structured analysis
•
Each functional primitive process is documented using
structured English, decision tables, and decision trees
•
Structured analysis tools can be used to develop a logical
model during one systems analysis phase, and a physical
model during the systems design phase
Apply your knowledge
74
Precision Tools sells a line of high-quality woodworking tools.
When customers place orders on the company’s website, the
system checks to see if the items are in stock, issues a status
message to the customer, and generates a shipping order to
warehouse, which fills the order. When the order is shipped,
the customer is billed. The system also produces various
reports.
75
1.
2.
Draw a context diagram for the order system
Draw a diagram 0 DFD for the order system