Chương 3
Phân tích và Thiết kế
HTTTQL
ThS. Võ Thị Ngọc Trân
1
Chương 3: Phân tích và Thiết kế HTTTQL
Phân tích quy trình
Phân tích dữ liệu
Thiết kế HTTTQL
• Chuyển
tiếp từ phân tích đến thiết kế (Xác định
nguyên nhân)
• Thiết kế HTTTQL (Đề xuất giải pháp)
2
1
3.1. Phân tích quy trình
Phân tích hệ thống
Lưu đồ thủ công
Lưu đồ dòng dữ liệu (Data Flow Diagram, DFD)
Từ điển dữ liệu
Bảng quyết định
Lưu đồ logic (Flowchart)
Lời văn cấu trúc
3
3.1.1. Phân tích hệ thống
Mô hình
luận lý
Mô hình luận lý: sau
khi PT HT bỏ đi
những yếu tố phức tạp
và rắc rối có thể cản
trở sự TT.
Sơ đồ dòng chảy dữ liệu
Lời văn cấu trúc
Bảng quyết định
Lưu đồ logic
Luận lý
Mô hình vật lý: ai
làm điều gì, ở đâu, với
tập tin nào, …
Vật lý
Lưu đồ hệ thống thủ công
Mô tả và
phân tích
vật lý
4
2
3.1.2. Lưu đồ hệ thống thủ cơng - Các ký hiệu
Dòng chảy
Hướng và trình tự của dòng chảy
Thao tác thủ công
VD: Chuẩn bị xử lý 1 chồng hóa đơn.
Tài liệu
VD: mẩu đơn hàng của cơng ty
Nơi lưu trữ ngoại tuyến
tổng quát
Đây là nơi lưu trữ khơng được
nối trực tiếp với đơn vị xử lý
trung tâm của MT -> Nó bao
gồm tất cả những phương tiện
lưu trữ bằng tay.
VD: 1 tập tin hóa đơn bằng tay
Nhập/xuất tổng quát
Vị trí và hoạt động tại đó 1 tài liệu
đi vào hay rời khỏi HT trong sơ đồ
Dấu nối tiếp trang
Dấu nối hết trang
So sánh đối chiếu
Sắp xếp
5
3.1.2. Lưu đồ hệ thống thủ cơng
Lưu đồ HT thủ cơng
• Mơ tả các hoạt động sát thực tế
• Sử dụng các ký hiệu
• Chi tiết
Lưu đồ HT thủ cơng trình bày
• Các bộ phận
• Dòng TT / tài liệu
• Trái sang phải
• Trên xuống
6
3
KHÁCH HÀNG
BỘ PHẬN ĐƠN HÀNG
Đơn hàng
Đơn hàng
chuẩn bò
mẫu đơn
12
34
5 mẫu đơn
công ty
KIỂM TRA TÍN DỤNG
23
KHO HÀNG
4 5 mẫu đơn
công ty
12
BÔ PHẬN
ĐÓNG &
GỞI
đhg
thỏa
3 mẫu đơn
công ty
GĐ KTRA
TDỤNG
2
1 mẫu đơn
công ty
3 4 mẫu đơn
công ty
1
phxuất
chuẩn bò
hđơn thtoán
phxuất
3 mẫu đơn
công ty
T
order
#
đhg
khg thỏa
3 mẫu đơn
công ty
customer
#
åãểm tìÛ vÛø
áởã đã
2 mẫu đơn
công ty
phxuất
order
#
Hhóa
đònh giá
đơn hàng
theo bgiá
customer
#
4 mẫu đơn
công ty
chọn hhóa,
nhập slg,
phxuất
tính toán và
ktra tdụng
đhàng
khg được
cnhận
T
T
LẬP HÓA ĐƠN
3 mẫu đơn
công ty
T
12
3
hđơn
date
#
TÀI
KHOẢN
order
#
Hóa đơn
3.1.2. Lưu đồ hệ thống thủ cơng
Biểu đồ được chia thành những phần dọc biểu diễn những
hoạt động ở các vị trí khác nhau.
Biểu đồ được phát triển từ trái sang phải và từ trên xuống
dưới.
Những tài liệu được xuất hiện ngay gốc, đi vào một bộ
phận và sau đó đi ra (khi được u cầu) - tránh lẫn lộn với
những tài liệu khác.
Các tài liệu phải được sắp xếp, hủy bỏ, hay rời khỏi HT
theo đúng như lưu đồ, hay chuyển đến 1 lưu đồ khác.
8
4
3.1.2. Lưu đồ hệ thống thủ công
Ưu điểm
• Dễ hiểu & tiêu hóa hơn dạng tường thuật.
• Hiểu biết đầy đủ về những quy trình và sự tuần tự
của hoạt động trên tài liệu.
• Dễ dàng phát hiện tình trạng không đầy đủ trong
việc theo dõi nguồn gốc của 1 tài liệu.
Giúp PTV có nhu cầu cần phải điều tra nghiên
cứu thêm.
9
3.1.2. Lưu đồ hệ thống thủ công
Ưu điểm
• Ít kiến thức kỹ thuật để có thể đánh giá đúng
tài liệu Được dùng như 1 công cụ TT giữa
người sử dụng HT và PTV.
• Dễ dàng xác định những yếu điểm trong HT,
như tạo ra những tài liệu không cần thiết, thiếu
sự kiểm tra, lặp lại những công việc không cần
thiết và những điểm tắc nghẽn.
10
5
3.1.2. Lưu đồ hệ thống thủ công
Khuyết điểm
• Hệ thống lớn Khó quản lý hơn (tờ giấy lớn hơn!).
• Đôi khi cần sử dụng những ký hiệu kết nối hết giấy và
tiếp tục. Giảm yếu tố trực quan hình ảnh và tính rõ
ràng của lưu đồ.
• Chúng khó sửa đổi.
• TT không chính thức
là một phần quan trọng.
Không thể biểu diễn được bất kỳ 1 dạng nào của
những TT này.
11
3.1.2. Lưu đồ hệ thống thủ công
Bài tập: Sử dụng lưu đồ kiểm tra
• Có thể nào hàng hóa được xuất mà không được lập
hóa đơn không?
• Có thể nào đơn hàng đã nhận được mà không được
xử lý (hoàn toàn) không?
• Có thể nào khách hàng được lập hóa đơn nhưng
không được xuất vì kho không đủ để đáp ứng
không?
12
6
3.1.2. Lưu đồ hệ thống thủ công
Bài tập : Sử dụng lưu đồ kiểm tra
• Có
thể nào hàng hóa đã được xuất cho
khách hàng mà người này có tín dụng kém
không?
• Có thể xảy ra sai sót trong lập hóa đơn hàng
hóa không?
• Có khi nào đã lập hóa đơn mà không được
ghi lại không?
13
3.1.3. Sơ đồ dòng chảy dữ liệu
(DFD, Data Flow Diagram)
DFD mô tả quá trình luân chuyển dữ liệu trong 1 HTTT, bằng
các ký hiệu đồ họa.
DFD không mô tả chi tiết các bước xử lý, cũng như luận lý
chương trình.
DFD chỉ ra HT của chúng ta sẽ làm gì (What), không chỉ ra
cách thức thực hiện các công việc đó (How).
DFD sử dụng 4 ký hiệu để mô tả cho 4 đối tượng chính:
• Quá trình
(Process)
• Dòng dữ liệu (Data Flow)
• Kho dữ liệu
(Data Store)
• Thực thể ngoài (External Entity)
14
7
3.1.3. Sơ đồ dòng chảy dữ liệu
Các ký hiệu vẽ Sơ đồ DFD
Nguồn dữ liệu/Đích dữ liệu
(Thực thể ngoài hay
Tác nhân ngoài)
hay
Quá trình/Xử lý dữ liệu
Kho dữ liệu/Lưu trữ dữ liệu
Dòng (chảy) dữ liệu
15
Dòng dữ liệu
(Data Flow)
Dòng dữ liệu thể hiện dòng chảy dữ liệu giữa các bộ
phận trong HTTT.
Một dòng dữ liệu có thể chứa 1 hay nhiều phần tử dữ
liệu. VD: Khách hàng
DFD khơng mơ tả cấu trúc của dòng dữ liệu.
Một dòng dữ liệu phải đi vào hoặc đi ra 1 q trình
(Process).
Dòng dữ liệu có thể liên kết các q trình lại với
nhau.
Khách hàng
16
8
Tác nhân ngoài (Thực thể ngoài, Nguồn dữ liệu,
hay Đích dữ liệu)
(External Agent, External Entity)
Tác nhân ngoài là 1 người, đơn vị tổ chức, hoặc tổ chức khác nằm ngoài
HT đang xét, nhưng tương tác với HT đang xét.
Tác nhân ngoài có nhiệm vụ nhận hay cung cấp dữ liệu cho HT đang xét.
Tác nhân ngoài định nghĩa “biên” hay phạm vi của 1 HT đang xét.
Khi biên thay đổi, Các tác nhân ngoài có thể trở thành các quá trình, và
ngược lại.
Tác nhân ngoài là 1 trong các thành phần sau:
• Văn phòng, phòng ban, bộ phận bên trong doanh nghiệp nhưng
Khách hàng
nằm ngoài tầm vực của HT
• 1 tác nhân hoặc tổ chức bên ngoài
• 1 HTTT khác hoặc 1 nghiệp vụ khác
• 1 trong các nhà QL hoặc người sử dụng đầu cuối của HT
17
Kho dữ liệu
(Data Stores)
Kho dữ liệu là 1 kho (nơi) chứa dữ liệu.
Thường thực hiện ở dạng tập tin hoặc CSDL.
Kho dữ liệu là “dữ liệu tĩnh”, còn dòng dữ liệu là “dữ liệu động”.
Kho dữ liệu là 1 trong những dạng sau:
•
•
•
•
•
Con người (hoặc nhóm người)
Chi tiết khách hàng
Nơi chốn
Các đối tượng
Các sự kiện (về dữ liệu nào được nắm bắt)
Các khái niệm (về dữ liệu nào là quan trọng)
Kho dữ liệu mô tả trong DFD, lưu tất cả các thể hiện của các thực thể dữ
liệu.
18
9
Các loại Q trình luận lý
Chức năng là tập hợp các hoạt động có liên quan
hoặc đang diễn ra của 1 doanh nghiệp.
Sự kiện (hay giao dịch) là 1 đơn vị cơng việc luận lý,
phải được hồn thành độc lập (là 1 phần của chức
năng).
Q trình sơ đẳng (hay q trình cơ bản) là 1 nhiệm
vụ hoặc hoạt động ở dạng chi tiết, và rời rạc cần để
đáp ứng cho 1 sự kiện. Thơng thường, cần hồn thành
một số nhiệm vụ mới đáp ứng được 1 sự kiện.
19
Q trình
(Process)
1 HT là 1 Q trình.
Một q trình là
HT thực hiện cơng
việc để đáp ứng với
các dòng dữ liệu
vào hoặc các điều
kiện.
Q trình
Dữ liệu đầu vào
Dữ liệu đầu ra
Hệ thống
Dữ liệu đầu vào
Dữ liệu đầu ra
Là
Dữ liệu đầu vào
1 q trình
Dữ liệu đầu ra
Phản hồi và
điều khiển vòng lặp
Môi trường của hệ thống
(thường xuyên thay đổi)
20
10
Phân rã HT
(Decomposition)
Hệ thống
1
Chức năng
Phân rã HT là
hành động chia
nhỏ HT thành
các HT con
thành phần, các
q trình, và các
q trình con.
1.1
1.2
Hoạt động
Hoạt động
1.1.1
1.1.2
Công việc
Công việc
1.2.1
1.2.2
Công việc
Công việc
1.1.3
Công việc
2
Chức năng
2.1
2.2
Hoạt động
Hoạt động
2.1.1
2.1.2
2.2.1
2.2.2
Công việc
Công việc
Công việc
Công việc
2.1.3
2.2.3
2.2.4
Công việc
Công việc
Công việc
21
Các sơ đồ phân rã
Hệ thống
Sơ đồ phân
rã hoặc Sơ
đồ phân cấp
trình bày sự
phân rã HT
theo
chức
năng từ trên
xuống.
1
2
Chức năng
Chức năng
1.1
1.2
2.1
2.2
Hoạt động
Hoạt động
Hoạt động
Hoạt động
1.1.1
1.2.1
2.1.1
2.2.1
Công việc
Công việc
Công việc
Công việc
1.1.2
1.2.2
2.1.2
2.2.2
Công việc
Công việc
Công việc
Công việc
1.1.3
2.1.3
2.2.3
Công việc
Công việc
Công việc
2.2.4
Công việc
22
11
Phân rã sơ đồ DFD
Hệ thống
xử lý đơn
hàng
Sơ đồ ngữ cảnh
2
1
4
3
5
DFD mức 0: Hệ thống xử lý đơn hàng
23
2
1
4
3
5
DFD mức 0: Hệ thống xử lý đơn hàng
1.1
1.2
4.1
1.3
4.4
4.3
4.2
DFD mức 1 của quá trình 1:
Kiểm tra đơn hàng
DFD mức 1 của quá trình 4:
Cập nhật kho hàng
12
Quy tắc cân bằng Sơ đồ DFD
Sơ đồ ngữ cảnh
C
B
A
Hệ
thống
1
C
F
D
D
3.1
G
3.2
3
H
A
3.3
2
E
3.4
H
A
Sơ đồ DFD mức 1 của quá trình 3
4
B
Sơ đồ DFD mức 0
25
Các dạng dữ liệu khơng hợp lệ
B1
B1
B2
DS1
B1
B1
Q trình cần
để trao đổi
các dòng DL
giữa các tác
nhân ngồi
Q trình
cần để cập
nhật (hoặc
sử dụng) kho
DL
B2
DS1
26
13
Các dạng dữ liệu khơng hợp lệ (tt)
DS1
DS1
B1
DS2
Q trình
cần để trình
bày DL
trong kho
DL
DS1
Q trình
cần để
chuyển DL
giữa các
kho DL
DS1
B1
DS2
27
3.1.3. Lưu đồ dòng chảy dữ liệu (DFD)
Hàng hóa không đủ
Xử lý
Yêu cầu hàng hóa
hàng
hóa
Hàng hóa đủ
Chi tiết hàng hóa
Kho
28
14
Sơ đồ dòng dữ liệu đơn giản
(Simple Data Flow Diagram)
Các loại Quá trình phổ biến trong DFD
30
15
Các loại Quá trình phổ biến trong DFD
31
3.1.3. Lưu đồ DFD – Hướng dẫn
(1) Nhận định những quá trình chính.
(2) Nhận định những nguồn, đích và kho DL chính.
(3) Nhận định những dòng DL chính.
(4) Đặt tên những dòng chảy DL, quá trình, nguồn, đích và kho.
(5) Vẽ lưu đồ.
(6) Rà soát lại lưu đồ, cụ thể là kiểm tra những dòng chảy DL,
kho, nguồn, đích tương tự có cùng tên và những dòng chảy DL
khác nhau có tên khác nhau.
32
16
3.1.3. Lưu đồ ngữ cảnh
Danh sách
Ctiết khàng
Xử lý
đơn
hàng
Khàng
Tkhoản
Phiếu xuất
Kho
Đgói và
gởi đi
33
3.1.3. Lưu đồ DFD mức 1
GĐỐC
KTRA
TDỤNG
đhàng cty (được chấp nhận)
KHÀNG
đhàng của
khàng
1
đhàng
cty được
chnhận
đhàng cty (không được chấp nhận)
đhàng cty
ghạn tdụng khàng
và
thu chi khàng
giá loại hàng
yêu cầu
hhóa
D2 dsách
D3 ctiết khàng
giá loại hàng
2
xử lý
gdòch
hhóa
slượng
hàng hóa
D1 kho
3
ctiết xuất
của cty
ctiết
xuất của
cty
D4 ltrữ đhàng cty
ctiết hđơn
khàng
đhàng cty
hđơn cty
TKHOẢN
lập hóa
đơn
đhàng cty
và hđơn
và chi tiết
xuất
hđơn cty
KHÀNG
D5 đhàng/hđơn/xuất
ĐGÓI VÀ
GỞI ĐI
17
3.1.3. Lưu đồ DFD mức 2
GIÁM ĐỐC
đơn hàng công ty (duyệt)
KIỂM TRA
1.7
TÍN DỤNG
đchỉ khàng
pxuất
đhàng cty (khg duyệt)
D3 ctiết khàng
duyệt
1.6
bó
và
đhàng cty
gởi
đhàng cty (khg duyệt)
D4 ltrữ đhàng cty
D6 đhàng không được xác nhận
đhàng cty
đhàng cty (khg duyệt)
1.2
KHÁCH
HÀNG
đhàng
1.3
1.1
đhàng nhận đhàng chbò đhàng đgiá cty
mẫu
đhàng (giá)
đơn
cty
đhàng
cty
hàng
giá
mục hàng
1.4
đhàng
ttổng cty
đhàng (tổng)
cty
1.5
ktra
tín
dung
giới hạn
đhàng
tín dụng
cty
loại
kh hàng
hàng
vàbg qt
đhàng cty
D4 kho đơn hàng của công ty
kh hàng
D1 kho
D2 dsách
D3 ctiết khàng
2
xử lý
Giao
Dòch
khàng
3.1.3. Lưu đồ DFD – Vấn đề
Nên trình bày những q trình trên lưu đồ
dòng chảy dữ liệu ở mức nào?
Số q trình tối đa được trình bày trên một
lưu đồ dòng chảy dữ liệu là bao nhiêu?
36
18
3.1.3. Lưu đồ DFD – Vấn đề
Phân tích
Thiết kế
Chú tâm vào tìm hiểu bài
toán.
Chú tâm vào tìm hiểu lời
giải chọn lựa.
Yêu cầu - lý tưởng
Hiệu quả hoạt động
Chức năng
Cấu trúc HT
Các yêu cầu phi chức
năng
Một mô hình nhỏ
Mô hình lớn
37
3.1.4. Từ điển dữ liệu
Nơi lưu dữ liệu về dữ liệu
(TT chi tiết về dữ liệu)
Cấu trúc dữ liệu
Cách sử dụng dữ liệu trong tổ chức
Nhất quán
38
19
3.1.4. Từ điển dữ liệu
Tên
Loại
Cấu trúc
Sử dụng
39
3.1.4. Từ điển dữ liệu
Tên:
Loại:
Hóa đơn (hàng hóa)
Dòng dữ liệu
Cấu trúc:
Tổng hợp: (mã số hóa đơn, ngày lập hóa đơn, mã số khách
hàng, tên khách hàng, mã số đơn đặt hàng [mã số hàng hóa, đơn
giá, số lượng]*, Cộng, thuế, chiết khấu, tổng phải trả)
Những đặc tính sử dụng thông dụng:
xuất hóa đơn (3) – lưu tại bộ phận lập hóa đơn
nhập vào đích - kế toán
nhập vào đích - khách hàng
40
20
3.1.5. Bảng quyết định
Một chính sách là một tập hợp các luật có ảnh hưởng
đến một quá trình nghiệp vụ nào đó.
Bảng quyết định đặc tả một tập hợp các điều kiện và
các hành động tương ứng với các điều kiện đó (khi
được yêu cầu thực hiện một chính sách).
Khuyến khích khách hàng đặt hàng theo định hướng
của công ty.
Khó quản lý.
Tự động.
41
3.1.5. Bảng quyết định
Dạng Bảng quyết định
Những điều
kiện được
kiểm tra
Điều kiện
Nhập điều kiện
Phạm vi của
những hành
động có thể
thực hiện
Hành động
Dữ liệu nhập
42
21
3.1.5. Bảng quyết định
Ví dụ
3 hệ số xác định % tiền chiết khấu (giảm giá)
Tổng giá trị của đơn hàng 3% đối với những đơn
hàng trên 4000$.
Nếu giao hàng trong phạm vi 50 dặm 2% (Trong
trường hợp đã được chiết khấu 3% (đơn đặt hàng) sẽ
được chiết khấu thêm 1% nếu giao hàng trong phạm
vi 50 dặm).
Những khách hàng mua trên 100.000$ (doanh thu)
trong 12 tháng qua 2%.
43
3.1.5. Bảng quyết định
Ví dụ
Ñ ô n h a øn g > 4 0 0 0 $
P h a â n p h o á i < 5 0 d a ëm
D o a n h th u > 1 0 0 .0 0 0 $
T ie àn k h a áu trö ø
0%
1%
2%
3%
4%
5%
6%
Y
Y
Y
Y
Y
N
Y
N
Y
Y
N
N
N
Y
Y
N
Y
N
N
N
Y
N
N
N
X
X
X
X
X
X
X
X
44
22
3.1.5. Bảng quyết định
Ưu điểm
Biểu diễn dạng bảng rõ ràng liên kết những điều kiện với những hành
động và là công cụ TT tốt.
Loại mô tả tương ứng với phương pháp mà nhiều quá trình xử lý được
xem như những điều kiện xác định các hoạt động.
Bảo đảm gồm có toàn bộ tất cả các trường hợp có thể.
Được dùng để phát hiện mâu thuẫn và tính dư thừa trong tập các quy
luật.
Dễ dàng theo dõi hoạt động.
Dễ dàng được đưa vào đặc tả chương trình.
45
3.1.5. Bảng quyết định
Nhược điểm
Có thể trở nên rất lớn và rất rộng khi có
nhiều điều kiện.
Chỉ thích hợp khi biểu diễn những quá trình
không có hay ít có chồng lắp giữa đánh giá
các điều kiện và sự thi hành các hành động.
46
23
3.1.6. Lưu đồ logic
Dòng chảy
Hướng di chuyển giữa những ký hiệu (điều khiển) khác nhau.
Đầu cuối (bắt đầu / kết thúc)
Điểm bắt đầu hay kết thúc của lưu đồ
Quá trình / hành động
Minh họa sự hoạt động của bất kỳ 1 quá trình.
VD: cộng 1 vào tổng.
SAI (Không) Quyết định hay hỏi
Phân biệt giữa 2 trạng thái chọn lựa hệ quả là: dòng điều
khiển sẽ đi theo đường này hay đường kia. Chỉ có 2 trạng thái
chọn lựa trong 1 hộp quyết định, Đúng (Có) và Sai (Không).
ĐÚNG (Có)
47
Ví dụ: Lưu đồ logic biểu thị sự chấp thuận tín dụng ở Kismet.
START
Đặt tổng thực
hiện = 0
1
2
Còn tập đơn hàng
nào không?
Không
Gởi nội dung của
khay xuất đến bộ
phận xử lý đơn hàng
Có
Nhận đơn
hàng kế
Nhập tổng thực hiện
vào bảng tính tổng
hàng ngày
STOP
3
24
3
Không
Có cust. name
không?
Không
Có
Có customer #
không?
Có
Có cust. name
không?
Không
Có cust. name
trong tập tin?
Không
Gởi tập đhàng
đến GĐ kiểm
tra TD
Không
Có cust. #
trong tập tin?
Có
Phục hồi mẫu
ghi KH theo
cust. #
Có
Có
Thêm cust. # vào
đhàng và khôi
phục mẫu gởi KH
Thêm cust. name
vào đhàng và khôi
phục mẫu gởi KH
1
Có
Khôi phục bảng quyết toán
của KH và giới hạn TD
Gởi đhàng
đến GĐ
kiểm tra
TD
So sánh
cust. # và
cust. name?
Không
Có
Giá trị đhàng + trị quyết
toán > giới hạn TD?
Gắn vào mẫu
P22
Không
Đóng dấu “OK”
lên đhàng
Gởi đhàng và
mẫu đơn đến
GĐ kiểm tra TD
Gởi đhàng trở về quy
trình xử lý đhàng
Cộng giá trị vào tổng
thực hiện
Đặt đhàng
vào khay xuất
2
3.1.6. Lưu đồ logic
Ưu điểm
Biểu diễn các chuỗi hoạt động bằng hình ảnh.
Dễ hiểu và dễ theo dõi.
Thích hợp khi phải thêm vào các hoạt động và
đánh giá các điều kiện (so sánh phần này với các
bảng điều kiện).
Có thể dùng để mô tả những chương trình cho
những người lập trình.
50
25