BÀI GIẢNG
Bài 5-Mô hình tiến trình nghiệp vụ
Mô hình hóa tiến trình nghiệp vụ
Biểu đồ luồng dữ liệu (
) Đặc tả tiến trình nghiệp vụ bằng DFD
Quy trình phát triển đặc tả tiến trình nghiệp vụ
Thiết kế lôgic tiến trình xử lý hệ thống
Ví dụ
Oct - 2007
2
Tài liệu tham khảo
1.
Nguyễn Văn Vy. !"#"$%&""'('. Đại học Công
nghệ, 2007.
2.
Nguyên Văn Vỵ. "$%&""'(')*+&,-&./"*+01
*2) NXB Thống kê, 2002.
3.
Nguyễn Văn Vy. "$%&"./"'('345. NXB Khoa học
Tự nhiên và Công nghệ, Hà nội, 2007.
4.
Nguyễn văn Vy, Nguyễn Việt Hà. !"6"7#"89. Đại
học Công nghệ, 2006.
5. Grady Booch, James Rumbaugh, Ivar Jacobson. ":;<:=:
:;>:. Addison-Wesley, 1998.
6. Jeffrey A.Hoffer, Joey F.Gorge, Joseph S.Valacich. =:?@>:>
A@>>:>. 2th Edition, Addison Wesley Longman, Inc. 1999.
7. Sommerville. ?B:C::. 6th Edition, Addison- Wasley,
2001.
Oct - 2007
3
Mô hình hoá và vận dụng
$"D:
Mô hình hoá tiến trình nghiệp vụ là gì?
Công cụ sử dụng là gì?
Tại sao phải mô hình hóa?
Mô tả 1 mô hình gồm những nội dung gì?
Oct - 2007
4
Mô hình hoá tiến trình nghiệp vụ
Mô hình hoá tiến trình nghiệp vụ (modeling
business process) là sự biểu diễn đồ thị:
Các chức năng thu thập, thao tác, lưu trữ, phân
phối và trình diễn dữ liệu
Mối quan hệ trình tự giữa chúng, cũng như giữa
chúng và môi trường
của 1 hệ thống nghiệp vụ được xét
Nội dung 1 mô hình: (" 7E(5#" #E& &3@
F&E3@!"./"*+G>HI
Oct - 2007
5
Công cụ: biểu đồ luồng dữ liệu (DFD)
Mô hình: Biểu đồ luồng dữ liệu
$"DJ
Các khái niệm của mô hình?
Các ký pháp?
Các quy tắc xây dựng (KEL
K)? Quy trình phát triển 1 biểu đồ luồng dữ
liệu? (,@KEMLK)?
Phân biệt DFD vật lý và lôgic ?
Cách chuyển DFD vật lý sang DFD logic?
Oct - 2007
6
Các khái niệm
N)'!" (process)/N"@N>1&M.7&"O&
"/"0&P &0QR7/&"&"-
&"@SE"@0TE0*2&*RE#"$#"1"@
!"UTên tiến trìnhJ/N7"09VJ0
WXYTR
ZWJchỉ hành động
[TRJchỉ đối tượng dữ liệu chịu tác động
Q'!"J duy nhất, ngắn gọn, phản ánh được nội
dung hoạt động &phù hợp với người dùng.
Ví dụ: \]# (0W) 0^"/_YTR`
Oct - 2007
7
Các khái niệm
a) &"$ (&) là:
N*bEN"P*bENY#"]ENT&"c&
"@N(" &
d / #"K . "7 "1 0*2& efJ
("M"g&"7&"c&h/"&#"K
.0P
&P *^ & .+ P .9 O "M J
Hi"]R7WP
Tên tác nhânJ/N7"09"W
Ví dụ: " &" "/E $ "/E "7 ('
Oct - 2007
8
Các khái niệm
j)"R7 (data store) là các dữ liệu được lưu
trữ tại một chỗ, thường trên một vật mang. Cùng một
loại dữ liệu, trên cùng vật mang có thể lưu ở nhiều nơi
có nhiều kho cùng tên
Tên kho dữ liệuJ / N 7" 09 " WE &P "S /
&"%"Q.]
Ví dụ: các kho dữ liệu như: " &""/E#"'"]#
Oct - 2007
9
Các khái niệm
k)\VR7 (l) là các dữ liệu di chuyển
từ một ví trí này đến 1 ví trí khác trên 1 vật mang
nào đó. Vật mang dữ liệu có thể là 1 đối tương hay
đường truyền
Tên tác nhânJlà 1 mệnh đề danh từ, có thể lấy tên
vật mang
Ví dụ: "MY E0^0O"/
Oct - 2007
10
Các ký pháp đồ họa
Ký pháp của :./ Ký pháp của :&
Khái niệm
?> (1979) ./m (1979)
QV
\VR7
QV
&"$
Q &"$ Q &"$
n
Q'
Q'
'!"
!"
!"
Q("R7
"R7
Q("R7
Oct - 2007
11
Các quy tắc xây dựng biểu đồ
Tiến trình là duy nhất
Kho dữ liệu & tác nhân có thể vẽ lặp
Mọi tiến trình phải có ít nhất 1 luồng dữ liệu vào/ra
Dữ liệu qua các tiến trình cần được xử lý
các luồng ra khác các luồng vào
Các luồng dữ liệu đi vào đủ để tạo ra các luồng dữ
liệu ra: bảo tồn các dạng dữ liệu (vật chất)
Đối tượng chỉ có luồng dữ liệu ra hoặc vào chỉ có
thể là tác nhân
Oct - 2007
12
Các quy tắc xây dựng biểu đồ
Không có các luồng dữ liệu sau:
Từ tác nhân đến tác nhân
Từ tác nhân đến kho dữ liệu hay ngược lại
Từ kho dữ liệu đến kho dữ liệu
Luồng dữ liệu quay về nơi xuất phát
N
a
N
Oct - 2007
13
Quy tắc phân rã một tiến trình
Phân rã 1 tiến trình là phân chia nó
thành 1 biểu đồ luồng dữ liệu với các
tiến trình và luồng dữ liệu chi tiết hơn
Quy tắc phân rã (:&#>):
[4/& &@'1M*bQ
3J& & &"$EV\
Z4Y4"g&"7&"c&h&n'
!"0*2&ef
Z4Y4& &@QF&]#YS0V
Oct - 2007
14
Ví dụ: tiến trình 1.0 chọn để phân rã
1.0
0^"/
"g&0^
Nhận và xử
KHÁCH
" 0^
NHÀ BẾP
"9
lý đơn hàng
2.0
3.0
Cập nhật
Cập nhật thực
PhY "g&#"o&8
món ăn bán
phẩm sử dụng
D2 Món ăn đã bán
D1 thẻ kho thực phẩm
Oct - 2007
15
Ví dụ: phân rã 1 tiến trình
1.1
1.3
0^
"g&0^
0^
Nhận đơn
Chuyển đơn hàng
"/
"/
hàng
thành món ăn
0^
1.5
0^
Y4(Q
"/
"/
Lập bảng kê thực
3.0
0^ "g&#"o
đơn sử dụng
"/
1.2
1.4
Y4(Q
"
Lập hoá đơn
Lập bảng món
2.0
"/Y
0^
thanh toán
ăn đã bán
Oct - 2007
16
B
Sử dụng DFD để đặc tả Mô hình
xử lý nghiệp vụ
DFD được sử dụng để đặc tả:
Biểu đồ ngữ cảnh
Biểu đồ MHDFD vật lý của hệ thống hiện thời
Biểu đồ MHDFD logic của hệ thống hiện thời
Biểu đồ MHDFD logic cho hệ thống xây dựng
Biểu đồ MHDFD vật lý của hệ thống xây dựng
Oct - 2007
17
Tiến trình xây dựng các biểu đồ MH
=M
Phát triển
Phát triển
Phát triển
"!"
p
DFD
các DFD
các DFD
"7#
mức 0 (a)
mức 1 (b)
mức n (b)
.I
=M"!"
eH5
p
"7#
c&q
c&N
c&
.I
Oct - 2007
18
Sơ đồ hình thành các biểu đồ
biểu đồ ngữ
[
A
0
cảnh
a
A
3.0
[
biểu đồ mức 0
1.0
2.0
b
N)q
2.3
3.1
[
hai biểu đồ
A
p
mức 1
3.2
2.1
2.2.
c
& & &
a)N
2.2.2
"$
biểu đồ mức 2
p
_",#",)
2.2.1
2.2.3
& &'!"
&^>r
Oct - 2007
19
a. Qui trình phát triển biểu đồ mức 0
Đầu vàoJM"!""7#.IJ
(1) Biểu đồ ngữ cảnh
(2) Biểu đồ phân rã chức năng
(3) Mô tả chi tiết chức năng lá
(4) Các hồ sơ sử dụng
(5) Ma trận thực thể chức năng
(6) Biểu đồ hoạt động
Các bước tiến hành:
Oct - 2007
20
a. Qui trình phát triển biểu đồ mức 0
Các bước tiến hành
Xuất phát từ biểu đồ ngữ cảnh
Thực hiện lần lượt j" &:
1. Thay thế tiến trình duy nhất của biểu đồ ngữ
cảnh (1) = các tiến trình con tương ứng với
các chức năng mức 1 trong biểu đồ#"$
s&"c&h (2)
2. Giữ nguyên các tác nhân, kho dữ liệu và
luồng dữ liệu từ (1) và chuyển sang. 8
0O08-LVR7./'
!"&"%&""2#
Oct - 2007
21
a. Qui trình phát triển biểu đồ mức 0
Các bước tiến hành (tiếp):
3.Thêm vào:
các kho dữ liệu: L (" *^ c
.+N"V>^(4)
& &VR7R("R7
./'!": mỗi luồng tương ứng với
1 chữ (R,U,C) trong (5)
Các luồng dữ liệu giữa 2 tiến trình
dựa trên mô tả ở (3) và (6)
Oct - 2007
22
Ví dụ: phát triển biểu đồ mức 0
q
k
7
"1
))e:
lđ
[4
.te:
1.0
2.0
#"4"V
Nhận xe
Trả xe
q
khách
.te:
"')
Y
ufe:
"vÐ sai"
N a j k
DS thực thể
&
:
"')
?Te:./
?Te:
. xxxx
khách
Y. xxxx
&. xxxx
. xxxx
:. xxxx
t.T sự cố
B. xxxx
"'&"
3.0
“không q.q”
. xxxx
Lãnh
đạo
công ty
@i&Y
&
". xxxx
4.0
43@'
>g&1
[QY4
[QY4B
Báo cáo
Y&:B"
"'&"
N
v;v[ &
"
[ &
a vv ;
j vv
Oct - 2007
k v vvv v v
b. Qui trình phát triển biểu đồ mức i
Đầu vào: YS0Vrc&
N Các bước tiến hành:
Xuất phát từ 1 tiến trình trong biểu đồ mức i-1
mà chưa tương ứng với 1chức năng lá trong (2)
Thực hiện liên tiếp j" &:
1. Thay thế tiến trình được chọn = các tiến trình
con tương ứng với các chức năng mức i+1
trong biểu đồ#"$s&"c&h (2)
Oct - 2007
24
b. Qui trình phát triển biểu đồ mức i
Các bước tiến hành (tiếp)
2. Giữ nguyên các tác nhân, kho dữ liệu và
luồng dữ liệu liên quan với tiến trình đã
chọn từ biểu đồ mức i-1 và chuyển sang.
"-5:
'&P'!"Q3.+PrYS
0Vc&N"!"QYdN &"$+
80O& &08-&n& &VR
7./'!"&+N& &""%&"
"2#
3. Thêm vào các luồng dữ liệu giữa 2 tiến trình
dựa trên mô tả ở (3) và (6)
Oct - 2007
25