
http://www.ebook.edu.vn
Huúnh Xu©n HiÖp - CNPM
138
1
12
2
g
gi
ia
ai
i
®
®o
o¹
¹n
n
t
th
hi
iÕ
Õt
t
k
kÕ
Õ
(
(D
DE
ES
SI
IG
GN
N
P
PH
HA
AS
SE
E)
)
Néi dung:
Kh¸i qu¸t chung
ThiÕt kÕ vµ trõu t−îng hãa
ThiÕt kÕ h−íng sù kiÖn
ThiÕt kÕ h−íng d÷ liÖu
ThiÕt kÕ h−íng ®èi t−îng
KiÓm thö
§¸nh gi¸

http://www.ebook.edu.vn
Huúnh Xu©n HiÖp - CNPM
139
1
1
12
2
2.
.
.1
1
1
K
K
Kh
h
h¸
¸
¸i
i
i
q
q
qu
u
u¸
¸
¸t
t
t
c
c
ch
h
hu
u
un
n
ng
g
g
(overview)
Hµng tr¨m kü thuËt thiÕt kÕ ®· ra ®êi trong h¬n 30 n¨m qua
ThiÕt kÕ h−íng sù kiÖn (action-oriented)
ph©n r· s¶n phÈm thµnh c¸c m«-®un cã tÝnh chÆt chÏ cao vµ Ýt g¾n kÕt
víi nhau
ThiÕt kÕ h−íng d÷ liÖu (data-oriented)
phô thuéc vµo cÊu tróc d÷ liÖu mµ c¸c xö lý ®−îc thùc hiÖn trªn ®ã
c¸c kü thuËt næi tiÕng nh− [Jackson, 1975;1983], [Wanier, 1976;1981]
vµ [Orr, 1981]
ThiÕt kÕ h−íng ®èi t−îng
d¹ng tæng hîp, bao gåm c¶ sù kiÖn vµ d÷ liÖu
§Çu vµo: tµi liÖu ®Æc t¶, cho biÕt s¶n phÈm ph¶i lµm g× (what ?)
§Çu ra: ®Ó ®¹t ®−îc nh÷ng c«ng viÖc ®· m« t¶ ë ®Çu vµo, s¶n phÈm ph¶i
thùc hiÖn nh− thÕ nµo (how ?)

http://www.ebook.edu.vn
Huúnh Xu©n HiÖp - CNPM
140
1
1
12
2
2.
.
.2
2
2
T
T
Th
h
hi
i
iÕ
Õ
Õt
t
t
k
k
kÕ
Õ
Õ
v
v
vµ
µ
µ
t
t
tr
r
rõ
õ
õu
u
u
t
t
t−
−
−î
î
în
n
ng
g
g
h
h
hã
ã
ãa
a
a
(design and abstraction)
Giai ®o¹n thiÕt kÕ phÇn mÒm cã 3 ho¹t ®éng chÝnh: kiÕn tróc, chi tiÕt vµ
kiÓm thö
ThiÕt kÕ kiÕn tróc (architectural design, general design, logical design,
high-level design): theo quan ®iÓm trõu t−îng hãa lµ ph©n chia s¶n phÈm
thµnh c¸c m«-®un
ThiÕt kÕ chi tiÕt (detailed design, modular design, physical design, low-
level design): chi tiÕt hãa tõng m«-®un
chän gi¶i thuËt
chän cÊu tróc d÷ liÖu
KiÓm thö thiÕt kÕ (design testing)

http://www.ebook.edu.vn
Huúnh Xu©n HiÖp - CNPM
141
1
1
12
2
2.
.
.3
3
3
P
P
Ph
h
h©
©
©n
n
n
t
t
tÝ
Ý
Ýc
c
ch
h
h
d
d
dß
ß
ßn
n
ng
g
g
d
d
d÷
÷
÷
l
l
li
i
iÖ
Ö
Öu
u
u
(data flow analysis - DFA)
ThiÕt kÕ h−íng sù kiÖn, t¹o ra c¸c m«-®un víi tÝnh chÆt chÏ cao
®Çu vµo: s¬ ®å dßng d÷ liÖu (data flow diagram - DFD)
sau khi hoµn thµnh DFD, nhµ thiÕt kÕ phÇn mÒm ph¶i hoµn tÊt c¸c
th«ng tin vµo/ra cña tõng module
§iÓm trõu t−îng hãa cao nhÊt ®Çu vµo (point of highest abstraction of
input): ®iÓm biÕn chuyÓn d÷ liÖu ®Çu vµo thµnh d÷ liÖu néi t¹i
§iÓm trõu t−îng hãa cao nhÊt ®Çu ra (point of highest abstraction of
output): ®iÓm biÕn chuyÓn d÷ liÖu néi t¹i thµnh ®Çu ra
a b c d e
f
g
h
®Çu vµo ®Çu ra
H×nh 12.1 ThÓ hiÖn d÷ liÖu vµ sù kiÖn cña s¶n phÈm b»ng DFD

http://www.ebook.edu.vn
Huúnh Xu©n HiÖp - CNPM
142
VÝ dô vÒ DFA : ®Õm sè tõ (words) trong tËp tin
m«-®un chu
y
Ón ®æi
a b c d e
f
g
h
®Çu vµo ®Çu ra
H×nh 12.2 C¸c ®iÓm trõu t−îng hãa cao nhÊt ®Çu vµo vµ ®Çu ra
m«-®un ®Çu vµo m«-®un ®Çu ra
®iÓm trõu t−îng hãa
cao nhÊt ®Çu vµo
®iÓm trõu t−îng hãa
cao nhÊt ®Çu ra
®äc tªn
tËp tin
c«ng
nhËn tËp
tin hîp lÖ
®Õm sè
tõ
hiÓn thÞ
sè tõ
®Þnh d¹ng
sè l−îng tõ
®· ®Õm
tªn
tËp tin tªn
tËp tin
c«ng
nhËn tªn
tËp tin ®Õm sè
tõ ®Þnh
d¹ng sè
tõ ®·
®Õm
®Çu ra
mong
®îi
®iÓm trõu t−îng hãa
cao nhÊt ®Çu vµo ®iÓm trõu t−îng hãa
cao nhÊt ®Çu ra
®Çu vµo t¹i ®©y ®Çu ra t¹i ®©y
H×nh 12.3 DFD t¹i lÇn lµm
m
Þ
n thø nhÊt

