Professional Documents
Culture Documents
>
`
)
31
4. Ghi ho n cho khch.
5. Nhn tin v giao hng ho cho khch.
- c t c php: Thc cht l cc nh ngha c tnh truy hi t tng th n c s. M t
cch lp ghp cc k hiu, cc t vi nhau li to thnh chng trnh. V d: Trong ngn
ng lp trnh PASCAL, tn (nh danh - identify) c khi qut nh sau: L dy cc k t
bt u bng ch ci hoc du gch ni di, sau c th l ch s, ch ci hoc du gch
ni di.
<nh danh> = <ch ci> <nh danh> <k t>
<k t> = <ch ci> <ch s>
<ch ci> = { A, B, C, , Z } { a, b, , z }
<ch s> = { 0, 1, 2, , 9 }
- c t qua s :
V d: c t nh danh
c t phn s
g. c t thut ton: Cc bc thao tc gii quyt bi ton.
Kiu c t phi ph hp vi gii php. Cc yu cu ca phn mm c th c phn tch
theo mt s cch khc nhau. Cc k thut phn tch c th dn ti nhng c t trn giy hay trn
my tnh (c xy dng nh CASE) c cha cc m t ngn ng ho v t nhin cho yu cu
phn mm. Vic lm bn mu gip c t c th c trin khai, tc l bn mu s th hin nhng
cng vic thc hin cc yu cu. Cc ngn ng c t hnh thc dn n biu din hnh thc.
Cc nguyn l c t.
c t c th xem nh mt tin trnh biu din. Mc ch cui cng ca c t l cc yu
cu c biu th sao cho dn ti vic ci t phn mm thnh cng. Balzer v Goldman ngh 8
nguyn l c t tt.
Nguyn l 1: Phn tch chc nng vi ci t.
Trc ht, theo nh ngha, c t l mt m t v iu mong mun, ch khng phi l cch
thc hin n (ci t). c t c th chp nhn 2 dng hon ton khc nhau. Dng th nht l dng
ca cc hm ton hc: Vi mt tp d liu u vo cho, to ra mt tp d liu u ra c bit.
Dng tng qut ca c t nh th l tm ra (mt hoc tt c nhng) kt qu ng vi P (u vo),
vi P biu th mt tn t bt k. Trong c t nh th, kt qu thu c phi c din t mt cch
A Z
a z
;
;
a c b c
c d
a d b d
>
`
)
A Z, a z
0 9
;
;
a c b c
c d
a d b d
>
`
)
+ , -
;
;
a c b c
c d
a d b d
>
`
)
0 9
;
;
a c b c
c d
a d b d
>
`
)
/
0 9
1 9
32
y , ton vn, theo dng l ci g (khng phi l nh th no). Mt phn iu ny l v kt
qu ca mt hm (ton hc) ca u vo (php ton c im bt u v im kt thc xc nh
r) khng b nh hng bi mi trng bao quanh.
Nguyn l 2: Cn ngn ng c t h thng hng tin trnh.
Xt tnh hung trong mi trng l ng v s thay i ca n nh hng ti hnh vi ca
thc th no tng tc vi mi trng (nh trong h thng my tnh nhng). Hnh vi ca
n khng th biu din c dng hm (ton hc) ca u vo. Thay v th, cn phi s dng cch
biu din khc - cch m t hng tin trnh, trong c t ci g t c bng cch xc nh
mt m hnh cc thao tc mong mun t c ca h thng di dng cc cng vic p ng chc
nng i vi kch thch khc nhau t mi trng.
Nhng c t hng tin trnh nh vy, trnh by mt m hnh v hnh vi h thng, thng
thng b loi ra khi cc ngn ng c t hnh thc, nhng chng li l bn cht nu nhiu tnh
hung ng phc tp hn cn phi c c t. Trong thc t, cn phi tha nhn rng trong nhng
tnh hung nh vy c tin trnh cn t ng ho ln mi trng tn ti ca n u phi c m t
mt cch hnh thc. Tc l, ton b h thng cc b phn tng tc phi c c t ch khng ch
mt thnh phn c c t.
Nguyn l 3: c t phi bao gm h thng c phn mm l mt thnh phn trong
Mt h thng bao gm cc thnh phn tng tc nhau. Ch bn trong hon cnh ca h
thng ton b v tng tc gia cc thnh phn ca n th hnh vi ca mt thnh phn ring mi c
th c xc nh. Ni chung, mt h thng c th c m hnh ho nh mt tp hp cc s vt
tch cc v th ng. Nhng s vt ny c lin quan ln nhau v qua thi gian th mi quan h gia
cc s vt thay i. Mi quan h ng ny a ra s kch thch cho cc s vt tch cc, cn gi l
cc tc nhn, p ng. S p ng c th gy ra nhng thay i thm na, v do , to ra thm
kch thch cho cc tc nhn c th p ng li.
Nguyn l 4: c t phi bao gm c mi trng m h thng vn hnh.
Tng t, mi trng m trong h thng vn hnh v tng tc vi cng phi c xc
nh.
May mn l iu ny n thun ch cn s tha nhn rng bn thn mi trng cng l mt h
thng bao gm cc s vt tng tc, c tch cc ln th ng, m trong h thng ch l mt tc
nhn. Cc tc nhn khc, theo nh ngha l khng thay i bi v chng l mt phn ca mi
trng, gii hn phm vi ca vic thit k v ci t v sau. Trong thc t, s khc nhau duy nht
gia h thng v mi trng ca n l ch n lc thit k v ci t v sau s vn hnh ch trong
c t cho h thng. c t mi trng lm cho giao din ca h thng c xc nh theo cng
cch nh bn thn h thng ch khng a vo cch hnh thc khc.
Cn phi ch rng bc tranh c t h thng c trnh by y chnh l bc tranh ca
tp hp cc tc nhn xon xut nhau cao phn ng vi nhng kch thch trong mi trng (thay
33
i cc s vt) do cc tc nhn to ra. Ch c thng qua nhng hnh ng iu phi ca tc nhn
m h thng mi t ti mc tiu ca n. S ph thuc ln nhau vi phm vo nguyn l phn tch
(c lp vi cc phn khc ca h thng v mi trng). Nhng y l mt nguyn l thit k, khng
phi l nguyn l c t. Thit k tun theo c t, v quan tm ti vic phn r mt c t thnh cc
mu gn tch bit chun b cho ci t. Tuy nhin c t phi v li chnh xc bc chn dung ca
h thng v mi trng ca n nh cng ng ngi dng cm nhn theo mt cch thc nhiu chi
tit nh cc giai on ci t v thit k cn ti. V mc chi tit cn thit ny l kh thy trc,
nu khng ni l khng th, nn c t, thit k v ci t phi c tha nhn nh mt hot ng
tng tc. Do iu mu cht l cng ngh cn c bao qut tht nhiu cho hot ng ny khi
bn c t c son tho v thay i (trong c hai giai on pht trin khi u v bo tr v sau).
Nguyn l 5: c t h thng phi l mt m hnh nhn thc.
c t h thng phi l mt m hnh nhn thc ch khng phi l mt m hnh thit k hay
ci t. N phi m t mt h thng nh cng ng ngi s dng cm nhn thy. Cc s vt m n
thao tc phi tng ng vi cc s vt ca lnh vc ; cc tc nhn phi m hnh cho cc c nhn,
t chc v trang thit b trong lnh vc ; cn cc hnh ng h thc hin th phi m hnh cho
nhng hot ng thc t xut hin trong lnh vc.
c t phi c kh nng t hp vo trong n nhng qui tc hay lut bao trm cc s vt
thuc lnh vc. Mt s trong nhng trng hp l lut bi tr nhng trng thi no ca h thng
(nh hai s vt khng th ng thi cng mt ch v vo cng mt lc), v do gii hn hnh
vi ca cc tc nhn hay ch ra nhu cu son tho thm ngn cn nhng trng thi ny khi ny
sinh. Cc lut khc m t cch cc s vt p ng li khi b kch thch (nh lut chuyn ng ca
Newton). Nhng lut ny, biu th cho tnh vt l ca lnh vc, l phn c hu ca c t h
thng.
Nguyn l 6: c t phi th hin tnh vn hnh.
c t phi y v hnh thc c th c dng trong vic xc nh liu mt ci t
c ngh c tho mn c t cho nhng trng hp kim th tu khng. Tc l, vi kt qu
ca vic ci t trn mt tp d liu c chn mt cch tu , phi c th dng c t xc nh
tnh hp l cho nhng kt qu . iu ny ko theo rng c t, mc du khng phi l mt c t
hon ton v cch thc, vn c th hnh ng nh mt b sinh cc hnh vi c th trong s nhng
hnh vi phi c ca ci t c ngh. Do , theo mt ngha m rng, c t ny phi l vn
hnh ...
Nguyn l 7: c t chp nhp dung sai v tnh khng y .
Khng c t no c th l y hon ton. Mi trng trong n tn ti thng qu
phc tp cho iu . Mt c t bao gi cng l mt m hnh - mt s tru tng ho - ca mt
tnh hung thc (hay c mng tng) no . Do , n s khng y . Hn th na, nh
c pht biu n s tn ti ti nhiu mc chi tit. Tnh vn hnh c yu cu trn khng nht
34
thit l cn thit. Cc cng c phn tch c s dng gip cho ngi c t v kim th c
t phi c kh nng x l vi tnh khng y . Mt cch t nhin iu ny lm cho vic phn tch
b yu i, khi c th c thc hin bng cch m rng phm vi cc hnh vi chp nhn c tha
mn cho c t, nhng mt s suy gim nh vy phi phn nh cc mc bt trc cn li.
Nguyn l 8: c t phi c cc b ho v c ghp lng lo.
Cc nguyn l trc x l c t nh mt thc th tnh. Thc th ny ny sinh t ci ng ca
c t. Cn phi tha nhn rng mc du mc tiu chnh ca mt c t l dng lm c s cho
thit k v ci t mt h thng no , n khng phi l mt s vt tnh dng sn m l mt s vt
ng ang tri qua thay i ng k. Vic thay i nh th xut hin trong ba hot ng chnh: pht
biu, khi mt c t ban u ang c to ra, pht trin, khi c t c son tho trong qu trnh
thit k lp phn nh mi trng thay i v / hoc cc yu cu chc nng ph.
Vi nhiu thay i xut hin cho c t, iu mu cht l ni dung v cu trc ca n c
chn lm ph hp hot ng ny. Yu cu chnh cho s ph hp l ch thng tin bn trong
c t phi c cc b ho sao cho ch mt phn nh (mt cch l tng) cn phi sa i khi
thng tin thay i, v ch c t cn c cu trc (ghp) mt cch lng lo cho tng phn c
th c thm vo hay loi b mt cch d dng, v cu trc c iu chnh mt cch t ng.
Mc du cc nguyn l c Balzer v Goldman tn thnh tp trung vo tc ng ca c t
trn nh ngha v ngn ng hnh thc, nhng li bnh lun ca h p dng c cho c mi dng
c t. Tuy nhin, cc nguyn l cn phi c dch thnh s thc hin. Trong mc sau chng ta s
xem xt mt tp cc hng dn to ra mt c t cc yu cu.
Cc mc tru tng ca c t.
Cc c t c th hin mt vi mc tru tng khc nhau cng vi mi tng lin gia
cc mc y. Mi mc nhm n cc i tng c khc nhau m h c quyn quyt nh v vic
da vo m thc hin nh gi bn thit k ca cc nh pht trin phn mm. Cc mc l:
Mc 1: nh ra yu cu.
c th hin bng ngn ng t nhin v cc dch v m h thng s phi cung cp. Phn
ny phi c vit sao cho d hiu i vi khch hng v ngi qun l hp ng, ngi s mua
sn phm phn mm v ngi s s dng n. K thut c t phi hnh thc l thch hp cho mc
c t ny.
Mc 2: c t yu cu.
Ti liu nu ra cc dch v mt cch chi tit hn. Ti liu ny i khi cn c gi l ti liu
c t chc nng. Yu cu i vi c t mc ny l phi chnh xc n mc c th lm c s cho
hp ng gia nh pht trin phn mm v khch hng. ng thi cng cn c vit sao cho d
hiu i vi nhn vin k thut ca c ni mua phn mm v ni pht trin h thng. K thut c
t hnh thc hn l thch hp cho mc c t nh vy, tuy nhin cng cn tu thuc vo trnh
kin thc c bn ca khch hng. Tt hn c l ta c th dng loi hnh hn hp c t.
35
Mc 3: c t phn mm / c t thit k (y l m t tru tng cho phn mm).
Dng lm c s cho vic thit k v thc thi. Cn th hin mt quan h r rng gia t liu ny v
c t yu cu. Ta phi xc nh rng: i tng c y ch yu l cc k s phn mm ch
khng phi l ngi s dng hoc ngi qun l. K thut c t hnh hnh thc l hon ton ph
hp cho mc c t ny.
3.4. Xt duyt yu cu (Requirements validation)
Vic xt duyt bn c t yu cu phn mm (v/ hoc bn mu) do c ngi pht trin phn
mm v khc hnh cng tin hnh. Bi v c t to nn nn tng cho giai on pht trin nn cn
phi cc k cn thn trong khi tin hnh cuc hp xt duyt.
Vic xt duyt trc ht c tin hnh mc v m. Ti mc ny, ngi xt duyt c gng
m bo rng bn c t c y , nht qun v chnh xc. Cn cp ti cc cu hi sau:
1. Cc mc tiu v mc ch c thit lp cho phn mm c nht qun vi mc tiu v
mc ch ca h thng hay khng?
2. Nhng giao din quan trng vi mi phn t h thng c m t cha?
3. Lung v cu trc thng tin c m t thch hp cho lnh vc vn cha?
4. Cc biu c r rng khng? Liu mi biu c th ng ring khng li gii thch
khng?
5. Cc chc nng chnh c cn bn trong phm vi v c m t thch hp cha?
6. Liu hnh vi ca phn mm c nht qun vi thng tin n phi x l v chc nng n phi
thc hin hay khng?
7. Cc rng buc thit k c hin thc khng?
8. Ri ro cng ngh pht trin l g?
9. Cc yu cu phn mm khc c xem xt n cha?
10. Cc tiu chun hp l c pht biu chi tit cha? Chng c thch hp m t mt h
thng thnh cng khng?
11. Liu c s khng nht qun, b st hay d tha no khng?
12. Vic tip xc vi khch hng c y khng?
13. Ngi dng xt duyt bn Ti liu s b ca ngi dng hay bn mu cha?
14. Cc c lng v K hoch d n phn mm b nh hng th no?
a ra cu tr li cho nhiu cu hi trn, vic xt duyt c th tp trung vo mc chi tit.
Ti y, mi quan tm ca chng ta l vo t ng ca bn c t. Chng ta c gng lm l ra vn
c th n nu bn trong ni dung c t. Nhng hng dn sau y l gi v vic xt duyt chi tit
bn c t:
- Phi quan st cc mi ni c sc thuyt phc (nh chc chn, do , r rng, hin nhin,
t suy ra rng) v hi Ti sao chng li c ?
36
- Theo di nhng thut ng mng lung (nh mt s, i khi, thng, thng thng, bnh
thng, phn ln, a s); yu cu lm sng t.
- Khi c nu danh sch, nhng khng y , th phi m bo mi khon mc u c hiu r.
Ch vo cc t nh vn vn, c nh th, c tip tc nh th, sao cho.
- Phi chc chn pht biu phm vi khng cha nhng gi thit khng c ni r (nh m hp l
trong khong 10 ti 100. l s nguyn, s thc hay s h 16?
- Phi nhn bit v cc ng t m h nh x l, loi b, nhy qua, xo b C th c
nhiu cch hiu v n.
- Phi nhn bit cc i t vu v (nh m un vo/ra lin lc vi m un kim tra tnh hp l
d liu v t c bo kim sot ca n. C kim sot ca ai? ).
- Tm cc cu c cha s chc chn (nh bao gi, mi, tt c, khng mt, khng bao
gi) ri yu cu bng chng.
- Khi mt thut ng c nh ngha tng minh ti mt ch th hy th thay th nh ngha ny
vo ch xut hin ca n.
- Khi mt cu trc c m t theo li th hy v ra bc tranh gip hiu c n.
- Khi mt tnh ton c xc nh th hy th vi t nht hai th d.
Mt khi vic xt duyt hon tt th bn bn c t yu cu phn mm s c c khch
hng ln ngi pht trin k tt. Bn c t tr thnh mt hp ng cho vic pht trin phn
mm. Nhng thay i trong yu cu c nu ra sau khi bn c t hon thnh s khng b hu
b. Nhng khch hng phi lu rng tng thay i sau khi k u l mt m rng ca phm vi
phn mm v do c th lm tng thm chi ph v / hoc ko di lch biu (thi gian thc hin).
Ngay c vi nhng th tc xt duyt tt nht ti ch th mt s vn c t thng thng vn
cn li. Bn c t rt kh kim th theo mi cch c ngha, v do s khng nht qun hay
b st c th b b qua khng ti. Trong khi xt duyt, ngi ta c th khuyn co nhng thay
i cho bn c t. C th s cc k kh khn lng nh tc ng ton cc ca thay i; tc l,
lm sao vic thay i trong mt chc nng li nh hng ti cc yu cu cho chc nng khc?
Bi tp:
1. Trnh by cc k thut thu thp yu cu
2. Trnh by m hnh phn tch yu cu
3. Trnh by cc ti liu c t yu cu
37
Chng 4: M hnh ha h thng
4.1. M hnh ha d liu (Data modeling)
M hnh ho d liu trong Cng ngh phn mm l qu trnh to ra m hnh d liu bng cch p
dng cc m t m hnh d liu s dng cc k thut m hnh ho d liu.
M hnh ho d liu xc nh v phn tch cc yu cu d liu cn thit cho qu trnh nghip v ca
mt t chc. Cc yu cu d liu c biu din bi m hnh d liu khi nim v c ci t
trong m hnh d liu logic.
Qu trnh m hnh ho d liu
4.2. M hnh ha chc nng (Functional modeling)
M hnh chc nng l biu din c cu trc v cc chc nng, cc hot ng, v cc qu trnh bn
trong h thng.
Phn r chc nng l qu trnh phn r cc mi quan h c tnh chc nng thnh cc phn nh hn
m da vo c th xy dng li h thng.
V d v phn r chc nng:
38
Phng php:
S dng biu khi lung chc nng
S dng k thut phn tch v thit k hng cu trc
4.3. M hnh ha lung thng tin (Information flow modeling)
Biu lung d liu l biu din ho ca lung d liu trong mt h thng thng tin.
Mi mt s dng d liu thng gm cc thnh phn chc nng hoc tin trnh, dng d liu,
kho d liu v cc i tng.
- Chc nng: trong s dng d liu, chc nng hay tin trnh l mt qu trnh bin i thng tin.
T thng tin u vo n bin i, t chc li thng tin, b sung thng tin hoc to ra thng tin mi,
t chc thnh thng tin u ra, phc v cho hot ng ca h thng nh lu vo kho d liu hoc
gi cho cc tin trnh hay i tng khc.
39
- Dng d liu: Dng d liu l dng chuyn di thng tin vo hoc ra khi mt tin trnh,mt chc
nng, mt kho d liu hoc mt i tng no . Cc thnh phn ca dng d liu bao gm ng
biu din dng, mi tn ch hng dch chuyn thng tin v tn ca dng. Cn ch l cc dng d
liu khc nhau phi mang tn khc nhau, v cc thng tin tri qua thay i th phi c tn mi cho
ph hp.
- Kho d liu: Trong s dng d liu, kho d liu th hin cc thng tin cn lu tr. Di dng
vt l, kho d liu ny c th l tp ti liu, cp h s hoc tp thng tin trn a. Trong s dng
d liu, di tn kho d liu chng ta s ch quan tm ti cc thng tin c cha trong .
Trong mt trang s dng d liu ta c th t mt kho d liu nhiu ch, nhm gip vic th
hin cc dng d liu tr nn d dng hn.
- Tc nhn ngoi: Tc nhn ngoi c th l mt ngi, mt nhm ngi hoc mt t chc bn ngoi
h thng, nhng c mi lin h vi h thng.
- Tc nhn trong: Tc nhn trong l mt chc nng hoc mt tin trnh bn trong h thng, c
miu t trang khc ca s .
- S ng cnh: S ng cnh(Context Diagrams) bao gm ba nhm thnh phn:
+ Thnh phn chnh l mt vng trn nm v tr trung tm va s , biu th cho ton b
h thng ang c nghin cu.
+ Xung quanh vng trn trung tm ny l tt c cc phn t bn ngoi, c quan h vi h
thng (tc nhn ngoi).
+ Tt c cc ng truyn thng tin vo v ra khi h thng (ngha l ni h thng vi mi
tc nhn ngoi ca n).
V d v biu lung d liu:
Bi tp:
1. Trnh by Biu Phn r chc nng
2. Trnh by biu lung d liu
40
Chng 5: Thit k h thng
Trong i sng hng ngy, khi mt ngi no cn xy dng mt ngi nh, ngi mi mt
k s xy dng n, yu cu thit k cho h ngi nh. Vi cc s liu v cn nh cn xy dng. Cn
c vo , ngi k s s thit k ra m hnh ngi nh. y khng phi l ngi nh c c
xy dng trong thc t, m ch l trn bn v. Nhng thng qua m hnh , cng vi s m t chi
tit ca ngi k s, ch nh cng c th hnh dung ra ngi nh ca mnh. Bn thit k ny rt quan
trng, n gip cho ch nh cng vi k s xy dng hiu v cng vic mnh cn lm, nu c yu
cu chnh sa th thc hin ch trn bn v. Cn khi bt tay vo xy dng thc t th vic chnh
sa lc ny s rt kh khn v tn km.
Khi sn xut phn mm cng vy. R rng, yu cu ca khch hng cng khng khc g yu cu
cn xy ngi nh ca ch nh n. Cng vic ca k s xy dng v k s phm mm theo tng giai
on cng c nhiu im chung. Ta hy xem xt bng so snh sau:
K s xy dng K s phn mm
- Kho st a hnh, tm hiu nhu cu ca ch
nh: cn xy nh bao nhiu tng, kch thc
bao nhiu, trang tr nh th no,
- Tm hiu nhu cu khch hng, kho st
h thng, ly s liu,
- Thit k ngi nh trn bn v - Thit k phn mm, a ra m hnh
- Tm hiu kin ch nh v bn thit k - Duyt li vi khch hng
- Thc hin cc chnh sa nu cn - Thc hin cc chnh sa nu cn
- Cho thi cng ngi nh - Tin hnh ci t chng trnh
Thit k l bc u tin trong giai on pht trin cho bt k sn phm hay h thng cng ngh
no. N c th c nh ngha l " tin trnh p dng nhiu k thut v nguyn l vi mc ch
xc nh ra mt thit b, mt tin trnh hay mt h thng chi tit cho php thc hn n v mt
vt l."
Mc tiu ca thit k l to ra mt m hnh hay biu din ca mt thc th (s vt: ngi nh,
chic xe hi, ci cu, ) m sau ny c xy dng.
Thit k l mt qu trnh sng to, i hi kinh nghim v s tinh nhanh ca ngi thit k.
Thit k phi c thc hnh v hc bng kinh nghim, bng kho st cc h thng ang tn ti,
khng th hc bng sch v (ni ng ra l khng ).
Thit k phn mm l mt qu trnh chuyn ho cc yu cu thnh mt biu din phn mm.
Bc u, biu din m t ton b v phn mm. Vic lm mn tip theo sau dn ti mt biu din
thit k gn vi chng trnh gc.
Thit k phn mm nm trung tm k thut ca tin trnh k ngh phn mm v c p dng
bt k khun cnh k ngh c s dng (thc nc, xoy c, bn mu, th h th 4 - 4GT, ).
41
Mt khi cc yu cu v phn mm c phn tch v c t th thit k phn mm l mt trong
ba hot ng k thut - thit k, lp trnh, kim th - nhng hot ng cn xy dng v kim
chng phn mm. Tng hot ng ny bin i thng tin theo cch cui cng to ra phn mm my
tnh hp l.
Lung thng tin trong giai on k thut ny ca tin trnh k ngh phn mm c minh ho
trong s sau:
Cc yu cu phn mm, c biu th bi cc m hnh thng tin, chc nng v hnh vi l ci
vo cho bc thit k. Bng vic s dng mt trong s cc phng php thit k, bc thit k to
ra thit k d liu, thit k kin trc v thit k th tc.
- Thit k d liu: Chuyn m hnh lnh vc thng tin to ra trong bc phn tch thnh cu
trc d liu s cn cho vic ci t phn mm.
- Thit k kin trc: nh ngha ra mi quan h gia cc thnh phn cu trc chnh ca chng
trnh.
"Hnh mu thit k" c th c dng t ti cc yu cu c xc nh cho h thng, v
nhng rng buc nh hng ti cch m cc hnh mu thit k kin trc ny c th c p dng.
Biu din thit k kin trc - khun kh ca h thng da trn my tnh - c th c suy ra t c
t h thng, m hnh phn tch v tng tc ca cc h con c nh ngha bn trong m hnh phn
tch.
M hnh
thng tin
M hnh
chc nng
M hnh
hnh vi
Cc yu
cu khc
Thit
k
Lp
trnh
Kim
th
Thit k d liu (cu trc, cch
lu tr, cch khai thc)
Thit k kin trc (thnh phn,
cu trc chng trnh, v mi
quan h gia chng)
Thit k th tc (m t th
tc phn mm ng vi tng
thnh phn cu trc)
Module
chng trnh
Phn mm
qua tch hp v
kim th
Thit k phn mm v k ngh phn mm
Thit k
giao din
42
- Thit k giao din: M t cho cch phn mm trao i vi chnh n, vi h thng lin tc vi n,
v vi ngi dng n. Giao din bao gm mt lung thng tin (nh d liu v / hoc iu khin) v
cc kiu hnh vi c bit. Do , cc biu lung d liu v iu khin cung cp nhiu thng tin
cn cho thit k giao din.
- Thit k th tc: Bin i cc thnh phn cu trc ca kin trc phn mm thnh m t th tc
cho cc cu phn phn mm. Chng trnh gc c sinh ra ri vic kim th c tin hnh
tch hp v lm hp l.
Trong khi thit k chng ta ra cc quyt nh m cui cng s nh hng ti s thnh cng
ca vic xy dng phn mm v iu quan trng l nh hng ti s d dng bo tr n. Nhng ti
sao thit k li quan trng?
Tm quan trng ca thit k phn mm c th c pht biu bng mt t - cht lng.
Thit k l ni cht lng c nui dng trong vic pht trin phn mm: cung cp cch biu
din phn mm c th c xc nhn v cht lng, l cch duy nht m chng ta c th chuyn
ho mt cch chnh xc cc yu cu ca khch hng thnh sn phm hay h thng phn mm cui
cng. Thit k phn mm phc v nh mt nn tng cho mi bc k ngh phn mm v bo tr:
Tm quan trng ca thit k:
- Khng c thit k, ta c nguy c dng ln mt h thng khng n nh - mt h thng s
tht bi khi c mt thay i nh; mt h thng kh c th m th c; mt h thng khng th no
xc nh c cht lng chng no cha n cui tin trnh kim th, khi thi gian cn rt ngn
m khng t tin phi chi ra.
- Thit k tt l cha kho cho cng trnh hu hiu, khng th hnh thc ho qu trnh thit
k trong bt k mt cng trnh no. Ch rng RAISE ch l mt phng php nghim ngt vit
ra thit k, pht trin n, kim tra n ch tuyt nhin khng phi l mt phng php hnh thc
pht trin thit k.
Thit k phn mm tri qua mt s giai on sau:
Giai on 1: Nghin cu v hiu ra vn . Khng hiu r vn th khng c th thit k c
phn mm hu hiu.
Bo tr
Kim th
Ci t
Thit k
C thit k
Khng thit k
Ci t
Kim th
Bo tr
43
Giai on 2: Lm sng t cc c im ln ca mt hoc mt vi gii php c th. Vic chn gii
php ph thuc vo kinh nghim ca ngi thit k; ph thuc vo cc thnh phn c th ti s
dng v ph thuc vo s n gin ca cc gii php trc . Kinh nghim cho thy, nu cc nhn
t l tng t th nn chn gii php n gin nht.
Giai on 3: M t tng iu tru tng (cha r rng) trong gii php. Trc khi to ra cc t liu
chnh thc, ngi thit k nn thy rng cn phi xy dng mt m t ban u s khai ri chi tit
ho n. Cc sai st v khim khuyt trong mc thit k ban u s c pht hin v c iu
chnh cho ph hp ti cc mc chi tit thit k tip theo.
Qu trnh khc phc khim khuyt ny s c lp li cho tng phn tru tng t mc
thit k ban u cho n khi mt c t thit k chi tit cho tng phn tru tng kt thc. Nn
phn chia ra cc phn nh ng vi thit k ri t hp li, sao cho vic m t chi tit cc phn nh
ch trong khong mt trang giy.
5.1. Qu trnh thit k (Design process)
Qu trnh thit k l qu trnh tng cng hnh thc ho trong s tin trin ca thit k v phi
lun quay tr li cc thit k ng n t hnh thc (t hnh thc y c ngha l mang tnh m
t c h thng trong thc t) c trc y ca qu trnh . Nh thit k phi bt u vi mt bn
phc tho ht sc khng hnh thc ri sau tinh ch n, thm vo cc thng tin l cho thit
k tr nn hnh thc hn. Qu trnh thit k th hin nh sau:
Quan h gia thit k v c t l rt cht ch. Mc du qu trnh a ra mt c t yu cu
c xem nh l mt phn t c bn ca hp ng l mt hot ng ring bit, song vic hnh thc
ho c t yu cu hn l mt phn ca qu trnh thit k. Thc t, ngi lm thit k s lp i lp
li gia c t v thit k.
Qu trnh thit k lin quan mt thit n vic m t h thng mt s mc tru tng khc
nhau. Khi mt thit k c phn chia thnh nhiu thnh phn th ngi ta thng pht hin ra
c nhng sai xt giai on trc. Do phi quay tr li tinh ch. Thng thng th ngi
ta bt u giai on sau ngay trc khi giai on trc kt thc n gin l lui qu trnh tinh ch.
Hnh v di y nu cc hot ng ca qu trnh thit k v cc sn phm ca n. Cc giai on l
kh tu nhng n lm cho qu trnh thit k tr nn nhn thy c v t d qun l c.
Phc tho thit
k phi hnh thc
Thit k phi
hnh thc
Thit k
hnh thc
Thit k kt thc
44
Thnh qu ca mi hot ng thit k l mt bn c t. c t ny c th l mt c t tru
tng, hnh thc v c to ra lm r cc yu cu, n cng c th l mt c t v mt thnh
phn no ca h thng phi c thc hin nh th no. khi qu trnh thit k tin trin th cc
yu cu ngy cng c b sung vo bn c t . Cc kt qu cui cng l cc c t v thut
ton v cc cu trc d liu c dng lm c s cho vic thc hin h thng.
Thc t, cc hot ng thit k din ra song song vi cc sn phm thit k khc nhau. Cc
sn phm ny li c trin khai cc mc chi tit khc nhau trong din bin ca qu trnh thit k.
Cc hot ng ct yu trong vic thit k mt h thng phn mm ln
1. Thit k kin trc: Cc h con to nn h tng th v cc quan h ca chng l c phn
hoch r rng v ghi thnh ti liu.
2. c t tru tng: i vi mi h con, mt c t tru tng cc dch v m n cung cp
v cc rng buc phi tun theo cng c h tr.
3. Thit k giao din: y bn c khng nn hiu giao din ch l nhng g hin th trn
mn hnh, m phi hiu rng c th l tng tc gia cc thnh phn trong h thng vi nhau.
Giao din vi tng h con khc cng c thit k v ghi thnh ti liu. c t giao din khng
c m h v cho php s dng h con m khng cn bit n nhng g c din ra bn trong
ca h con (theo kiu hp en).
c t yu cu Kin trc h thng
c t phn mm
c t giao din
c t thnh phn
c t cu trc d liu
c t thut ton
Thit k kin trc
c t tru tng
Thit k giao din
Thit k thnh phn
Thit k cu trc d liu
Thit k thut ton
c t cc yu cu
c t cc yu cu
Hot ng Ti liu c to ra
Cc hot ng thit k v sn phm ca thit k.
45
4. Thit k cc thnh phn: Cc dch v c cung cp bi h con c phn chia thnh cc
thnh phn hp thnh ca h con .
5. Thit k cu trc d liu: Cc cu trc d liu c dng trong vic thc hin h thng
c thit k chi tit v c c t y.
6. Thit k thut ton: Cc cch thc (phng php x l) c dng cung cp cho cc
dch v c thit k chi tit v c c t.
Qu trnh ny c lp li cho mi h con sao cho n khi cc thnh phn hp thnh c xc
nh mt cch r rng v u c th chuyn i (nh x) mt cch trc tip vo cc thnh phn ca
ngn ng lp trnh, chng hn nh cc gi (packets), cc th tc (procedures) v cc hm
(functions).
Phng php tip cn thng xuyn c khuyn khch s dng l phng php tip cn t
trn xung (top down): Vn ln c phn chia mt cch quy thnh cc vn con cho n
khi cc vn d gii quyt c xc nh r rng. Trong qu trnh ny ngi thit k khng nht
thit phi phn r tt c cc thnh phn tru tng (ngha l vn ny cn phc tp m cch gii
quyt l cha xc nh r) khi m bng kinh nghim h bit chc chn rng c th hon ton xy
dng c. Do h c th tp trung sc lc vo cc thnh phn ng xt nht.
Ch rng khi m phng php hng i tng c chp nhn th phng php t trn
xung s t hiu qu. Khi ngi thit k s dng cc i tng sn c lm khung thit k.
Theo quan im qun l d n, thit k phn mm c tin hnh theo 2 bc:
Bc 1- Thit k s b: Quan tm ti vic chuyn ho cc yu cu thnh kin trc d liu v
cc thnh phn phn mm.
Bc 2- Thit k chi tit: Tp trung vo vic lm mn biu din kin trc dn ti cu trc
d liu chi tit v biu din cc quy trnh tnh ton v x l ca phn mm.
Trong phm vi thit k s b v chi tit, c xut hin mt s hot ng thit k khc nhau.
Bn cnh vic thit k d liu, kin trc v th tc, nhiu ng dng hin i c hot ng thit k
giao din phn bit. Thit k giao din lp ra cch b tr v c ch tng tc ngi-my (HCI
humen computer interface). Mi quan h gia cc kha cnh k thut v qun l ca thit k c
minh ho trong hnh v di y.
46
Vic m t thit k.
Thit k phn mm l mt m hnh ca th gii thc m t cc thc th v cc mi quan h
ca chng vi nhau.
Thit k cn c m t sao cho t c mc sau:
Lm c s cho vic thc hin chi tit.
Lm phng tin lin lc gia cc nhm thit k cc h con.
Cung cp y thng tin cho ngi bn tr h thng.
Ngi ta thng dng cc khi nim th, cc ngn ng m t chng trnh hoc vn bn
khng hnh thc to dng ti liu thit k.
5.2. Cc nguyn tc thit k (Design principles)
Phng php cu trc c dng rng ri trong nhng nm u ca nhng nm 1980. N
c dng thnh cng trong nhiu d n ln, n lm gim gi thnh mt cch ng k, s dng
c cc khi nim chun v m bo rng vic thit k tun theo mt chun nht nh. Cc cng
c CASE (Computer Aided Software Engineering thit k phn mm c my tnh h tr) c
dng tr gip cho phng php ny.
Cc phng php thit k thng tr gip mt vi cch nhn nhn h thng nh sau:
Nhn nhn cu trc: Cho ci nhn cu trc thng qua lc cu trc.
Nhn nhn quan h thc th: M t cu trc d liu logic thng dng, cp n c t d
liu quan h thc th.
Nhn nhn dng d liu: V lc dng d liu.
Ngi ta cn dng lc chuyn trng thi b sung cho phng php trn.
m bo cht lng cho mt biu din thit k, cn c cc tiu chun cho thit k tt. Song
v mt phng php, chng ta a ra cc hng dn sau:
1. Thit k nn a ra cch t chc theo cp bc dng cch kim sot thng minh trong s
cc thnh phn phn mm.
THIT K S B
Thit k kin trc
Thit k th tc
Thit k giao din
Thit k d liu
THIT K CHI TIT
KHA CNH
QUN L
KHA CNH
K THUT
Quan h gia kha cnh k thut v kha cnh qun l trong thit k
47
2. Thit k nn theo cc module, tc l phn mm nn c phn hoch mt cch logic thnh
cc thnh phn thc hin chc nng hay cc chc nng con xc nh.
3. Thit k nn cha cch biu din phn bit v tch bit gia d liu v th tc.
4. Thit k nn dn ti cc module (nh chng trnh con hay th tc) nu ra cc c trng
chc nng c bit.
5. Thit k nn dn n giao din l rt gn phc tp ca vic ni ghp li gia cc module
v vi mi trng bn ngoi.
6. Thit k nn c hng theo cch dng mt phng php lp li c iu khin bi
thng tin c trong phn tch cc yu cu phn mm.
Cc c trng trn ca mt thit k tt c c khi thc hin ng tin trnh thit k k ngh
phn mm thng qua vic p dng cc nguyn l thit k c bn, phng php lun h thng v xt
duyt thu o.
Nh vy, mi phng php thit k phn mm u a vo nhng phng php trc cm v
l php duy nht, cng nh mt cch nhn thin cn th no v ci g c trng cho cht lng
thit k
Tuy vy mi phng php u c nhng c trng sau:
1. Mt c ch chuyn ho t biu din min thng tin thnh biu din thit k
2. Mt k php biu din cc thnh phn chc nng v dao din ca chng
3. Cc trc cm lm mn v phn hoch
4. Cc hng dn v nh gi cht lng
Bt k phng php lun thit k no c dng, cng trnh s phn mm phi p dng mt
tp cc khi nim nn tng cho thit k d liu, kin trc v th tc:
Tru tng
Modul
Kin trc phn mm.
Cp bc iu khin
Cu trc d liu
Th tc phn mm
Che du thng tin
Thit k hng chc nng
H thng c thit k theo quan im chc nng, bt u mc cao nht, sau tinh ch
dn dn thnh thit k chi tit hn. Trng thi ca h thng l tp trung v c chia s cho cc
chc nng thao tc trn trng thi .
Ban u, ta coi yu cu mc cao nht ca h thng l mt chc nng duy nht cn phi thc
hin. Sau , ta tr li cho cu hi thc hin chc nng trn th cn phi lm cc cng vic g?
48
t cng vic trong cu hi trn c coi l chc nng con ca chc nng trn. Thc hin xong cc
chc nng con cng l thc hin xong chc nng cha. H thng c phn r dn dn, v c lm
mn. Hnh nh ca h thng s c xy dng theo cc bc trn.
Thit k hng i tng
H thng c nhn nhn nh mt b cc i tng (ch khng phi l mt tp hp cc chc
nng). H thng c phn tn, mi i tng c thng tin v trng thi ca ring n. i tng l
mt b cc thuc tnh xc nh trng thi ca i tng v cc php ton thc hin trn . Mi
i tng l mt khch th ca mt lp m lp c xc nh bi thuc tnh v cc php ton ca
n. N c tha k t mt vi lp i tng cp cao hn, sao cho nh ngha n ch cn nu
cc khc nhau gia n v cc lp cao hn n. Cc i tng lin lc vi nhau ch bng trao i cc
thng bo. Trong thc t, hu ht cc lin lc c thc hin gia cc i tng bng cch ni i
tng ny vi mt th tc, m th tc ny kt hp vi mt i tng khc.
Thit k hng i tng da trn tng che du thng tin. Gn y theo cch thit k ny,
ngi ta pht trin nhiu h thng cu to bi nhiu thnh phn c lp v c tng tc vi
nhau.
S tht, cc h phn mm ln phc tp n mc m ngi ta dng cc phng php tip
cn khc nhau trong vic thit k cc thnh phn khc nhau trong h thng. Chng c mt chin
lc tt nht no cho cc d n ln. Cc cch tip cn hng chc nng v hng i tng l b
sung h tr cho nhau ch khng phi l loi b nhau. K s phn mm s chn ra cch tip cn
thch hp nht trong tng giai on thit k. Nhn mc tng th th h thng nh l mt b cc
i tng (ch khng phi l mt b cc chc nng), cho nn mc tru tng cao th cch tip
cn hng i tng l thch hp hn. n mc chi tit th mt cch t nhin hn nn xem chng
l cc chc nng tng tc gia cc i tng. Sau mi i tng li c phn gii thnh cc
thnh phn, tc l c th xem n nh l mt h con.
Rt nhiu h thng, c bit l h thng thi gian thc c nhng (vo mt h thit b vt
cht c thc) c cu to nh mt h gm mt b cc qu trnh hot ng song song v c lin lc
vi nhau. Cc h ny thng phi tun theo cc rng buc nghim ngt v thi gian, m cc phn
cng thng phn ng tng i chm, ch c cch tip cn nhiu b x l hot ng song song
mi c th hon thnh c yu cu v thi gian.
Cc chng trnh tun t l d thit k, thc hin v kim tra v th nghim hn l cc h
thng song song. S ph thuc v thi gian gia cc qu trnh l kh hnh thc ho, kh khng ch
v th nghim.
Do , qu trnh thit k nn c xem nh l mt hot ng gm 2 giai on:
Giai on 1: Minh nh cu trc thit k logic, c th l cc thnh phn ca h thng v cc
mi quan h gia chng. C th dng cch nhn hng chc nng hoc cch nhn hng i tng.
49
Giai on 2: Thc hin cu trc trong dng c th thc hn c. Giai on ny i khi
c gi l thit k chi tit v i khi l lp trnh. Chc rng s quyt nh v tnh song song nn l
giai on ny ch khng phi l cc giai on sm hn trong qu trnh thit k.
Bi tp:
1. Trnh by cc giai on thit k phn mm
2. Trnh by cc nguyn tc thit k phn mm
50
Chng 6: Kim th phn mm
6.1. Mc ch (Testing objectives)
Kim th phn mm l hot ng kho st thc tin sn phm hay dch v phn mm trong ng
mi trng chng d nh s c trin khai nhm cung cp cho ngi c li ch lin quan nhng
thng tin v cht lng ca sn phm hay dch v phn mm y. Mc ch ca kim th phn mm
l tm ra cc li hay khim khuyt phn mm nhm m bo hiu qu hot ng ti u ca phn
mm trong nhiu ngnh khc nhau.
6.2. Nguyn tc kim th (Testing principles)
Kim th khng phi l g ri (Debugging)
Kim th khng bao gi c th pht hin hon ton 100% li
Mc ch ca kim th l tm ra li ch khng phi nguyn nhn gy ra chng
6.3. Kim th theo ng c bn (Basic path)
Cc ng dn c xc nh bng vic xy dng th chng trnh. Mi trng hp kim th s
tng ng vi mt ng dn. Ta c th gp vn i vi cc ng dn khng th thc hin
c.
th chng trnh
th chng trnh l mt th c hng trong :
Cc nh ca th biu din cc cu lnh
Cc cnh biu din lung iu khin
Ngha l, c mt cnh t nh i n nh j nu cu lnh tng ng vi nh j c th c thc thi
ngay lp tc sau cu lnh tng ng vi nh i
th chng trnh ca bi ton tam gic:
51
Mt s nh ngha
Chui: l mt ng dn m trong nh bt u v nh kt thc l khc nhau, v cc nh bn
trong c bc vo =1 v bc ra =1
Cc bc thc hin:
Xy dng th chng trnh/ th ng dn quyt nh t m ngun
Tnh phc tp ca th
52
Xc nh mt tp hp cc ng dn c bn
Thit k mt trng hp kim th tng ng vi mi ng dn c bn
Thc thi cc trng hp kim th
Mt ng dn c bn l ng dn ni t nh bt u n nh kt thc.
S lng cc ng dn c lp cn c kim th bng gi tr V(G) = e-n+2*p .
Trong :
G l th ng dn quyt nh
V(G) l phc tp ca th G
e l s cnh, n l s nh, p l s thnh phn
Cch xc nh cc ng dn c bn
Chn mt ng dn c bn ban u tng ng vi mt s thc thi chng trnh bnh thng
(ng dn c bn ny nn c cng nhiu nh quyt nh cng tt)
tm cc ng dn c bn khc, d tm ngc/xui trn ng dn ban u cho n khi gp mt
nh quyt nh. Thay i quyt nh ti nh ny, v tip tc tm ng dn kh thi cho n nh
kt thc
Lp li bc trn cho n khi tt c cc quyt nh u c thay i vi nhnh ng v sai
V d:
53
Cc ng dn c bn trong bi ton tam gic
Cc ng dn c bn kh thi
54
Kim th theo ng dn c bn da vo phng php ca Tom McCabe. N s dng th
chng trnh xc nh cc trng hp kim th. Kim th theo ng dn c bn c s dng
cho cp kim th n v. N c nhc im l ngi kim th phi c k nng lp trnh tt
c th hiu c m ngun v lung iu khin trong chng trnh
6.4. Kim th theo phn vng tng ng (Equivalence partitioning)
Xem xt v min gi tr ca cc bin chia thnh cc phm vi tng ng
Bao gm c min d liu khng ng
Khng quan tm n s trng lp
V d
Hy xem xt mt hm F vi cc bin u vo x1, x2 c gi tr c gii hn v nm trong cc
khong sau:
a<= x1<=d vi cc khong gi tr l [a b), [b c), [c d]
e<=x2<=g vi cc khong gi tr l [e f), [f g]
Cc gi tr khng ng l x1< a, x1>d and x2<e, x2>g
Cc kiu kim th theo lp tng ng
Kim th theo lp tng ng- li n
Kim th theo lp tng ng- li kt hp
Kim th theo lp tng ng- li n y
Kim th theo lp tng ng- li kt hp y
Kim th theo lp tng ng- li n
S dng mt bin t mi lp tng ng (hay mt khong gi tr) trong mt trng hp kim th
55
Da trn gi thit li n
S lng trng hp kim th bng s lng nhiu nht cc khong gi tr ng m mt bin c th
nhn
Kim th theo lp tng ng- li kt hp
Khng s dng gi thit li n
Mi trng hp kim th tng ng vi mt phn t ca tch cc ca cc lp tng ng
Kim th theo lp tng ng- li n y
Xem xt c cc gi tr khng ng vi gi thit li n
Kim th theo lp tng ng- li kt hp y
Xem xt c cc gi tr khng ng khng s dng gi thit li n
56
6.5. Kim th theo gi tr bin (Boundary value analysis)
Khi mt hm chc nng F vi hai bin x1 v x2 c ci t trong chng trnh, cc bin u vo
x1 v x2 s c cc gii hn:
a<=x1<=b
c<=x2<=d
Cc on [a,b] v [c,d] c gi l cc min gi tr ca x1 v x2
Gi thit li n
Cc li ca chng trnh t khi c gy ra bi hai hay nhiu bin cng mt lc
tng chnh ca kim th theo gi tr bin l s dng gi tr ca bin u vo ti gi tr nh nht,
ln hn gi tr nh nht, gi tr thng thng, gi tr ln nht, v nh hn gi tr ln nht
Kim th theo gi tr bin vi mt bin:
Kim th theo gi tr bin vi hai bin:
Kim th theo gi tr bin y
L mt m rng ca kim th theo gi tr bin bao gm cc gi tr nh hn gi tr nh nht
v ln hn gi tr ln nht (cho php vt qu min gi tr)
57
L mt hnh thc kim th vi li bit c chng trnh s thc hin nh th no nu
d liu vo c li
C th khng c p dng vi mt s ngn ng lp trnh c rng buc kiu
Kim th theo gi tr bin y
Kim th theo gi tr bin y vi hai bin
Kim th theo gi tr bin xu nht (hai bin)
Loi b gi thit ch c mt li n
Cho php cc gi tr u vo c th cng nhn gi tr bin
S lng trng hp kim th
Kim th theo gi tr bin: 4n+1
Kim th theo gi tr bin y : 6n+1
Kim th theo gi tr bin xu nht: 5n
Vi n l s lng cc bin
Nhc im ca kim th theo gi tr bin
Cc bin phi c lp vi nhau
Khng p dng c cho cc bin thuc kiu logic
58
6.6. Cc mc kim th (Testing strategy)
Cc cp ca kim th phn nh cp trong m hnh thc nc ca vng i pht trin phn
mm. Ba cp : c t, Thit k c bn, Thit k chi tit tng ng vi ba cp ca kim th:
kim th n v, kim th tch hp v kim th h thng.
Thng thng, kim th theo cu trc tng ng vi mc n v, kim th theo chc nng
tng ng vi mc h thng.
Unit Test Kim tra mc n v
Mt Unit l mt thnh phn phn mm nh nht m ta c th kim tra c. Theo nh ngha ny,
cc hm (Function), th tc (Procedure), lp (Class), hoc cc phng thc (Method) u c th
c xem l Unit.
Unit Test thng do lp trnh vin thc hin. Cng on ny cn c thc hin cng sm cng tt
trong giai on vit code v xuyn sut chu k pht trin phn mm. Thng thng, Unit Test i
hi kim tra vin c kin thc v thit k v code ca chng trnh. Mc ch ca Unit Test l bo
m thng tin c x l v xut (khi Unit) l chnh xc, trong mi tng quan vi d liu nhp
v chc nng ca Unit. iu ny thng i hi tt c cc nhnh bn trong Unit u phi c
kim tra pht hin nhnh pht sinh li. Mt nhnh thng l mt chui cc lnh c thc thi
trong mt Unit, v d: chui cc lnh sau iu kin If v nm gia then else l mt nhnh. Thc
t vic chn la cc nhnh n gin ha vic kim tra v qut ht Unit i hi phi c k thut,
i khi phi dng thut ton chn la.
Cng nh cc mc kim tra khc, Unit Test cng i hi phi chun b trc cc tnh hung (test
case) hoc kch bn (script), trong ch nh r d liu vo, cc bc thc hin v d liu mong
ch s xut ra. Cc test case v script ny nn c gi li ti s dng.
Integration Test Kim tra tch hp
Integration test kt hp cc thnh phn ca mt ng dng v kim tra nh mt ng dng hon
thnh. Trong khi Unit Test kim tra cc thnh phn v Unit ring l th Intgration Test kt hp
chng li vi nhau v kim tra s giao tip gia chng.
Integration Test c 2 mc tiu chnh:
- Pht hin li giao tip xy ra gia cc Unit.
- Tch hp cc Unit n l thnh cc h thng nh (subsystem) v cui cng l nguyn h
thng hon chnh (system) chun b cho kim tra mc h thng (System Test).
Trong Unit Test, lp trnh vin c gng pht hin li lin quan n chc nng v cu trc ni ti ca
Unit. C mt s php kim tra n gin trn giao tip gia Unit vi cc thnh phn lin quan khc,
tuy nhin mi giao tip lin quan n Unit tht s c kim tra y khi cc Unit tch hp vi
nhau trong khi thc hin Integration Test.
Tr mt s t ngoi l, Integration Test ch nn thc hin trn nhng Unit c kim tra cn thn
trc bng Unit Test, v tt c cc li mc Unit c sa cha. Mt s ngi hiu sai rng
59
Unit mt khi qua giai on Unit Test vi cc giao tip gi lp th khng cn phi thc hin
Integration Test na. Thc t vic tch hp gia cc Unit dn n nhng tnh hung hon ton khc.
Mt chin lc cn quan tm trong Integration Test l nn tch hp dn tng Unit. Mt Unit ti mt
thi im c tch hp vo mt nhm cc Unit khc tch hp trc v hon tt (passed)
cc t Integration Test trc . Lc ny, ta ch cn kim tra giao tip ca Unit mi thm vo vi
h thng cc Unit tch hp trc , iu ny lm cho s lng kim tra s gim i rt nhiu, sai
st s gim ng k.
C 4 loi kim tra trong Integration Test:
- Kim tra cu trc (structure): Tng t White Box Test (kim tra nhm bo m cc thnh
phn bn trong ca mt chng trnh chy ng), ch trng n hot ng ca cc thnh
phn cu trc ni ti ca chng trnh chng hn cc lnh v nhnh bn trong.
- Kim tra chc nng (functional): Tng t Black Box Test (kim tra ch ch trng n chc
nng ca chng trnh, khng quan tm n cu trc bn trong), ch kho st chc nng ca
chng trnh theo yu cu k thut.
- Kim tra hiu nng (performance): Kim tra vic vn hnh ca h thng.
- Kim tra kh nng chu ti (stress): Kim tra cc gii hn ca h thng.
System Test - Kim tra mc h thng
Mc ch System Test l kim tra thit k v ton b h thng (sau khi tch hp) c tha mn yu
cu t ra hay khng. System Test bt u khi tt c cc b phn ca phm mm c tch hp
thnh cng. Thng thng loi kim tra ny tn rt nhiu cng sc v thi gian. Trong nhiu trng
hp, vic kim tra i hi mt s thit b ph tr, phn mm hoc phn cng c th, c bit l cc
ng dng thi gian thc, h thng phn b, hoc h thng nhng. mc h thng, ngi kim
tra cng tm kim cc li, nhng trng tm l nh gi v hot ng, thao tc, s tin cy v cc yu
cu khc lin quan n cht lng ca ton h thng.
im khc nhau then cht gia Integration Test v System Test l System Test ch trng cc hnh
vi v li trn ton h thng, cn Integration Test ch trng s giao tip gia cc n th hoc i
tng khi chng lm vic cng nhau. Thng thng ta phi thc hin Unit Test v Integration Test
bo m mi Unit v s tng tc gia chng hot ng chnh xc trc khi thc hin System
Test.
Sau khi hon thnh Integration Test, mt h thng phn mm c hnh thnh cng vi cc
thnh phn c kim tra y . Ti thi im ny, lp trnh vin hoc kim tra vin (tester) bt
u kim tra phn mm nh mt h thng hon chnh. Vic lp k hoch cho System Test nn bt
u t giai on hnh thnh v phn tch cc yu cu. Phn sau ta s ni r hn v mt quy trnh
System Test c bn v in hnh.
System Test kim tra c cc hnh vi chc nng ca phn mm ln cc yu cu v cht lng nh
tin cy, tnh tin li khi s dng, hiu nng v bo mt. Mc kim tra ny c bit thch hp cho
60
vic pht hin li giao tip vi phn mm hoc phn cng bn ngoi, chng hn cc li tc nghn
(deadlock) hoc chim dng b nh. Sau giai on System Test, PM thng sn sng cho khch
hng hoc ngi dng cui cng kim tra chp nhn (Acceptance Test) hoc dng th
(Alpha/Beta Test).
i hi nhiu cng sc, thi gian v tnh chnh xc, khch quan, System Test thng c thc
hin bi mt nhm kim tra vin hon ton c lp vi nhm pht trin d n.
Bn thn System Test li gm nhiu loi kim tra khc nhau (xem hnh 3), ph bin nht gm:
- Kim tra chc nng (Functional Test): bo m cc hnh vi ca h thng tha mn ng yu
cu thit k.
- Kim tra kh nng vn hnh (Performance Test): bo m ti u vic phn b ti nguyn h
thng (v d b nh) nhm t cc ch tiu nh thi gian x l hay p ng cu truy vn
- Kim tra kh nng chu ti (Stress Test hay Load Test): bo m h thng vn hnh ng
di p lc cao (v d nhiu ngi truy xut cng lc). Stress Test tp trung vo cc trng
thi ti hn, cc im cht, cc tnh hung bt thng
- Kim tra cu hnh (Configuration Test)
- Kim tra kh nng bo mt (Security Test): bo m tnh ton vn, bo mt ca d liu v
ca h thng.
- Kim tra kh nng phc hi (Recovery Test): bo m h thng c kh nng khi phc trng
thi n nh trc trong tnh hung mt ti nguyn hoc d liu; c bit quan trng i
vi cc h thng giao dch nh ngn hng trc tuyn.
Acceptance Test - Kim tra chp nhn sn phm
Thng thng, sau giai on System Test l Acceptance Test, c khch hng thc hin (hoc y
quyn cho mt nhm th ba thc hin). Mc ch ca Acceptance Test l chng minh phn mm
tha mn tt c yu cu ca khch hng v khch hng chp nhn sn phm (v tr tin thanh ton
hp ng).
Regression Test - Kim tra hi quy
Regression Test kim tra li phn mm sau khi c mt s thay i xy ra, bo m phin bn
phn mm mi thc hin tt cc chc nng nh phin bn c v s thay i khng gy ra li mi
trn nhng chc nng vn lm vic tt. Regression test c th thc hin ti mi mc kim tra.
Bi tp:
1. Trnh by phng php kim th theo gi tr bin
2. Trnh by phng php kim th theo phn vng tng ng
3. Trnh by phng php kim th theo ng c bn
61
62
MT S THI MU
63
Trng i Hc Hng Hi Vit Nam
Khoa Cng ngh Thng tin
B MN H THNG THNG TIN
-----***-----
THI KT THC HC PHN
Tn hc phn: CNG NGH PHN MM
Nm hc: x
thi s: K duyt :
x x
Thi gian: 60 pht
Cu 1: (2 im)
Trnh by cc c im ca phn mm?
Cu 2: (2 im)
Trnh by cc quy trnh pht trin phn mm c in?
Cu 3: (3 im)
Trnh by cc k thut thu thp yu cu: Phng vn v Quan st?
Cu 4: (3 im)
Trnh by k thut M hnh ho lung chc nng ca h thng?
----------------------------***HT***----------------------------
Lu : - Khng sa, xa thi, np li sau khi thi
64
Trng i Hc Hng Hi Vit Nam
Khoa Cng ngh Thng tin
B MN H THNG THNG TIN
-----***-----
THI KT THC HC PHN
Tn hc phn: CNG NGH PHN MM
Nm hc: x
thi s: K duyt :
x x
Thi gian: 60 pht
Cu 1: (2 im)
Trnh by cc ng dng ca phn mm?
Cu 2: (2 im)
Trnh by cc quy trnh pht trin phn mm c in?
Cu 3: (3 im)
Trnh by cc k thut thu thp yu cu: Hp nhm v Bn cu hi?
Cu 4: (3 im)
Trnh by k thut M hnh ho lung d liu ca h thng?
----------------------------***HT***----------------------------
Lu : - Khng sa, xa thi, np li sau khi thi
65
Trng i Hc Hng Hi Vit Nam
Khoa Cng ngh Thng tin
B MN H THNG THNG TIN
-----***-----
THI KT THC HC PHN
Tn hc phn: CNG NGH PHN MM
Nm hc: x
thi s: K duyt :
x x
Thi gian: 60 pht
Cu 1: (2 im)
Trnh by cc ng dng ca phn mm?
Cu 2: (2 im)
Biu lung d liu l g? Cc quy c v biu lung d liu?
Cu 3: (3 im)
Trnh by qu trnh thit k phn mm?
Cu 4: (3 im)
Kim th l g? Trnh by k thut kim th theo gi tr bin?
----------------------------***HT***----------------------------
Lu : - Khng sa, xa thi, np li sau khi thi