You are on page 1of 202

http://www.ebook.edu.

vn 1
TRUNGDAI HOC BCH KHOA H NOI
KHOA CNG NGHJ THNG TIN
----------o0o---------
Thc Bnh Cung
Bi giang din tu mn hc
KIEM THU V BAO DAM
CHT LUONG PHAN MEM
http://www.ebook.edu.vn 2
MO DAU......................................................................................................................................... 4
CHUONG 1: CC KHI NIJM................................................................................................. 5
1.1. Cc dinh nghia.........................................................................................................5
1.2. Vng doi cua vic kim nghim (testing life cycle):...............................................6
1.3. Phn loai kim nghim:...........................................................................................7
1.4. Su tuong quan gia cc cng doan xy dung phn mm v loai kim
nghim: M hnh ch V.......................................................................................................8
1.5. So luot cc k thut v cng doan kim nghim:....................................................9
CHUONG 2: KIEM CHNG V XC NHAN (V & V ) ....................................................... 13
2.1. Kim chung v hop l ho.....................................................................................13
2.1.1. T chuc vic kim thu phn mm.........................................................................14
2.1.2. Chin luoc kim thu phn mm............................................................................15
2.1.3. Tiu chun hon thnh kim thu ...........................................................................17
2.2. Pht trin phn mm phng sach (cleanroom software development)..................18
2.2.1. Ngh thut cua vic g ri.....................................................................................18
2.2.2. Tin trnh g li .....................................................................................................18
2.2.3. Xem xt tm l......................................................................................................19
2.2.4. Cch tip cn g li ...............................................................................................19
CHUONG 3: KIEM THU PHAN MEM.................................................................................. 22
3.1. Qu trnh kim thu................................................................................................22
3.2. Kim thu h thng.................................................................................................24
3.3. Kim thu tch hop..................................................................................................25
3.4. Kim thu pht hnh...............................................................................................27
3.5. Kim thu hiu nng...............................................................................................31
3.6. Kim thu thnh phn.............................................................................................32
3.7. Kim thu giao din................................................................................................33
3.8. Thit k truong hop thu (Test case design)...........................................................35
3.9. Tu dng ha kim thu (Test automation)..............................................................45
CHUONG 4: CC PHUONG PHP KIEM THU.................................................................. 49
4.1. Phuong php white-box:........................................................................................50
4.2. Phuong php black-box:........................................................................................59
CHUONG 5: KIEM THU TCH HOP...................................................................................... 66
5.1. Tch hop trn xung. .............................................................................................66
5.2. Tch hop duoi ln. .................................................................................................68
5.3. Kim thu ni quy...................................................................................................69
5.4. Goi v vic kim thu tch hop............................................................................71
5.5. Lp ti liu v kim thu tch hop...........................................................................72
CHUONG 6: KY NGHJ DO TIN CAY PHAN MEM............................................................ 75
6.1. Gioi thiu...............................................................................................................75
6.2. Xc nhn tnh tin cy.............................................................................................76
6.2.1. So thao hoat dng..................................................................................................78
6.2.2. Du don tnh tin cy..............................................................................................79
6.3. Dam bao tnh an ton.............................................................................................82
6.3.1. Nhng lun chung v tnh an ton.........................................................................83
6.3.2. Dam bao quy trnh.................................................................................................86
6.3.3. Kim tra tnh an ton khi thuc hin.......................................................................88
6.4. Cc truong hop an ton v tin cyduoc................................................................89
http://www.ebook.edu.vn 3
CHUONG 7: KIEM THU PHAN MEM TRONG CNG NGHIJP ..................................... 95
7.1. QUY TRNH KIEM TRA PHAN MEM CO BAN...............................................95
7.2. M HNH KIEM TRA PHAN MEM TMM (TESTING MATURITY
MODEL)............................................................................................................................99
7.3. Cc cng cu kim thu (Test tools).......................................................................105
7.3.1. TAI SAO PHAI DNG TEST TOOL ................................................................105
7.3.2. KHI QUT VE KTTD.....................................................................................106
7.3.3. GIOI THIEU CNG CU KTTD: QUICKTEST PROFESSIONAL...................108
7.3.4. Kim thu don vi voi J Unit...................................................................................112
CHUONG 8: UC LUONG GI THNH PHAN MEM..................................................... 129
8.1. Gioi thiu.............................................................................................................129
8.2. Nng sut phn mn............................................................................................131
8.3. K thut uoc luong..............................................................................................135
8.4. M hnh ho chi ph thut ton............................................................................137
8.5. M hnh COCOMO.............................................................................................139
8.6. M hnh chi ph giai thut trong k hoach du n.................................................147
8.7. Nhn vin v khoang thoi gian cua du n...........................................................149
CHUONG 9: QUAN L CHT LUONG PHAN MEM....................................................... 153
9.1. Cht luong qu trnh v cht luong san phm:....................................................153
9.2. Cht luong qu trnh v cht luong san phm:....................................................155
9.3. Dam bao cht luong v cc chun cht luong.....................................................156
9.4. Lp k hoach cht luong......................................................................................163
9.5. Kim sot cht luong...........................................................................................164
9.6. CMM/CMMi .......................................................................................................165
9.6.2. Cu trc cua CMM..............................................................................................166
9.6.3. So snh gia CMM v CMMi .............................................................................172
CHUONG 10: QUAN L CU HNH.................................................................................... 174
10.1. Gioi thiu.............................................................................................................174
10.2. K hoach quan tri cu hnh..................................................................................176
11.2. Quan l vic thay di...........................................................................................179
11.3. Quan l phin ban v ban pht hnh....................................................................183
11.4. Quan l ban pht hnh.........................................................................................186
11.5. Xy dung h thng..............................................................................................189
11.6. Cc cng cu CASE cho quan tri cu hnh...........................................................190
PHJ LJC- CC CU HOI N TAP...................................................................................... 197
1. Cht luong v dam bao cht luong phn mm............................................................197
2. Cc d dodc trung cht luong phn mm.................................................................198
3. Kim thu phn mm....................................................................................................199
4. Quan l cu hnh phn mm........................................................................................201
TI LIJU THAM KHAO......................................................................................................... 202
http://www.ebook.edu.vn 4
MO DAU
Quan l chat luong phan mm l van a khng moi nhung theo mt s anh gi l cn
yu cua cc cng ty phan mm Vit Nam. Mt s cng ty trong nuoc hin a aat cc chuan
quc t CMM/CMMI trong nng cao nng luc v quan l chat luong phan mm, song chi
am auoc trn aau ngn tay, v hin cng chi gi gon trong vi cng ty gia cng cho thi
truong nuoc ngoi.
Lu nay, ni an chat luong phan mm, khng t nguoi nghi ngay an van a l xc
ainh xem phan mm a c pht sinh li hay khng, c "chay" ang nhu yu cau hay khng
v cui cng thuong quy v vai tr cua hoat ang kim thu phan mm (testing) nhu l hoat
ang chiu trch nhim chnh.
Voi quan aim cua khch hng, aiu ny c th ang, ho khng can quan tm ni tnh
cua hoat ang pht trin phan mm, aiu ho can quan tm l liu san pham cui cng giao
cho ho c ang han hay khng v lm vic ang nhu ho mun hay khng.
Tuy nhin theo quan aim cua nguoi pht trin phan mm, thuc t cho thay hoat ang
kim thu phan mm l quan trong, nhung khng au a aam bao san pham s auoc hon
thnh ang han v ang yu cau. Kim thu sau cng a pht hin li l aiu tat nhin phai
lm, nhung trong rat nhiu truong hop, aiu a thuong qu tr v s phai mat rat nhiu
thoi gian a sua cha.
Thuc t cho thay, a aam bao auoc hai tiu ch "aon gian" trn cua khch hng, ai hoi
t chuc khng chi van hnh tt khu kim thu phan mm, m phai t chuc v duy tr su
hoat ang nhip nhng cua ca mt h thng cc cng vic lin quan an mt du n phan
mm, t ay xuat hin mt khi nim c tn l "h thng quan l chat luong phan mm"
bao gm cc quy trnh auoc thuc thi xuyn sut chu ky pht trin cua du n phan mm
song hnh cng vic kim thu phn mm nhm aam bao chat luong cho phan mm khi
chuyn giao cho khch hng.
Voi thuc t trn, l nhng nguoi lm cng tc ao tao mong mun cung cap cho sinh
vin ngnh cng ngh phan mm - nhng nguoi s l ngun nhn luc chu yu trong tuong
lai cua cc doanh nghip phan mm nhng khi nim, kin thuc v k nng co ban ban
aau v kim thu phan mm, v qui trnh quan l chat luong, aam bao chat luong phan mm
thng qua gio trnh (ni b) Kim thu v aam bao chat luong phan mm (Software
Testing and Quality Assurrance).
Gio trnh ny voi muc tiu cung cap cho sinh vin cng ngh phan mm c auoc kin
thuc v k nng v vic kim thu phan mm, cc cng aoan kim thu, cc loai kim thu,
cng cu kim thu, xy dung ti liu kim thu, d liu kim thu . V xy qui trnh aam
bao chat luong phan mm, gioi thiu tng quan v h thng quan l chat luong, nguyn
tc, k thuat a aam bao rng du n phan mm s chuyn giao cho khch hng ang
han, ang yu cau.
y l gio trnh so khoi, cn nhiu van a chua ai su phn tch v thuc hin, cn
mang tnh l thuyt nhiu. Tc gia hy vong ban aoc ang gp kin a phin ban 2 ap
ung tt hon yu cau cua nhiu ac gia, cua sinh vin v k ca nhng nguoi aang cng tc
tai cc phng pht trin v aam bao chat luong phan mm.
http://www.ebook.edu.vn 5
CHUONG 1: CC KHI NIJM
1.1. Cc d|nh nghia
Li phn mm l chuyn hin nhin cua cuc sng. Chng ta d c gng dn muc no
th thuc t l ngay ca nhng lp trnh vin xut sc nht cung khng c th lc no cung
vit duoc nhngdoan m khng c li. Tnh trung bnh, ngay ca mt lp trnh vin loai tt
th cung c tu 1 dn 3 li trn 100 dng lnh. Nguoi ta uoc luong rng vic kim tra d tm
ra cc li ny chim phn nua khi luong cng vic phai lm d c duoc mt phn mm
hoat dng duoc. (Software Testing Techniques, Second Edition, by Boris Beizer, Van
Nostrand Reinhold, 1990, ISBN 1850328803).
Trn dy l mt nhn d|nh v cng vic kim nghim (testing) chuong trnh.
Tht vy, ngy nay cng ngy cc chuong trnh (cc phn mm) cng tro ln phc
tp v d s. Vic to ra mt san phm c th bn duc trn th| trung di hoi s n
lc cua hng chc, hng tram thm ch hng ngn nhn vin. S lung dng m ln
dn hng triu. V d to ra mt san phm th khng phai chi do mt t chc dng ra
lm t du dn cui, m di hoi s lin kt, tch hp cua rt nhiu san phm, thu vin
lp trnh, cua nhiu t chc khc nhau T d di hoi vic kim nghim phn
mm cng ngy cng tro nn rt quan trng v rt phc tp.
Song song vi s pht trin cc cng ngh lp trnh, cc ngn ng lp trnh th cc
cng ngh v k thut kim nghim phn mm ngy cng pht trin v mang tnh
khoa hc. Bi tiu lun ny vi mc dch l tp hp, nghin cu, phn tch cc k
thut, cc cng ngh kim nghim phn mm dang duc su dng v pht trin hin
nay.
1.1.1. D|nh nghia:
Vic kim nghim l qu trnh thc thi mt chuong trnh vi mc dch l tm ra li.
(Glen Myers)
Giai thch theo mc dch:
Vic thu nghim hin nhin l ni dn cc li (error), sai st (fault), hong hc (failure)
hoc cc hu qua (incident). Mt php thu l mt cch chy phn mm theo cc
trung hp thu nghim vi mc tiu l:
Tm ra sai st.
Giai thch su hoat dng chnh xc.
(Paul J orgensen)
1.1.2. Cc thut ng:
Li (Error):
L cc li lm do con nguoi gy ra.
Sai st (Fault):
Sai st gy ra li. C th phn loai nhu sau:
http://www.ebook.edu.vn 6
Sai st do dua ra du thua chng ta dua mt vi thu khng chnh
xc vo m ta yu cu phn mm.
Sai st do bo st Nguoi thit k c th gy ra sai st do bo st, kt
qua l thiu mt s phn dng ra phai c trong m ta yu cu phn
mm.
Hong hc (Failure):
Xay ra khi sai st duoc thuc thi. (Khi thuc thi chuong trnh tai cc noi
bi sai th se xay ra trang thi hong hc).
Kt qua khng mong doi, hu qua (Incident)
L nhng kt qua do sai st dem dn. Hu qua l cc triu chung lin
kt voi mt hong hc v bo hiu cho nguoi dng bit su xut hin cua
hong hc.
Truong hop thu (Test case)
Truong hop thu duoc lin kt tuong ung voi hoat dng cua chuong
trnh. Mt truong hop thu bao mt mt tp cc gi tri du vo v mt
danh sch cc kt qua du ra mong mun.
Thm tra (Verification)
Thm tra l tin trnh nhm xc dinh du ra cua mt cng doan trong
vic pht trin phn mm ph hop voi cng doan truocd.
Xc nhn (Validation)
Xc nhn l tin trnh nhm chi ra ton h thngd pht trin xong ph
hop voi ti liu m ta yu cu.
So snh gia Thm tra v Xc nhn:
Thm tra: thm tra quan tm dn vic ngn chn li gia cc cng doan.
Xc nhn: xc nhn quan tm dn san phm cui cng khng cn li.
1.2. Vng di cua vic kim nghim (testing life cycle):
Bang duoi dy m ta cc cng doan pht trin mt phn mm v cch khc phuc li.
Li c th xay ra trong tt ca cc cng doan tu M ta yu cu, Thit k dn Lp
trnh.
Tu cng doan ny chuyn sang cng doan khc thuong nay sinh cc sai st (do du thua
hoc thiu theo m ta yu cu).
Dn cng doan kim nghim chng ta se pht hin ra cc hu qua (cc kt qua khng mong
mun).
Qu trnh sua li bao gm phn loai li, c lp li (tm ra nguyn nhn v noi gy li),
d ra giai php sua li v cui cng l khc phuc li.
http://www.ebook.edu.vn 7
1.3. Phn loi kim nghim:
C 2 muc phn loai:
Mt l phn bit theo mucd chi tit cua cc b phn hop thnh phn mm.
Muc kim tra don vi (Unit)
Muc kim tra h thng (System)
Muc kim tra tch hop (Integration)
Cch phn loai khc l dua trn phuong php thu nghim (thuong dng o muc
kim tra don vi)
Kim nghim hpden (Black box testing) dng d kim tra chuc nng.
Kim nghim hp trng (White box testing) dng d kim tra cu trc.
Hnh bn duoi biu din su tuong quan cua cc tiu ch cht luong phn mm, mucd
chi tit don vi v phuong php kim nghim
M ta yu cu
Thit k
Lp trnh
Kim nghim
C lp li
Phn loai li
Li
Sai st
Sai st
Sai st
Li
Li
Hu qua
Sua li
Vng di cua kim nghim
Giai php sua li
http://www.ebook.edu.vn 8
1.4. S tuong quan gia cc cng don xy dng phn mm v loi kim
nghim: M hnh ch V
M hnh ny nhm giai thch su tuong quan gia cc cng doan xy dung phn mm v
cc loai kim nghim. O mi cng doan xy dung phn mm se tuong ung voi mt loai
kim nghim v cn c mt h so kim nghim tuongung duoc thnh lpd phuc vu cho
vic kim nghim.
V du:
- Cng don: Yu cu phn mm(requiements); Loi kim nghim: Kim nghim
chp nhn (acceptance test); H so: h so kim nghim chp nhn (acceptance test
spec).
- Cng don: M ta chi tit phn mm (specification); Loi kim nghim: Kim
nghim h thng(system test); H so: h so kim nghim h thng (system test
spec).
- Cng don: H so kin trc (architecture spec); Loi kim nghim: Kim nghim
tch hop (integration test); H so: h so kim nghim tch hop (integration test
spec).
- Cng don: Thit k chi tit (detailed design); Loi kim nghim: Kim nghim
khi (module test); H so: h so kim nghim khi (module test spec).
- Cng don: Vit m (implementation code); Loi kim nghim: Kim nghim
don vi (unit test); H so: h so kim nghimdon vi (unit test spec).
Don vi (Unit)
Thnh phn (Module)
Tch hop (Integration)
H thng (System)
Mc d chi tit
Phuong php
White-box Black-box
Chuc nng
Thn thin nguoi dng
Kha nng thi hnh
Thit thuc
Ondinh
An ton
Dc dim
http://www.ebook.edu.vn 9
1.5. So lut cc k thut v cng don kim nghim:
Cc k thut v cng doan kim nghim c th chia nhu sau:
Kim nghim tm hep: kim nghim cc b phn ring re.
Kim nghim hp trng (White box testing)
Kim nghim hpden (Black box testing)
Kim nghim tm rng:
Kim nghim b phn (Module testing): kim nhim mt b phn ring
re.
Kim nghim tch hop (Itegration testing): tch hop cc b phn v h
thng con.
Kim nghim h thng (System testing): kim nghim ton b h thng.
Kim nghim chp nhn (Acceptance testing): thuc hin boi khch
hng.
Sai st
requiements
specification
architecture
spec
detailed design
implementation
code
acceptance test
system test
integration test
module test
unit test
acceptance test spec
system test spec
integration test spec
module test spec
unit test spec
http://www.ebook.edu.vn 10
1.5.1. Cc loi kim nghim tm hp:
Cc loai kim nghim ny duoc thuc hind kim nghimdn cc don vi (unit) hoc cc
khi chuc nng (module).
a. Kim nghim hp trng (white-box testing)
Cn goi l kim nghim cu trc. Kim nghim theo cch ny l loai kim nghim su dung
cc thng tin v cu trc bn trong cuaung dung. Vic kim nghim ny dua trn qu trnh
thuc hin xy dung phn mm.
Tiu chun cua kim nghim hp trng phai dp ung cc yu cu nhu sau:
Bao phu dng lnh: mi dng lnh t nht phai duoc thuc thi 1 ln
Bao phu nhnh: mi nhnh trong so d diu khin (control graph) phai duoc di
qua mt ln.
Bao phu auong: tt ca cc duong (path) tu dim khoi tao dn dim cui cng
trong so d dng diu khin phai duocdi qua.
b. Kim nghim hp den (black-box testing)
Cn goi l kim nghim chuc nng. Vic kim nghim ny duoc thuc hin m khng cn
quan tm dn cc thit k v vit m cua chuong trnh. Kim nghim theo cch ny chi
quan tm dn chuc nng dd ra cua chuong trnh. V vy kim nghim loai ny chi dua
vo ban m ta chuc nng cua chuong trnh, xem chuong trnh c thuc su cung cp dng
chuc nngd m ta trong ban chuc nng hay khng m thi.
Kim nghim hpden dua vo cc dinh nghia v chuc nng cua chuong trnh. Cc truong
hop thu nghim (test case) se duoc tao ra dua nhiu vo ban m ta chuc nng chu khng
phai dua vo cu trc cua chuong trnh.
c. Vn d kim nghim ti bin:
Kim nghim bin (boundary) l vnd duocdt ra trong ca hai loai kim nghim hpden
v hp trng. L do l do li thuong xay ra tai vng ny.
V du:
if x > y then S1 else S2
Voi diu kin bao phu, chi cn 2 truong hop thu l x>y v x<=y.
Voi kim nghimduong bin th kim tra voi cc truong hop thu l x>y, x<y, x=y
Cc loi kim nghim tm rng:
Vic kim nghim ny thuc hin trn tm muc lon hon v cc kha canh khc cua phn
mm nhu kim nghim h thng, kim nghim su chp nhn (cua nguoi dng)...
http://www.ebook.edu.vn 11
a. Kim nghim Module (Module testing)
Mucdch: xc minh module dua ra dduoc xy dungdng hay chua?
Vnd dt ra: gia su module I su dung cc module H, K. Nhung cc module H v K chua
sn sng. Vy cch no d kim tra module I mt cch dc lp?
Giai php d ra l gia lp mi truong cua module H v K.
Thng thuong mt module c th goi mt tc vu (hay mt tin trnh) khng phai cua n,
truy cp cc cu trc d liu khng phai l cuc b, hay duoc dng boi mt module khc.
Hnh sau m ta module duocdt trong mi truong thu nghim.
Ghi ch: Driver l module goi thuc thi lm cho module cn kim tra hoat dng, n gia lp
cc module khc se su dung module ny. Cc tp d liu chia se m cc module khc thit
lp trong thuc t cung duoc thit lp o drive. Stub l module gia lp cc module duoc
module dang kim tra su dung.
b. Kim nghim tch hp:
L cch kim nghimbng cch tch hop vo h thng tung module mt v kim tra.
Uudim:
D dng tm ra cc li vo ngay giai doandu.
D dng khoanh vng cc li (tch hop n modules, sau d n +1
modules).
Giam vic su dung cc stub v Driver
C th thuc him kim nghim tch hop theo ca 2 cch bottom-up v top-down ty thuc
vo mi quan h su dung ln nhau gia cc module.
c. Kim nghim h thng:
Bao gm mt loat cc kim nghim nhm xc minh ton b cc thnh phn cua h thng
duoc tch hop mt cch dngdn.
PROCEDURE
UNDER TEST
DRIVER STUB
CALL CALL
ACCESS TO NONLOCAL VARIABLES
http://www.ebook.edu.vn 12
Mucdch cua kim nghim h thng l d dam bao ton b h thng hoat dng nhu m
khch hng mong mun.
Bao gm cc loai kim nghim sau:
Kim nghim chc nang (Function testing)
Kim tra h thng sau khi tch hop c hoat dngdng chuc nng voi
yu cudt ra trong ban m ta yu cu hay khng.
V du: voi h thng xu l vn ban th kim tra cc chuc nng tao ti
liu, sua ti liu, xo ti liu c hoat dng hay khng.
Kim nghim hiu sut (Perfomance testing)
Kim nghim mc d dp ng (stress testing)
Thuc thi h thng voi gia thit l cc ti nguyn h thng yu cu
khngdpungduoc v cht luong, ndinh v s luong.
Kim nghim cu hnh (configuration tessting)
Phn tch h thng voi cc thit lp cu hnh khc nhau.
Kim nghim n d|nh (robustness tessting)
Kim nghim duoi cc diu kin khng mong doi v du nhu nguoi
dng g lnh sai, ngundin bi ngt.
Kim nghim hi phc (recovery testing)
Chi ra cc kt qua tra v khi xay ra li, mt d liu, thit bi, dich
vu hoc xo cc d liu h thng v xem kha nng phuc hi cua
n.
Kim nghim qu tai (overload testing)
Dnh gi h thng khi n vuot qua gioi han cho php. V du: mt h
thng giao tc (transaction) duoc yu cu thuc thi 20 giao tc/giy.
Khi d se kim tra nu 30 giao tc/giy th nhu th no?
Kim nghim cht lung (quality testing)
Dnh gi su tin tuong, vn d duy tu, tnh sn sng cua h thng.
Bao gm ca vic tnh ton thoi gian trung bnh h thng se bi hong
v thoi gian trung bnh d khc phuc.
Kim nghim ci dt (Installation testing)
Nguoi dng su dung cc chuc nng cua h thng v ghi lai cc li
tai vi tr su dung tht su.
V du: mt h thng duoc thit k d lm vic trn tu thuy phai
dam bao khng bi anh huong g boi diu kin thoi tit khc nhau
hoc do su di chuyn cua tu.
d. Kim nghim chp nhn
Nhmdam bao vic nguoi dng c duoc h thng m ho yu cu. Vic kim nghim ny
hon thnh boi nguoi dng phu thuc vo cc hiu bit cua ho vo cc yu cu.
http://www.ebook.edu.vn 13
CHUONG 2: KIEM CHNG V XC NHAN (V & V )
2.1. Lp k hoach V&V (Verification and validation planning)
2.2. Kim tra phn mm (Software inspections)
2.3. Phn tch tinh tu dng (Automated static analysis)
2.4. Pht trin phn mm phng sach (Cleanroom software development)
2.1. Kim chng v hp l ho
Kim thu phn mm l mt yu t trong chu dim rng hon thung duc tham
khao ti nhu vn d kim chng v hp l ho (V&V). Kim chng ni ti mt tp
cc hnh dng dam bao rang phn mm ci dt dng cho mt chc nang dc bit.
Hp l ho ni ti mt tp cc hot dng khc dam bao rang phn mm d duc xy
dng li theo yu cu cua khch hng. Bochm pht biu diu ny theo cch khc:
Kim chng: Chng ta c lm ra san phm dng khng?
Hp l ho: Chng ta c lm ra dng san phm khng?
D|nh nghia v V&V bao qut nhiu hot dng ta d tham khao ti nhu vic dam bao
cht lung phn mm (SQA).
Cc phuong php k ngh phn mm cung cp nn tang d xy dng nn cht lung.
Cc phuong php phn tch, thit k v thc hin (m ho) lm nng cao cht lung
bang cch dua ra nhng k thut thng nht v kt qua d kin duc. Cc cuc hp
xt duyt k thut chnh thc (thao trnh) gip dam bao cht lung cua san phm
duc to ra nhu h qua cua tng buc k ngh phn mm. Qua ton b tin trnh
ny, vic do dc v kim sot duc p dng cho mi phn tu cua cu hnh phn mm.
Cc chun v thu tc gip dam bao tnh thng nht v tin trnh SQA chnh thc
buc phai thi hnh trit l cht lung ton b .
Vic kim thu cung cp mt thnh lu cui cng d c th thm d|nh v cht lung,
li c th duc pht hin ra mt cch thc t hon.
Nhung khng nn coi kim thu nhu mt tm lui an ton. Nhu ngui ta vn ni,
Bn khng th kim thu duc cht lung. Nu n khng san c truc khi bn bt du
kim thu th n s chng c khi bn kt thc kim thu. Cht lung duc t hp vo
trong phn mm trong ton b tin trnh k ngh phn mm. Vic p dng dng cc
phuong php v cng c, cc cuc hp xt duyt k thut chnh thc v vic quan l
vng chc cng cch do dc tt ca dn ti cht lung duc xc nhn trong khi kim
thu.
http://www.ebook.edu.vn 14
Hnh 2.1 Dat dn cht luong phn mm
Miller k li vic kim thu phn mm v dam bao cht lung bang cch ni rang
dng co nn tang cua vic kim thu chuong trnh l d xc nhn cht lung phn
mm bang nhng phuong php c th duc p dng mt cch kinh t v hiu qua
cho ca cc h thng quy m ln v nho.
Diu quan trng cn luu rang vic kim chng v hp l ho bao gm mt phm vi
rng cc hot dng SQA c cha ca hp xt duyt chnh thc, kim ton cht lung
v cu hnh, diu phi hiu nang, m phong, nghin cu kha thi, xt duyt ti liu, xt
duyt co so d liu, phn tch thut ton, kim thu pht trin, kim thu cht lung,
kim thu ci dat. Mc du vic kim thu dng mt vai tr cc ky quan trng trong
V&V, nhiu hot dng khc cng cn cn ti.
2.1.1. T chc vic kim thu phn mm
Vi mi d n phn mm, c mt mu thun c hu v li ch xut hin ngay khi
vic kim thu bt du. Ngui d xy phn mm by gi duc yu cu kim thu phn
mm. Diu ny ban thn n dung nhu v hi; sau rt, ai bit duc chuong trnh k
hon l ngui lm ra n? Nhung khng may, cng nhng ngui pht trin ny li c
mi quan tm chng minh rang chuong trnh l khng c li, rang n lm vic dng
theo yu cu khch hng, rang n s duc hon tt theo l|ch biu v trong phm vi
ngn sch. Mt trong nhng mi quan tm ny li lm giam bt vic tm ra li trong
ton b tin trnh kim thu.
Theo quan dim tm l, vic phn tch v thit k phn mm (cng vi m ho) l
nhim v xy dng. Ngui k su phn mm to ra mt chuong trnh my tnh, ti liu
v n v cc cu trc d liu c lin quan. Ging nhu bt ky ngui xy dng no,
ngui k su phn mm t ho v dinh th d duc xy dng v nhn ng vc vo bt
http://www.ebook.edu.vn 15
ky ai d|nh lm sp d n. Khi vic kim thu bt du, c mt n lc tinh vi, dt khot
d dp v ci ngui k su phn mm d xy dng. Theo quan dim cua ngui xy
dng, vic kim thu c th duc coi nhu (v tm l) c tnh ph hoi. Cho nn ngui
xy dng d dt d cp ti vic kim thu thit k v thc hin s chng to rang
chuong trnh lm vic, thay v pht hin li. Diu khng may li s hin hu. V nu
ngui k su phn mm khng tm ra chng th khch hng s tm ra.
Thung c mt s nhn thc sai c th duc suy din sai lc t thao lun trn: (1)
ngui pht trin phn mm khng nn tin hnh kim thu; (2) phn mm nn duc
tung qua tung cho ngui l lm vic kim thu mt cch tn bo; (3) ngui kim
thu nn tham gia vo d n chi khi buc kim thu sp sua bt du. Tng pht biu
ny du khng dng.
Ngui pht biu phn mm bao gi cng c trch nhim vi vic kim thu ring cc
don v| (m dun) chuong trnh, d dam bao rang mi m dun thc hin dng chc
nang n d duc thit k. Trong nhiu trung hp, ngui pht trin cng tin hnh
ca kim thu tch hp - buc kim thu dn dn vic xy dng (v kim thu) ton b
cu trc chuong trnh. Chi sau khi kin trc phn mm hon tt th nhm kim thu
dc lp mi tham gia vo.
Vai tr cua nhm kim thu dc lp (ITG) l loi bo vn d c hu lin quan ti vic
d ngui xy dng kim thu nhng ci anh ta d xy dng ra. Vic kim thu dc lp
loi bo xung khc li ch nu khng c nhm d th c th hin hu. Cui cng nhn
s trong nhm kim thu dc lp duc tra tin d tm ra li.
Tuy nhin, ngui pht trin phn mm khng chuyn giao chuong trnh cho ITG ri
bo di. Ngui pht trin v ITE lm vic cht ch trong ton b d n phn mm d
dam bao rang nhng kim thu k lung s duc tin hnh. Trong khi tin hnh kim
thu, ngui pht trin phai c sn d sua cha li d pht hin ra.
ITG l mt phn cua nhm d n pht trin phn mm theo nghia l n tham d
trong tin trnh dc ta v vn cn tham d (lp k hoch v xc d|nh cc thu tc kim
thu) trong ton b d n ln. Tuy nhin, trong nhiu trung hp ITG bo co cho t
chc dam bao cht lung phn mm, do d dt ti mt mc d dc lp c th khng
c duc nu n l mt phn cua t chc pht trin phn mm.
2.1.2. Chin luc kim thu phn mm
Tin trnh k ngh phn mm c th duc xt theo vng xon c, nhu duc minh
ho trong Hnh 2.2. Ban du, k ngh phn mm xc d|nh vai tr cua phn mm v
dua ti vic phn tch yu cu phn mm, ch thit lp nn linh vc thng tin, chc
nang, hnh vi, hiu nang, rng buc v tiu chun hp l cho phn mm. Di vo trong
vng xon c, chng ta ti thit k v cui cng ti m ho. D xy dng phn mm
my tnh, chng ta di dc theo dung xon c, mi ln mc d tru tung li giam
dn.
Mt chin luc cho kim thu phn mm cng c th xem xt bang cch di theo dung
xon c cua Hnh 2.2 ra ngoi. Vic kim thu don v| bt du ti tm xoy cua xon c
v tp chung vo cc don v| cua phn mm khi duc ci dt trong chuong trnh gc.
Vic kim thu tin trin bang cch di ra theo dung xon c ti kim thu tch hp,
noi tp trung vo thit k v vic xy dng kin trc phn mm. Di thm mt vng
xoy na trn dung xon c chng ta gp kim thu hp l, noi cc yu cu, duc
http://www.ebook.edu.vn 16
thit lp nhu mt phn cua vic phn tch yu cu phn mm, duc hp l ho theo
phn mm d duc xy dng. Cui cng chng ta ti kim thu h thng, noi phn
mm v cc phn tu h thng khc duc kim thu nhu mt ton b. D kim thu
phn mm my tnh, chng ta theo dung xoy mo rng dn phm vi kim thu mt
ln.
Hnh 2.3 Cc buoc kim thu phn mm
Xem xt tin trnh ny theo quan dim thu tc v vic kim thu bn trong hon
canh k ngh phn mm thc ti l mt chui gm ba buc duc thc hin tun t
nhau. Cc buc ny duc v trong Hnh 2.3. Ban du, vic kim thu tp trung vo
tng m dun ring bit, dam bao rang n vn hnh dng dn nhu mt don v|. Do d
mi c tn kim thu don v|. Kim thu don v| dng rt nhiu cc k thut kim thu
hp trng, thu cc dung dc bit trong cu trc diu khin cua mt m dun d dam
bao bao qut dy du v pht hin ra li ti da. Tip d cc m dun phai duc lp
ghp hay tch hp li d to nn b trnh phn mm hon chinh. Vic kim thu tch
hp d cp ti cc vn d c lin quan ti cc vn d kim chng v xy dng chuong
trnh. Cc k thut thit k kim thu hp den chim di da s trong vic tch hp,
mc du mt s gii hn cc kim thu hp trng cng c th duc dng d dam bao
bao qut da s cc dung diu khin.
Sau khi phn mm d duc tch hp (duc xy dng), mt tp cc php kim thu cao
cp s duc tin hnh. Cc tiu chun hp l (duc thit lp trong phn tch yu cu)
cng phai duc kim thu. Vic kim thu hp l dua ra s dam bao cui cng rang
phn mm dp ng cho tt ca cc yu cu chc nang, hnh vi v s hon thin. Cc
k thut kim thu hp den duc dng chu yu trong vic hp l ho ny.
Buc kim thu cp cao cui cng roi ra ngoi phm vi cua k ngh phn mm v
roi vo hon canh rng hon cua k ngh h thng my tnh. Phn mm, mt khi duc
hp l ho, phai duc t hp vi cc phn tu h thng khc (nhu phn cng, con
ngui, co so d liu). Kim thu h thng kim chng li rang tt ca cc yu t c
http://www.ebook.edu.vn 17
khp dng vi nhau khng v rang chc nang/ d hon thin h thng ton b d dt
duc.
2.1.3. Tiu chun hon thnh kim thu
Cu hoi c din nay sinh mi khi c vic thao lun v kim thu phn mm l: Khi
no chng ta thc hin xong kim thu - lm sao ta bit rang chng ta d kim thu
du? Dng bun l khng c cu tra li xc d|nh cho cu hoi ny, nhung c mt vi s
dp ng thc t v nhng n lc ban du theo hung dn kinh nghim.
Mt dp ng cho cu hoi trn l: Bn chng bao gi hon thnh vic kim thu,
gnh nng don gian chuyn t bn (ngui pht trin) sang khch hng cua bn. Mi
lc khch hng / ngui dng thc hin mt chuong trnh my tnh th chuong trnh
ny li duc kim thu trn mt tp d liu mi. S kin dng mc ny nhn mnh
tm quan trng cua cc hot dng dam bao cht lung phn mm khc. Mt dp ng
khc (c diu g d nho bng nhung du sao cng chnh xc) l : Bn hon thnh
vic kim thu khi bn ht thi gian hay ht tin.
Mc du s t ngui thc hnh s bin minh cho nhng dp ng trn, ngui k
su phn mm cn nhng tiu chun cht ch hon d xc d|nh khi no vic kim thu
du duc tin hnh. Musa v Ackerman gi mt dp ng da trn tiu chun thng
k: Khng, chng ta khng th tuyt di chc chn rang phn mm s khng bao
gi hong, nhung theo m hnh thng k dng v l thuyt v hp l v thc nghim
th chng ta d hon thnh kim thu du d ni vi s tin tuong ti 95% rang xc sut
cua 1000 gi vn hnh CPU khng hong trong mt mi trung duc xc d|nh v xc
sut l t nht 0.995
Dng m hnh ho thng k v l thuyt d tin cy phn mm, cc m hnh v
hong hc phn mm (duc pht hin trong khi kim thu) xem nhu mt hm cua thi
gian thc hin c th duc xy dng ra. Mt ban cua m hnh sai hong, duc gi l
m hnh thc hin- thi gian Poisson l ga rit, c dng:
f(t)= ln[ ) (
1
x
p
l
0
(pt +1) ] (17.1)
vi f(t) = s tch lu nhng hong hc d kin xut hin mt khi phn mm d
duc kim thu trong mt khoang thi gian thc hin t.
l
0
= mt d hong phn mm ban du (s hong trn don v| thi gian) vo lc
bt du kim thu.
P = vic giam theo hm m trong mt d hong khi li duc pht hin v sa
di duc tin hnh.
Mt d hong th nghim. l(t), c th duoc suy ra bng cch lydao hm cua f(t):
F(t) =
1 0
0
+ pt l
l
(17.2)
Dng mi quan h trong phuong trnh (2.2), ngui kim thu c th tin don
vic loi bo li khi vic kim thu tin trin. Mt d li thc ti c th duc chm ln
trn dung cong d kin (hnh 2.4). Nu d liu thc ti duc thu thp trong khi
http://www.ebook.edu.vn 18
kim thu v m hnh thc hin - thi gian theo logarit Poisson l xp xi gn nhau vi
s dim d liu th m hnh ny c th duc dng d d don thi gian kim thu ton
b cn d dt ti mt d hong thp chp nhn duc.
Bang cch thu thp cc d do trong khi kim thu phn mm v dng cc m
hnh v d tin cy phn mm hin c, c th pht trin nhng hung dn c nghia d
tra li cu hoi: Khi no th chng ta hon thnh vic kim thu? Cn t tranh lun v
vic c phai lm cng vic thm na hay khng truc khi cc quy tc d|nh tnh cho
kim thu c th xc d|nh, nhung cch tip cn kinh nghim hin dang tn ti duc coi
l tt hon dng k so vi trc gic th.
2.2. Pht trin phn mm phng sch (cleanroom software development)
Cleanroom l mt qui trnh pht trin phn mm hon l mt k thut kim thu. Cho
dn by gi, k thut ny vn duc xem l mt cch mi cua vic suy nghi v kim
thu v dam bao cht lung phn mm. tuong cua cleanroom l nham trnh tiu
tn chi ph cho hot dng pht hin v g bo cc li bang cch vit m lnh chuong
trnh mt cch chnh xc ngay t ban du vi nhng phuong php chnh thng nhu
k thut chng minh tnh dng dn truc khi kim thu.
2.2.1. Ngh thut cua vic g ri
Kim thu phn mm l mt tin trnh c th duc vch k hoc v xc d|nh mt cch
h thng. Vic thit k trung hp kim thu c th tin hnh mt chin luc xc d|nh
v c kt qua duc tnh ton theo thi gian.
G li xut hin nhu hu qua cua vic kim thu thnh cng. Tc l, khi mt trung
hp kim thu pht hin ra li th vic g li l tin trnh s nay sinh d loi bo li.
Mc du vic g li c th nn l mt tin trnh c trt t, n phn ln cn l ngh
thut. Ngui k su phn mm khi tnh cc kt qua cua php thu, thung hay phai
duong du vi chi dn triu chng v vn d phn mm. Tc l, ci biu l ra bn
ngoi cua li v nguyn nhn bn trong cua li c th c mi quan h khng hin
nhin ti mt li khc. Tin trnh tm tr t hiu bit gn mt triu chng vi nguyn
nhn chnh vic g li.
2.2.2. Tin trnh g li
G li khng phai l kim thu, nhung bao gi cng xut hin nhu mt h qua kim
thu. Tham khao dn hnh 2.12 th tin trnh g li bt du vi vic thc hin kim
thu. Kt qua duc thm d|nh v gp vic thiu s tuong ng gia kt qua trng di
v thc t. Trong nhiu trung hp, d liu khng tuong ng l triu chng cua mt
nguyn nhn nn tang cn b| che kn. Tin trnh g li c gng ghp triu chng vi
nguyn nhn, t d dn ti vic sua li.
Tin trnh g li bao gi cng sinh ra mt trong hai kt qua logic: (1) Nguyn
nhn s duc tm ra, sua cha v loi bo hay (2) nguyn nhn s khng duc tm ra.
Trong trung hp sau, ngui thc hin g li c th hoi nghi mt nguyn nhn, thit
k ra mt trung hp kim thu gip hp l ho hoi nghi cua mnh, v vic lm
hung ti vic sua li theo cch lp li.
http://www.ebook.edu.vn 19
Ti sao g li li kh? Rt c th tm l con ngui (xem mc sau) c lin quan ti
nhiu cu tra li hon l cng ngh phn mm. Tuy nhin mt vi dc trung cua li
dua ra vi manh mi:
o Triu chung v nguyn nhn c th xa nhau v mt dia l. Tuc l, nhng
triu chung c th xut hin trong mt phn ny cua chuong trnh, trong khi
nguyn nhn thuc t c th dinh vi o mt vi tr xa. Cc cu trc chuong
trnhdi di voi nhau lm trm trong thm tnh hung ny.
o Triu chung c th bin mt (tam thoi) khi mt li khc duoc sua cha.
o Triu chung thuc t c th gy ra khng li (nhu do su khng chnh xc cua
vic lm trn s).
o Triu chung c th duoc gy ra do li con nguoi khng d ln du vt.
o Triu chung c th l kt qua cua vnd thoi gian, thay v vnd xu l.
o C th kh ti tao lai chnh xc cc diu kin vo (nhu ung dung thoi gian
thuc trong d thu tu vo khng xc dinh)
o Triu chung c th c lc c lc khng. Diu ny dc bit ph bin trong
cc h thng nhng vicdi di phn cung v phn mm khng cht che.
o Triu chung c th do nguyn nhn duoc phn b qua mt s cc nhim vu
chay trn cc b xu l khc nhau.
o Trong khi g li, chng ta gp khng t cc li chay tu vic hoi kh chiu
(nhu dinh dang ci ra khng dng) toi cc tham hoa (nhu h thng hong,
gy ra cc thit hai kinh t hay vt l trm trong). Xem nhu hu qua cua
vic tng li, khi luong suc p d tm ra li cung tng thm. Thng
thuong, suc p buc nguoi pht trin phn mm phai tm ra li v dng thoi
dua vo thm hai li na.
2.2.3. Xem xt tm l
Khng may, dung nhu c mt s bang c l s tinh thng g li thuc bm sinh con
ngui. Mt s ngui lm vic d rt gioi, s khc li khng. Mc d bang c kinh
nghim v g li vn cn d mo cho nhiu cch hiu, nhung bin thin ln nht trong
kha nang g li d duc bo co li di vi cc k su phn mm c cng nn tang
kinh nghim v gio dc.
Bnh lun v kha cnh g li cua con ngui, Shneiderman pht biu:
G li l mt trong nhng phn chn nht cua lp trnh. N c yu t cua vic giai
quyt vn d hay vn d hc ba, di di vi vic tha nhn kh ch|u rang bn d sai
lm. Hay u lo v khng san lng chp nhn kha nang li lm tang kh khan cho
cng vic. May mn l c s giam nh v bt cang thng khi li cui cng d duc
sua li.
Mc du c th kh hc duc vic g li, ngui ta vn d ngh| ra mt s cch tip cn
ti vn d. Chng ta xem xt nhng vn d ny trong mc tip.
2.2.4. Cch tip cn g li
Bt k ti cch tip cn no duc chn g li c mt mc tiu quan trng hon ca: tm
ra v sua cha nguyn nhn li phn mm. Mc tiu ny duc thc hin bang t hp
http://www.ebook.edu.vn 20
cc dnh gi c h thng, trc gic v may mn. Bradley m ta cch tip cn g li
theo cch ny:
G li l vic ng dng trc tip phuong php kh hc d tng duc pht trin hon
2500 nam qua. Co so cua vic g li l d|nh v| ngun gc cua vn d [nguyn nhn]
bang vic phn hoch nh| phn, thng qua cc gia thit lm vic d d don cc gi
tr| mi cn kim tra.
Ta hy ly mt v d khng phai phn mm: Dn trong nh ti khng lm vic. Nu
khng c g trong nh lm vic th nguyn nhn phai l cu ch chnh hay o bn
ngoi; ti nhn quanh d liu xem hng xm c b| tt dn hay khng. Ti cm chic
dn nghi ng vo cm khc v cm mt d din khc vo mch nghi ng. C th
tin hnh cc phuong n giai quyt kim thu.
Ni chung, c th dua ra ba loai cc tip cn g li:
- B buc manh bao
- Lt nguoc
- Loai bo nguyn nhn
Loi b buc mnh bo c l l phuong php thng dng nht v km hiu qua nht
d c lp nguyn nhn cua li phn mm. Chng ta p dng phuong php g li b
buc mnh bo khi tt ca cc phuong php khc du tht bi. Dng trit l c d
my tnh tm ra li, ngui ta cho x ra ni dung b nh, gi ti chuong trnh luu du
vt khi chy v np chuong trnh vi lnh WRITE. Chng ta hy vng rang du d
trong bi ly thng tin duc to ra, chng ta c th tm ra duc mt nguyn nhn cua
li. Mc du dng thng tin duc to ra cui cng c th dn ti thnh cng, thung
hon ca l n dn dn ph phm cng sc v thi gian. Phai dnh suy nghi vo d
truc ht d.
Lt nguc li cch tip cn kh thng dng c th duc dng trong nhng chuong
trnh nho. Bt du ti ch chng duc pht hin ra, lt nguc theo nhng chuong
trnh gc (mt cch thu cng) cho ti ch tm ra nguyn nhn. Khng may l khi s
dng chuong trnh gc tang ln, s con dung lt nguc tim nang c th tro nn
khng quan l ni.
Cch tip cn th ba ti g li - loi bo nguyn nhn duc biu l bang vic quy np
hay din d|ch v dua vo khi nim v phn hoch nh| phn. D liu c lin quan ti
vic xut hin li duc t chc d c lp ra cc nguyn nhn tim nang. Mt gia thit
nguyn nhn duc nu ra v d liu trn duc dng d chng minh hay bc bo gia
thit d. Mt cch khc, ta c th xy dng ra mt danh sch mi nguyn nhn dc
bit c nhiu ha hn th d liu s duc lm m|n thm d c gng c lp ra li.
Tng cch tip cn g li trn dy du c th duc b sung thm boi cng c g li.
Chng ta c th p dng mt phm vi rng cc trnh bin d|ch g li, nhung tr gip
g li dng (B d du vt), cc b sinh trung hp kim thu t dng, s b nh v
bang tham khao cho. Tuy nhin cc cng c du khng phai l cch thay th cho vic
dnh gi da trn ti liu thit k phn mm dy du v chuong trnh gc r rng.
Trong nhiu trung hp, vic g li phn mm my tnh ta nhu vic giai quyt vn
d trong th gii kinh doanh. Brow v Sampson d dua ra mt cch tip cn g li
tn l Phuong php, d l vic thch nghi cc k thut giai quyt vn d quan l.
Cc tc gia ny d ngh| pht trin mt ban dc ta v cc d lch, m ta cho vn d
bang cch phc ha ci g, khi no, o du v vi phm vi no?
http://www.ebook.edu.vn 21
Mi mt trong nhng vn d nu trn (ci g, khi no, o du v vi phm vi no) du
duc chi ra thnh nhng dp ng l hay khng l d phn bit r rt gia ci g d
xay ra v ci g d khng xay ra. Mt khi thng tin v li d duc ghi li th ngui ta
xy dng ra mt gia thit nguyn nhn da trn cc phn bit quan st duc t
nhng dp ng l hay khng l. Vic g li tip tc dng cch tip cn qui np hay
din d|ch duc m ta phn trn trong mc ny.
Bt ky thao lun no v cch tip cn v cng c g li cng du khng dy du nu
khng ni ti mt dng minh mnh m: Ngui khc! Khi nim v lp trnh v ng
cua Weinberg (duc thao lun truc dy trong cun sch ny) nn duc mo rng
thnh g li v ng. Mi ngui chng ta du c th nh li diu g kh xu khi mt
hng gi, hng ngy v mt li dai dng. Mt dng nghip vn vo di qua trong ni
tht vng ri chng ti giai thch v tung ra ban tin chuong trnh ra. Lp tc (dung
nhu) nguyn nhn li b| pht hin ra. Mim cui mt cch ngo ngh, anh bn dng
nghip chng ta bin mt. Mt quan dim mi me, khng b| che phu boi hng gi
tht vng, c th to ra nhng diu ky diu. Cu chm ngn cui cng v g li c th
l: Khi tt ca mi th khc du sai th hy nh s gip d.
Mt khi li d duc tm ra, th n phai duc sua cha. Nhung khi chng ta d luu ,
vic sua mt li di khi c th li dua vo mt li khc v do d li gy hi hon l tt.
Van Vleck gi ba cu hoi don gian ngui k su phn mm nn hoi truc khi tin
hnh sua cha d loi bo nguyn nhn gy li:
- Liu nguyn nhn gy li ny c bi ti taoo phn khc cua chuong trnh hay khng?
Trong nhiu tnh hung, mt khim khuyt chuong trnh bi gy ra boi mt mu hnh
logic sai st c th cn pht sinh o dud khc na. Vic xem xt tuong minh v
mu hnh logic ny c th lm pht hin ra thm cc li khc
- Li tip c th bi dua vo l g khi ti cha li ny? Truoc khi vic sua li duoc
tin hnh, chuong trnh gc (hay tt hon, thit k) nn duoc dnh gi lai d thm
dinh vic dnh ni cc cu trc logic d liu. Nu vic sua li duoc tin hnh trong
mt phn c d dnh ni cao th cng phai d tm nhiu khi tin hnh bt ky mt su
thay di no.
Ta c th lm g d ngan can li ny ngay t du? Cu hoi ny l buc du tin
hung ti vic thit lp mt cch tip cn dam bao cht lung phn mm thng k.
Nu ta sua chuong trnh cng nhu san phm th li s loi bo chuong trnh hin ti v
c th b| khu bo mi chuong trnh tuong lai
http://www.ebook.edu.vn 22
CHUONG 3: KIEM THU PHAN MEM
Muc tiu cua chuong ny l m ta qu trnh kim thu phan mm v aua ra cc k thuat
kim thu. Khi aoc chuong ny, ban s:
- Hiu auoc su khc bit gia kim thu hop l v kim thu khim khuyt.
- Hiu auoc cc nguyn l cua kim thu h thng v kim thu b phan.
- Hiu auoc ba chin luoc c th su dung a sinh cc truong hop kim thu h thng.
- Hiu auoc cc ac aim ban chat cua cng cu phan mm auoc su dung a kim thu
tu ang.
3.1. Qu trnh kim thu
Qu trnh kim thu phn mm c hai muc tiu ring bit:
1. Chung minh cho nguoi pht trin v khch hng thy cc yu cu cua phn mm.
Voi phn mm truyn thng, diu ny c nghia l ban c t nht mt thu nghim
cho mi yu cu cua nguoi dng v ti liu h thng yu cu.Voi cc san phm
phn mm chung, diud c nghia l ban nn thu nghim tt ca cc dc tnh cua h
thng se duoc kt hop trong san phm pht hnh.
2. Pht hin cc li v khim khuyt trong phn mm: phn mm thuc hin khng
dng, khng nhu mong doi hoc khng lm theo nhu dc ta. Kim tra khim
khuyt tp trung vo vic tm ra tt ca cc kiu thuc hin khng nhu mong doi cua
h thng, nhu su d v h thng, su tuong tc khng mong mun voi h thng
khc, tnh ton sai v sai lac d liu.
Kim thu
thnh phn
Kim thu
Nguoi pht trin phn mm Nhm kim thu dc lp
h thng
Hnh 3.1 Cc giai doan kim thu
Thit k truong hop
kimthu
Chun bi d liu
kimthu
Chay chuong trnh
voi d liu kimthu
So snh cc kt qua
Voi cc truong hop
truong hop
kimthu
kimthu
D liu
kimthu
Cc kt qua
kimthu
Bo co
thu nghim
Cc
Hnh 3.2 Mt m hnh cua qu trnh kim thu phn mm
http://www.ebook.edu.vn 23
Muc tiu thu nht dndn kim thu hop l, su dung tp cc thu nghim phan nh mong
mun cua nguoi dng d kim tra xem h thng c thuc hindng khng. Muc tiu thu hai
dn dn kim thu khim khuyt: cc truong hop kim thu duoc thit k d tm ra cc
khim khuyt. Cc truong hop kim thu c th duoc lm khng r v khng cn phan nh
cch h thng bnh thuong duoc su dung. Voi kim thu hop l, mt thu nghim thnh cng
l thu nghim m h thng thuc hin dng dn. Voi kim thu khim khuyt, mt thu
nghim thnh cng l mt thu nghim tm ra mt khim khuyt, nguyn nhn lm cho h
thng thuc hin khng chnh xc.
Kim thu c th khng chung minh duoc phn mm khng c khim khuyt, hoc n se
thuc hin nhu dc ta trong moi truong hop. Rt c th mt thu nghim ban bo qua c th
pht hin ra cc vnd khc trong h thng. Nhu Dijstra, mt nguoi di du trong vic pht
trin k ngh phn mm, d tuyn b (1972): kim thu chi c th pht hin ra cc li hin
tai, chu khng th dua ra tt ca cc li.
Ni chung, v vy, muc tiu cua kim thu phn mm l thuyt phuc nguoi pht trin phn
mm v khch hng rng phn mm l du tt cho cc thao tc su dung. Kim thu l mt
qu trnh duoc dng d tao nn su tin tuong trong phn mm.
M hnh tng qut cua qu trnh kim thu duoc m ta trong hnh 3.2. Cc truong hop
kim thu su chi r cuadu vo d thu nghim v du ra mong doi tu h thng cng voi
mt ban bo co san phmdduoc kim thu. D liu kim thu l du vo, duoc nghi ra d
kim thu h thng. D liu kim thu thinh thoang c th duoc tu dng sinh ra. Sinh cc
truong hop kim thu tu dng l diu khng lm duoc. Du ra cua thu nghim chi c th
duoc du don boi nguoi him bit v hoat dng cua h thng.
Kim thu ton din: moi chuong trnh c th thuc hin tun tu duoc kim tra, l diu
khng th lm duoc. V vy, kim thu, phai duoc thuc hin trn mt tp con cc truong
hop kim thu c th xay ra. Trong l tuong, cc cng ty phn mm c nhng diu khoan
d lua chon tp con ny hon l giao n cho di pht trin. Nhng diu khoan ny c th
dua trn nhng diu khoan kim thu chung, nhu mt diu khoan l tt ca cc cu lnh
trong chuong trnh nn duoc thuc thi t nht mt ln. Mt su lua chon l nhngdiu khoan
kim thu c th su trn kinh nghim su dung h thng, v c th tp trung vo kim thu
cc dc trung hoat dng cua h thng. V du:
1. Tt ca cc dc trung cua h thngduoc truy cp thng qua thuc don nn duoc kim
thu.
2. Kt hop cc chuc nng (v du dinh dang vn ban) duoc truy cp thng qua cng thuc
don phai duoc kim thu.
3. Khi du vo duocdua vo, tt ca cc chuc nng phai duoc kim thu voi cng mt thu
nghimdng dn v thu nghim khng dngdn.
Diu d r rng tu kinh nghim voi san phm phn mm lon nhu phn mm xu l vn
ban, hoc bang tnh c th so snh cc nguyn tc thng thuong duoc su dung trong lc
kim thu san phm. Khi cc dc trung cua phn mmduoc su dung c lp, chng lm vic
bnh thuong. Cc vnd pht sinh, nhu Whittaker giai thch (Whittaker, 2002), khi lin kt
cc dc trung khng duoc kim thu cng nhau. ng ddua ra mt v du, khi su dung phn
mm xu l vn ban su dung su dung loi ch thch o cui trang voi cch sp xp nhiu ct
lm cho vn ban trnh by khng dng.
Khi mt phn cua qu trnh lp k hoch V & V, ngui quan l phai dua ra cc
quyt d|nh ai l ngui ch|u trch nhim trong tng buc kim thu khc nhau. Vi
hu ht cc h thng, cc lp trnh vin ch|u trch nhim kim thu cc thnh phn
http://www.ebook.edu.vn 24
m h d trin khai. Khi cc lp trnh vin d hon thnh cc cng vic d, cng vic
duc giao cho di tng hp, h s tch hp cc mdun t nhng ngui pht trin
khc nhau d to nn phn mm v kim thu ton b h thng. Vi h thng quan
trng, mt qu trnh theo nghi thc c th duc su dng, cc ngui thu dc lp ch|u
trch nhim v tt ca cc buc cua qu trnh kim thu. Trong kim thu h thng
quan trng, cc thu nghim duc kim thu ring bit v h so chi tit cua kt qua
kim thu duc duy tr.
Kim thu cc thnh phn duc thc hin boi nhng ngui pht trin thung da
trn hiu bit trc gic v cch hot dng cua cc thnh phn. Tuy nhin, kim thu
h thng phai da trn van ban dc ta h thng. D c th l mt dc ta chi tit yu
cu h thng, hoc n c th l dc ta hung ngui su dng o mc cao cua cc dc
tnh duc thc hin trong h thng. Thung c mt di dc lp ch|u trch nhim
kim thu h thng, di kim thu h thng lm vic t ngui su dng v ti liu yu
cu h thng d lp k hoch kim thu h thng.
Hu ht cc thao lun v kim thu bt du vi kim thu thnh phn v sau d
chuyn dn kim thu h thng. Ti d dao nguc thu t cc thao lun trong chuong
ny boi v rt nhiu qu trnh pht trin phn mm bao gm vic tch hp cc thnh
phn su dng li v duc lp vo phn mm d to nn cc yu cu c th. Tt ca cc
kim thu trong trung hp ny l kim thu h thng, v khng c s tch ri trong
qu trnh kim thu thnh phn.
3.2. Kim thu h thng
H thng gm hai hoc nhiu thnh phn tch hop nhm thuc hin cc chuc nng hocdc
tnh cua h thng. Sau khi tch hop cc thnh phn tao nn h thng, qu trnh kim thu h
thngduoc tin hnh. Trong qu trnh pht trin lpdi lp lai, kim thu h thng lin quan
voi kim thu mt luong cng vic ngy cng tng d phn phi cho khch hng; trong qu
trnh thc nuoc, kim thu h thng lin quan voi kim thu ton b h thng.
Voi hu ht cc h thng phuc tap, kim thu h thng gm hai giai doan ring bit:
1. Kim thu tch hop: di kim thu nhn m ngun cua h thng. Khi mt vn d
duoc pht hin, di tch hop thu tm ngun gc cua vnd v nhn bit thnh phn
cn phai g li. Kim thu tch hop hu nhu lin quan voi vic tm cc khim khuyt
cua h thng.
2. Kim thu pht hnh: Mt phin ban cua h thng c th duoc pht hnh toi nguoi
dng duoc kim thu. Di kim thu tp trung vo vic hop l cc yu cu cua h
thng v dam bao tnh tin cy cua h thng. Kim thu pht hnh thuong l kim thu
hpden, di kim thu tp trung vo m ta cc dc tnh h thng c th lm duoc
hoc khng lm duoc. Cc vnd duoc bo co cho di pht trind g li chuong
trnh. Khch hng duoc bao hm trong kim thu pht hnh, thuong duoc goi l
kim thu chp nhn. Nu h thng pht hnh du tt, khch hng c th chp nhn
nd su dung.
V co ban, ban c th nghi kim thu tch hop nhu l kim thu h thng chuady du
bao gm mt nhm cc thnh phn. Kim thu pht hnh lin quan dn kim thu h
thng pht hnh c dinh phn phi toi khch hng. Tt nhin, c su gi chng ln
http://www.ebook.edu.vn 25
nhau, dc bit khi pht trin h thng v h thng duoc pht hnh khi chua hon thnh.
Thng thuong, su uu tin hng du trong kim thu tch hop l pht hin ra khim
khuyt trong h thng v su uu tin hng du trong kim thu h thng l lm hop l cc
yu cu cua h thng. Tuy nhin trong thuc t, c vi kim thu hop l v vi kim thu
khim khuyt trong cc qu trnh.
3.3. Kim thu tch hp
Qu trnh kim thu tch hop bao gm vic xy dung h thng tu cc thnh phn v
kim thu h thng tng hop voi cc vn d pht sinh tu su tuong tc gia cc thnh
phn. Cc thnh phnduoc tch hop c th trng voi chnh n, cc thnh phn c th
dng lai duoc c th thm vo cc h thng ring bit hoc thnh phn moi duoc pht
trin. Voi rt nhiu h thng lon, c tt ca 3 loai thnh phnduoc su dung. Kim thu
tch hop kim tra trn thuc t cc thnh phn lm vic voi nhau, duoc goi l chnh xc
v truyn d liudng vo lc thoi gian dng thng qua giao din cua chng.
H thng tch hop bao gm mt nhm cc thnh phn thuc hin vi chuc nng cua h
thng v duoc tch hop voi nhau bng cch gp cc m d chng lm vic cng voi
nhau. Thinh thoang, du tin ton b khung cua h thng duoc pht trin, sau d cc
thnh phnduoc gp lai d tao nn h thng. Phuong php ny duoc goi l tch hop tu
trn xung (top-down). Mt cch lua chon khc l du tin ban tch hop cc thnh phn
co so cung cp cc dich vu chung, nhu mang, truy cp co so d liu, sau d cc thnh
phn chuc nng duoc thm vo. Phuong php ny duoc goi l tch hop tu duoi ln
(bottom-up). Trong thuc t, voi rt nhiu h thng, chin luoc tch hop l su pha trn
cc phuong php trn. Trong ca hai phuong php top-down v bottom-up, ban thuong
phai thm cc m d m phong cc thnh phn khc v cho php h thng thuc hin.
Mt vnd chu yu nay sinh trong lc kim thu tch hop l cc li cuc b. C nhiu
su tuong tc phuc tap gia cc thnh phn cua h thng, v khi mt du ra bt thuong
duoc pht hin, ban c th kh nhn ra noi m li xut hin. D vic tm li cuc b
duoc d dng, ban nn thuong xuyn tch hop cc thnh phn cua h thng v kim thu
chng. Ban du, ban nn tch hop mt h thng cu hnh ti thiu v kim thu h thng
ny. Sau d ban thm dn cc thnh phn vo h thngd v kim thu sau mi buoc
thm vo.
http://www.ebook.edu.vn 26
Trong v du trn hnh 2.3, A,B,C,D l cc thnh phn v T1, T2, T3, T4, T5 l tp cc
thu nghim kt hop cc dc trung cua h thng. Du tin, cc thnh phn A v B duoc
kt hopd tao nn h thng (h thng cu hnh ti thiu), v cc thu nghim T1, T2,
T3 duoc thuc hin. Nu pht hin c khim khuyt, n se duoc hiu chinh. Sau d,
thnh phn C duoc tch hop v cc thu nghim T1, T2 v T3 duoc lm lp lai d dam
bao n khng tao nn cc kt qua khng mong mun khi tuong tc voi A v B. Nu c
vnd nay sinh trong cc kim thu ny, n hu nhu chc chn do su tuong tc voi cc
thnh phn moi. Ngun gc cua vnd dduoc khoanh vng, v vy lm don gian vic
tm v sua li. Tp thu nghim T4 cungduoc thuc hin trn h thng. Cui cng, thnh
phn D duoc tch hop vo h thng v kim thu duoc thuc hin trn cc thu nghimd
c v cc thu nghim moi.
Khi lp k hoach tch hop, ban phai quyt dinh thu tu tch hop cc thnh phn. Trong
mt qu trnh nhu XP, khch hng cung tham gia trong qu pht trin, khch hng
quyt dinh cc chuc nng nn duoc thm vo trong mi buoc tch hop h thng. Do d,
tch hop h thngduoc diu khin boi su uu tin cua khch hng. Trong cch tip cn
khc d pht trin h thng, khi cc thnh phn v cc thnh phn ring bit duoc tch
hop, khch hng c th khng tham gia vo qu trnh tch hop h thng v di tch hop
quyt dinh thu tu tch hop cc thnh phn.
Trong truong hop ny, mt quy tc tt l du tin tch hop cc thnh phn thuc hin
hu ht cc chuc nng thuong su dung cua h thng. Diu ny c nghia l cc thnh
phn thuong duoc su dung hu ht dduoc kim thu. V du, trong h thng thu vin,
LIBSYS, du tin ban nn tch hop chuc nng tm kim trong h thng ti thiu, d
nguoi dng c th tm kim cc ti m ho cn. Sau d, ban nn tch hop cc chuc nng
cho php nguoi dng tai ti liu tu trn Internet v dn thm cc thnh phn thuc hin
cc chuc nng khc cua h thng.
T3
T2
T1
T4
T5
A
B
C
D
T2
T1
T3
T4
A
B
C
T1
T2
T3
A
B
Dy kim thu 1 Dy kim thu 2 Dy kim thu 3
Hnh 3.3 Kim thu tch hop lon dn
http://www.ebook.edu.vn 27
Tt nhin, thuc t t khi don gian nhu m hnh trn. Su thuc hin cc chuc nng cua
h thng c th lin quan dn nhiu thnh phn. D kim thu mt dc tnh moi, ban c
th phai tch hop mt vi thnh phn khc nhau. Kim thu c th pht hin li trong khi
tuong tc gia cc thnh phn ring bit v cc phn khc cua h thng. Vic sua li c
th kh khn boi v mt nhm cc thnh phn thuc hin chuc nng d c th phai thay
di. Hon na, tch hop v kim thu mt thnh phn moi c th thay di tuong tc gia
cc thnh phndduoc kim thu. Cc li c th duoc pht hin c th d khng duoc
pht hin trong khi kim thu h thng cu hnh don gian.
Nhng vnd ny c nghia l khi mt h thng tch hop moi duoc tao ra, cn phai
chay lai cc thu nghim trong h thng tch hop cu d dam bao cc yu cu cc thu
nghimd vn thuc hin tt, v cc kim thu moi thuc hin tt c chuc nng moi cua
h thng. Vic thuc hin kim thu lai tp cc thu nghim cu goi l kim thu hi quy.
Nu kim thu hi quy pht hin c vnd, th ban phai kim tra c li trong h thng
cu hay khng m h thng moi d pht hin ra, hoc c li do thm cc chuc nng moi.
R rng, kim thu hi quy l qu trnh tn km, khng kha thi nu khng c su h tro
tu dng. Trong lp trnh cuc d, tt ca cc thu nghimduoc vit nhu m c th thuc
thi, cc du vo thu nghim v kt qua mong doi duoc xc dinh r v duoc tu dng
kim tra. Khi duoc su dung cng voi mt khung kim thu tu dng nhu J unit (Massol v
Husted, 2003), diu ny c nghia l cc thu nghim c th duoc tu dng thuc hin lai.
Dy l nguyn l co ban cua lp trnh cuc d, khi tp cc thu nghim ton dinduoc
thuc hin bt cu lc no m moi duoc tch hop v cc m moi ny khng duoc chp
nhn cho dn khi tt ca cc thu nghimduoc thuc hin thnh cng.
3.4. Kim thu pht hnh
Kim thu pht hnh l qu trnh kim thu mt h thng se duoc phn phi toi cc
khch hng. Muc tiu du tin cua qu trnh ny l lm tng su tin cy cua nh cung
cp rng san phm ho cung cp c dy du cc yu cu. Nu thoa mn, h thng c th
duoc pht hnh nhu mt san phm hocduoc phn phi dn cc khch hng. D chung
to h thng c dy du cc yu cu, ban phai chi ra n c cc chuc nng dc ta, hiu
nng, v tnh tin cy cao, n khng gp sai st trong khi duoc su dung bnh thuong.
Kim thu pht hnh thuong l qu trnh kim thu hpden, cc thu nghimduoc ly
tu dc ta h thng. H thng duoc di xu nhu chic hpden, cc hoat dng cua n chi
c th duoc nhn bit qua vic nghin cuudu vo v du ra cua n. Mt tn khc cua
qu trnh ny l kim thu chuc nng, boi v nguoi kim tra chi tp trung xem xt cc
chuc nng v khng quan tm su thuc thi cua phn mm.
http://www.ebook.edu.vn 28
Hnh 3.4 minh hoa m hnh mt h thngduoc kim thu bng phuong php kim thu
hpden. Nguoi kim tra duadu vo vo thnh phn hoc h thng v kim tra du ra
tuong ung. Nudu ra khng nhu du bo truoc (v du, nudu ra thuc tp O
e
), kim
thu pht hin mt li trong phn mm.
Khi h thng kim thu duoc thuc hin, ban nn thu m se phn mm bng cch lua
chon cc truong hop thu nghim trong tp I
e
(trong hnh 3.4). Boi v, muc dch cua
chng ta l lua chon cc du vo c xc sut sinh ra li cao (du ra nm trong tp O
e
).
Ban su dung cc kinh nghim thnh cng truoc d v cc nguyn tc kim thu d dua
ra cc lua chon.
Cc tc gia nhu Whittaker (Whittaker, 2002) d tm luoc nhng kinh nghim kim
thu cua ho trong mt tp cc nguyn tc nhm tng kha nng tm ra cc thu nghim
khim khuyt. Duoi dy l mt vi nguyn tc:
1. Lua chon nhngdu vo lm cho h thng sinh ra tt ca cc thng bo li.
2. Thit k du vo lm cho b dmdu vo bi trn.
3. Lm lp lai voi cc du vo nhu nhau hoc mt dy cc du vo nhiu ln.
4. Lm sao d du ra khng dng duoc sinh ra.
5. Tnh ton kt qua ra rt lon hoc rt nho.
D xc nhn h thng thuc hin chnh xc cc yu cu, cch tip cn tt nht vnd
ny l kim thu dua trn kich ban, ban dua ra mt s kich ban v tao nn cc truong
I
e kim thu
O
e
Kt qua du ra
H thng
Cc du vo
hnh xu
di thuong
Ccdu ra bc l
su hin din
cua cc khim khuyt
D liudu vo
kim thu
gy nn
Hnh 3.4 Kim thu hpden
http://www.ebook.edu.vn 29
hop thu nghim tu cc kich ban d. V du, kich ban duoi dy c th m ta cch h
thng thu vin LIBSYS, d thao lun trong chuong truoc, c th duoc su dung:
Mt sinh vin o Sct-len nghin cuu lich su nuoc M dduoc yu cu vit mt bi
lun v Tm l cua nguoi min Ty nuoc M tu nm 1840 dn nm 1880. D lm
vic d, c y cn tm cc ti liu tu nhiu thu vin. C y dng nhp vo h thng
LIBSYS v su dung chuc nng tm kimd tm xem c y c duoc truy cp vo cc ti
liu gc trong khoang thoi gian y khng. C y tm duoc cc ngun ti liu tu rt
nhiu thu vin cua cc truong dai hoc cua M, v c y tai mt vi ban sao cc ti liu
d. Tuy nhin, voi mt vi ti liu, c y cn phai c su xc nhn tu truong dai hoc cua
c y rng c y tht su l mt sinh vin v cc ti liuduoc su cho nhng muc dch
phi thuong mai. Sau d, sinh vin d su dung cc phuong tin cua LIBSYS d yu cu
su cho php v dng k cc yu cu cua ho. Nuduoc xc nhn, cc ti liud se duoc
tai xung tu my chu cua thu vin v sau dduoc in. C y nhnduoc mt thng bo
tu LIBSYS ni rng c y se nhnduoc mt e-mail khi cc ti liud in c gi tri d
tp hop.
Tu kich ban trn, chng ta c th p dung mt s thu nghimd tm ra muc dch cua
LIBSYS:
1. Kim thu co ch dng nhp bng cch thuc hin cc dng nhpdng v dng nhp
sai d kim tra nguoi dng hop l duoc chp nhn v nguoi dng khng hop l
khngduoc chp nhn.
2. Kim thu co ch tm kim bng cch su dung cc cu hoi d bit cc ti liu cn
tm d kim tra xem co ch tm kim c thuc su tm thy cc ti liud.
3. Kim thu su trnh by h thngd kim tra cc thng tin v ti liu c duoc hin
thi dng khng.
4. Kim thu co ch cho php yu cu tai ti liu xung.
5. Kim thu e-mail tra loi cho bit ti liud tai xung l sn sng su dung.
http://www.ebook.edu.vn 30
Voi mi thu nghim, ban nn thit k mt tp cc thu nghim bao gm cc du vo
hop l v du vo khng hop l d sinh ra cc du ra hop l v du ra khng hop l.
Ban cung nn t chuc kim thu dua trn kich ban, v th du tin cc kich ban thch
hopduoc thu nghim, sau d cc kich ban khc thuong v ngoai l duoc xem xt, v
vy su c gng cua ban dnh cho cc phn m h thng thuong duoc su dung.
Nu band su dung truong hop nguoi dng d m ta cc yu cu cua h thng, cc
truong hop nguoi dng d v biud lin kt ni tip c th l co so d kim thu h
thng. D minh hoadiu ny, ti su dung mt v du tu h thng tram du bo thoi tit,
Hnh 3.5 chi ra cc thao tc ln luot duoc thuc hin tai tram du bo thoi tit khi n
dpung mt yu cud tp hop d liu cho h thng ban ve. Ban c th su du biud
ny d nhn bit cc thao tc se duoc thu nghim v gip cho vic thit k cc truong
hop thu nghimd thuc hin cc thu nghim. V vy d dua ra mt yu cu cho mt
bo co se dndn su thuc hin cua mt chui cc thao tc sau:
CommsController:request WheatherStation:report WeatherData:summarise
Biud d c th duoc su dungd nhn bit du vo v du ra cn tao ra cho cc thu
nghim:
1. Mt du vo cua mt yu cu bo co nn c mt su thua nhn v cui cng bo
co nn xut pht tu yu cu. Trong lc kim thu, ban nn tao ra d liu tm tt, n
c th duoc dng d kim tra xem bo co duoc t chuc chnh xc.
Hnh 3.5 Biud dy tp hop d liu v thoi tit
http://www.ebook.edu.vn 31
2. Mt yu cudu vo cho mt bo co v kt qua cua WeatherStation trong mt bo
co tm tt duoc sinh ra. Ban c th kim thu diu ny mt cch c lp bng cch
tao ra cc d liu th tuong ung voi ban tm tt, ban d chun bi d kim tra
CommosController v kim tra di tuong WeatherStation dduocdua ra chnh xc
trong ban tm tt.
3. D liu th trn cung duoc su dungd kim thu di tuong WeatherData.
Tt nhin, ti d lm don gian biu d trong hnh 3.5 v n khng chi ra cc ngoai l.
Mt kich ban kim thu hon chinh cung phai c trong ban k khai v dam bao nm bt
duocdng cc ngoai l.
3.5. Kim thu hiu nang
Ngay khi mt h thng dduoc tch hopdydu, h thng c th duoc kim tra cc thuc
tnh ni bt nhu hiu nng v d tin cy. Kim thu hiu nng phai duoc thit k d dam
bao h thng c th xu l nhu mong mun. N thuong bao gm vic lp mt dy cc thu
nghim, gnh nng se duoc tng cho nn khi h thng khng th chp nhnduoc na.
Cng voi cc loai kim thu khc, kim thu hiu nng lin quan dn ca vic kim chung
cc yu cu cua h thng v pht hin cc vnd v khim khuyt trong h thng. D kim
thu cc yu cu hiu nng dat duoc, ban phai xy dung m ta so luoc thao tc. M ta so
luoc thao tc l tp cc thu nghim phan nh su ha trn cc cng vic se duoc thuc hin
boi h thng. V vy, nu 90% giao dich trong h thng c kiu A, 5% kiu B v phn cn
lai c kiu C, D v E, th chng ta phai thit k m ta so luoc thao tc phn lon tp trung
vo kim thu kiu A. Nu khng th ban se khng c duoc thu nghim chnh xc v hiu
nng hoat dng cua h thng.
Tt nhin, cch tip cn ny khng nht thit l tt d kim thu khim khuyt. Nhu ti d
thao lun, theo kinh nghimd chi ra cch hiu qua d pht hin khim khuyt l thit k
cc thu nghim xung quanh gioi han cua h thng. Trong kim thu hiu nng, diu ny c
nghia l nhn manh h thng (v th n c tn l kim thu nhn manh) bng cch tao ra
nhngdi hoi bn ngoi gioi han thit k cua phn mm.
V du, mt h thng xu l cc giao dich c th duoc thit k d xu l dn 300 giao dich
mi giy; mt h thngdiu khin c th duoc thit k d diu khin toi 1000 thit bi du
cui khc nhau. Kim thu nhn manh tip tuc cc thu nghim bn canh vic thit k lon
nht duoc nap vo h thng cho dn khi h thng gp li. Loai kim thu ny c 2 chuc
nng:
1. N kim thu vic thuc hin li cua h thng. Truong hop ny c th xut hin qua
vic phi hop cc su kin khng mong mun bng cch nap vuot qu kha nng cua
h thng. Trong truong hop ny, sai st cua h thng lm cho d liu bi hu hong
hoc khng dp ung duoc yu cu cua nguoi dng. Kim thu nhn manh kim tra
su qu tai cua h thng dn toi tht bai mm hon l lm supd duoi luong tai cua
n.
2. N nhn manh h thng v c th gy nn khim khuyt tro nn r rng m bnh
thuong khng pht hin ra. Mc d, n chung to nhng khim khuyt khng th
dn dn su sai st cua h thng trong khi su dung bnh thuong, c th him gp
trong truong hop bnh thuong m kim thu gay cn ti tao.
http://www.ebook.edu.vn 32
Kim thu gay cn c lin quan dc bit dn vic phn phi h thng dua trn mt mt
mang luoi my xu l. Cc h thng thuong dua ra di hoi cao khi chng phai thuc hin
nhiu cng vic. Mang tro thnh bi lm mt tc dung voi d liu kt hop m cc qu trnh
khc nhau phai trao di, v vy cc qu trnh tro nn chm hon, nhu khi n doi d liu yu
cu tu qu trnh khc.
3.6. Kim thu thnh phn
Kim thu thnh phn (thinh thoang duoc goi l kim thu don vi) l qu trnh kim thu cc
thnh phn ring bit cua h thng. Dy l qu trnh kim thu khim khuyt v vy muc
tiu cua n l tm ra li trong cc thnh phn. Khi thao lun trong phn gioi thiu, voi hu
ht cc h thng, nguoi pht trin cc thnh phn chiu trch nhim kim thu cc thnh
phn. C nhiu loai thnh phn khc nhau, ta c th kim thu chng theo cc buoc sau:
1. Cc chuc nng v cch thuc ring bit bn trong di tuong.
2. Cc lopdi tuong c mt vi thuc tnh v phuong thuc.
3. Kt hop cc thnh phn d tao nn cc di tuong v chuc nng khc nhau. Cc
thnh phn hn hop c mt giao din r rng duoc su dung d truy cp cc chuc
nng cua chng.
Cc chuc nng v phuong thuc ring le l loai thnh phn don gian nht v cc thu
nghim cua ban l mt tp cc loi goi toi cc thu tuc voi tham s du vo khc nhau. Ban
c th su dung cch tip cn ny d thit k truong hop kim thu (duoc thao lun trong
phn sau), d thit k cc thu nghim chuc nng v phuong thuc.
Khi ban kim thu cc lopdi tuong, ban nn thit k cc thu nghimd cung cp tt ca
cc chuc nng cuadi tuong. Do d, kim thu lopdi tuong nn bao gm:
1. Kim thu tt ca cc thao tc c lp lin kt tao thnh di tuong.
2. B tr v kim tra tt ca cc thuc tnh lin kt tao thnh di tuong.
3. Kim tra tt ca cc trang thi cuadi tuong. Diu ny c nghia l tt ca cc su kin
gy ra cc trang thi khc nhau cuadi tuong nn duoc m phong.
V du, tram du bo thoi tit c giao din trnh by trn hnh 3.6. N chi c mt thuc tnh,
ldinh danh cua n. N c mt hng s l tp thng s khi tram du bo thoi tit duoc thit
Hnh 3.6 Giao din
cuadi tuong
WeatherStation
http://www.ebook.edu.vn 33
dt. Do d, ban chi cn mt thu nghimd kim tra n dduoc thit dt hay chua. Ban cn
xc dinh cc truong hop kim thu d kim tra reportWeather, calibrate, test, startup v
shutdown. Trong truong hop l tuong, ban nn kim thu cc phuong thuc ring bit,
nhung trong mt vi truong hop, cn c vi thu nghim lin tip. V du d kim thu
phuong thuc shutdown ban cn thuc hin phuong thuc startup.
Su dung m hnh ny, ban c th nhn bit thu tu cua cc trang thi chuyn tip phai duoc
kim thu v xc dinh thu tu chuyn tip cc su kin. Trong nguyn tc ny, ban nn kim
thu moi trang thi chuyn tip c th xay ra, mc d trong thuc t, diu ny c th rt tn
km.V du dy trang thi nn kim thu trong tram du bo thoi tit bao gm:
Shutdown Waiting Shutdown
Waiting Calibrating Testing Transmitting Waiting
Waiting Collecting Waiting Summarising Transmitting Waiting
Nu ban su dung su k thua se lm cho vic thit k lop di tuong kim thu kh khn
hon. Mt lop cha cung cp cc thao tc se duoc k thua boi mt s lop con, tt ca cc lop
con nn duoc kim thu tt ca cc thao tc k thua. L do l cc thao tc k thua c th d
thay di cc thao tc v thuc tnh sau khi duoc k thua. Khi mt thao tc cua lop cha duoc
dinh nghia lai, th n phai duoc kim thu.
Khi nim lop tuong duong, duoc thao lun trong phn 23.3.2, c th cungduoc p dung
cho cc lopdi tuong. Kim thu cc lop tuongduong ging nhau c th su dung cc thuc
tnh cuadi tuong. Do d, cc lop tuongduong nn duoc nhn bit nhu su khoi tao, truy
cp v cp nht tt ca thuc tnh cua lopdi tuong.
3.7. Kim thu giao din
Nhiu thnh phn trong mt h thng l su kt hop cc thnh phn tao nn boi su tuong
tc cua mt vi di tuong. Kim thu cc thnh phn hn hop chu yu lin quan dn kim
thu hoat dng giao din cua chng thng qua cc dc ta.
Hnh 3.7 minh hoa qu trnh kim thu giao din. Gia su cc thnh phn A, B, v C d
duoc tch hop d tao nn mt thnh phn lon hoc mt h thng con. Cc thu nghim
khng chi p dung vo cc thnh phn ring le m cn duoc p dung vo giao din cua cc
thnh phn hn hopduoc tao nn bng cch kt hop cc thnh phnd.
Kim thu giao dindc bit quan trong trong vic pht trin phn mm huongdi tuong
v cc thnh phn co so. Cc di tuong v cc thnh phnduoc xc dinh qua giao din cua
chng v c th duoc su dung lai khi lin kt voi cc thnh phn khc trong cc h thng
khc nhau. Cc li giao din trong thnh phn hn hop khng th duoc pht hin qua vic
kim thu cc di tuong v cc thnh phn ring le. Su tuong tc gia cc thnh phn trong
thnh phn hn hop c th pht sinh li.
C nhiu kiu giao din gia cc thnh phn chuong trnh, do d c th xut hin cc
kiu li giao din khc nhau:
http://www.ebook.edu.vn 34
1. Giao din tham s: Khi d liu hoc tham chiu chuc nngduocdua tu thnh phn
ny toi thnh phn khc.
2. Giao din chia se b nho: Khi mt khi b nho duoc chia se gia cc thnh phn.
D liuduoc d trong b nho boi mt h thng con v duoc truy xut boi mt h
thng khc.
3. Giao din thu tuc: Mt thnh phn bao gm mt tp cc thu tuc c th duoc goi boi
cc thnh phn khc. Cc di tuong v cc thnh phn dng lai c dang giao din
ny.
4. Giao din truyn thng dip: Mt thnh phn yu cu mt dich vu tu mt thnh
phn khc bng cch goi mt thng dip toi thnh phnd. Thng dip tra lai bao
gm cc kt qua thuc hin dich vu. Mt vi h thng huongdi tuong c dang giao
din ny nhu trong h thng chu-khch (client-server).
Cc li giao din l mt dang li thuong gp trong cc h thng phuc tap (Lutz, 1993).
Cc li ny duoc chia lm 3 loai:
1. Dng sai giao din: Mt thnh phn goi toi thnh phn khc v tao nn mt li
trong giao din cua chng. Dy l loai li rt thuong gp trong giao din tham s:
cc tham s c th duoc truyn sai kiu, sai thu tu hoc sai s luong tham s.
2. Hiu sai giao din: Mt thnh phn goi toi thnh phn khc nhung hiu sai cc dc
ta giao din cua thnh phnduoc goi v lm sai hnh vi cua thnh phnduoc goi.
Thnh phn duoc goi khng hoat dng nhu mong doi v lm cho thnh phn goi
cung hoat dng khng nhu mong doi. V du, mt thu tuc tm kim nhi phn c th
duoc goi thuc hin trn mt mang chuaduoc xp theo thu tu, kt qua tm kim se
khngdng.
B
C
kim thu
Cc truong hop
A
Hnh 3.7 Kim thu
giao din
http://www.ebook.edu.vn 35
3. Cc li trong b dm thoi gian: Cc li ny xut hin trong cc h thng thoi gian
thuc su dung giao din chia se b nho hoc giao din truyn thng dip. D liu
cua nh san xut v d liu cua khch hng c th duoc diu khin voi cc tc d
khc nhau. Nu khng ch dn trong thit k giao din, th khch hng c th truy
cp thng tin li thoi boi v thng tin cua nh san xut chuaduoc cp nht trong
giao din chia se.
Kim thu nhng khim khuyt trong giao din rt kh khn boi v mt s li giao din
chi biu l trong nhng diu kin dc bit. V du, mt di tuong c chua mt danh sch
hng doi voi cu trc d liu c chiu di c dinh. Gia su danh sch hng doi ny duoc
thuc hin voi mt cu trc d liu v han v khng kim tra vic trn hng doi khi mt
muc duoc thm vo. Truong hop ny chi c th pht hin khi kim thu voi nhng thu
nghim lm cho trn hng doi v lm sai hnh vi cuadi tuong theo nhng cch c th
nhn bit duoc.
Nhng li khc c th xut hin do su tuong tc gia cc li trong cc mdun v di
tuong khc nhau. Nhng li trong mt di tuong c th chi duoc pht hin khi mt vi di
tuong khc hoat dng khng nhu mong mun. V du, mt di tuong c th goi mt di
tuong khc d nhn duoc mt vi dich vu v gia su duoc dp ung chnh xc. Nu n d
hiu sai v gi tri duoc tnh, th gi tri tra v l hop l nhung khng dng. Diu ny chi
duoc pht hin khi cc tnh ton sau d c kt qua sai.
Sau dy l mt vi nguyn tcd kim thu giao din:
1. Khao st nhng m dduoc kim thu v danh sch loi goi toi cc thnh phn bn
ngoi.
2. Voi nhng tham s trong mt giao din, kim thu giao din voi tham s dua vo
rng.
3. Khi mt thnh phnduoc goi thng qua mt giao din thu tuc, thit k thu nghim
sao cho thnh phn ny bi sai. Cc li khc hu nhu l do hiu sai dc ta chung.
4. Su dung kim thu gay cn, nhu d thao lun o phn truoc, trong h thng truyn
thng dip. Thit k thu nghim sinh nhiu thng dip hon trong thuc t. Vnd b
dm thoi gian c th duoc pht hin theo cch ny.
5. Khi mt vi thnh phn tuong tc thng qua chia se b nho, thit k thu nghim voi
thu tu cc thnh phnduoc kch hoat thay di. Nhng thu nghim ny c th pht
hin nhng gia su ngm cua cc lp trnh vin v thu tu d liu chia se duoc su
dung v duoc giai phng.
K thut hop l tinh thuong hiu qua hon kim thu d pht hin li giao din. Mt ngn
ng dinh kiu cht che nhu J AVA cho php ngn chn nhiu li giao din boi trnh bin
dich. Khi mt ngn ng khng cht che nhu C duoc su dung, mt phn tch tinh nhu LINT
c th pht hin cc li giao din. Su kim tra chuong trnh c th tp trung vo cc giao
din gia cc thnh phn v cu hoi v hnh vi giao din xay ra trong qu trnh kim tra.
3.8. Thit k trung hp thu (Test case design)
Thit k truong hop thu nghim l mt phn cua kim thu h thng v kim thu
thnh phn, ban se thit k cc truong hop thu nghim (du vo v du ra du don) d
kim thu h thng. Muc tiu cua qu trnh thit k truong hop kim thu l tao ra mt tp
http://www.ebook.edu.vn 36
cc truong hop thu nghim c hiu qua d pht hin khim khuyt cua chuong trnh v chi
ra cc yu cu cua h thng.
D thit k mt truong hop thu nghim, ban chon mt chuc nng cua h thng hoc cua
thnh phn m ban se kim thu. Sau d ban chon mt tp cc du thuc hin cc chuc nng
d, v cung cp ti liu v du ra mong mun v gioi han cuadu ra, v dim m c th
thit k tu dngd kim tra thu nghim voi du ra thuc t v du ra mong doi vn nhu th.
C nhiu phuong php khc nhau gip ban c th thit k cc truong hop thu nghim:
1. Kim thu dua trn cc yu cu: Cc truong hop thu nghimduoc thit k d kim
thu cc yu cu h thng. N duoc su dung trong hu ht cc buoc kim thu h
thng boi v cc yu cu h thng thuongduoc thuc hin boi mt vi thnh phn.
Voi mi yu cu, ban xc dinh cc truong hop thu nghimd c th chung to duoc
h thng c yu cud.
2. Kim thu phn hoach: ban xc dinh cc phn hoachdu vo v phn hoachdu ra
v thit k thu nghim, v vy h thng thuc hin voi du vo tu tt ca cc phn
hoach v sinh ra du ra trong tt ca cc phn hoach. Cc phn hoach l cc nhm
d liu c chung dc tnh nhu tt ca cc s du m, tt ca tn du c du c d di
nho hon 30 k tu, tt ca cc su kin pht sinh tu vic chon cc muc trn thucdon
3. Kim thu cu trc: Ban su dung nhng hiu bit v cu trc chuong trnh d thit
k cc thu nghim thuc hin tt ca cc phn cua chuong trnh. V co ban, khi kim
thu mt chuong trnh, ban nn kim tra thuc thi mi cu lnh t nht mt ln. Kim
thu cu trc gip cho vic xc dinh cc truong hop thu nghim.
Thng thuong, khi thit k cc truong hop thu nghim, ban nn bt du voi cc thu
nghim muc cao nht cua cc yu cu, sau d thm dn cc thu nghim chi tit bng cch
su dung kim thu phn hoach v kim thu cu trc.
3.8.1. Kim thu da trn cc yu cu
Mt nguyn l chung cua cc yu cu k ngh l cc yu cu phai c kha nng kim thu
duoc. Cc yu cu nn duoc vit theo cch m mt thu nghim c th duoc thit k, do d
quan st vin c th kim tra xem yu cudd thoa mn chua. V vy, kim thu dua trn
cc yu cu l mt tip cn c h thng d thit k truong hop thu nghim gip cho ban
xem xt mi yu cu v tm ra cc thu nghim. Kim thu dua trn cc yu cu c hiu qua
hon kim thu khim khuyt bandang chung to h thng thuc hinduoc dy du cc yu
cu.
V du, hy xem xt cc yu cu cho h thng LIBSYS .
1. Nguoi dng c th tm kim hoc tt ca cc tp ban du cua co so d liu hoc lua
chon mt tp con tu d.
2. H thng se cung cp cc khung nhn hop l cho nguoi dng d doc ti liu trong
kho ti liu.
3. Moi yu cu se duoc cp pht mt dinh danh duy nht (ORDER_ID) d nguoi dng
c th duoc php sao chp qua ti khoan cua vng luu tr thuong truc.
Gia su chuc nng tm kimdduoc kim thu, th cc thu nghim c th chp nhnduoc
cho yu cu thu nht l:
- Ban du, nguoi dng tm kim cc muc m d bit su c mt v d bit khng c
trong tp co so d liu chi gm c mt co so d liu.
http://www.ebook.edu.vn 37
- Ban du, nguoi dng tm kim cc muc m d bit su c mt v d bit khng c
trong tp co so d liu gm c hai co so d liu.
- Ban du, nguoi dng tm kim cc muc m d bit su c mt v d bit khng c
trong tp co so d liu gm c nhiu hon hai co so d liu.
- Lua chon mt co so d liu tu tp co so d liu, nguoi dng tm kim cc muc m
d bit su c mt v d bit khng c trong co so d liud.
- Lua chon nhiu hon mt co so d liu tu tp co so d liu, nguoi dng tm kim
cc muc m d bit su c mt v d bit khng c trong co so d liud.
Tu d, ban c th thy kim thu mt yu cu khng c nghia l chi thuc hin kim thu
trn mt thu nghim. Thng thuong, ban phai thuc kim thu nghim trn mt vi thu
nghimd dam bao band kim sot duoc yu cud.
Kim thu cc yu cu khc trong h thng LIBSYS c th duoc thuc hin theo ging nhu
trn. Voi yu cu thu hai, ban se soan ra cc thu nghimd phn phi tt ca cc kiu ti
liu c th duoc xu l boi h thng v kim tra su hin thi cc ti liud. Voi yu cu thu
ba, ban gia vo dua vo mt vi yu cu, sau d kim tra dinh danh yu cuduoc hin thi
trong giy chung nhn cua nguoi dng, v kim tra dinh danh yu cu d c l duy nht
hay khng.
3.8.2. Kim thu phn hoch
D liudu vo v kt qua du ra cua chuong trnh thuong duoc phn thnh mt s loai
khc nhau, mi loai c nhngdc trung chung, nhu cc s du duong, cc s du m, v
cc thucdon lua chon. Thng thuong, cc chuong trnh thuc hin theo cch c th so snh
duoc voi tt ca thnh vin cua mt lop. Do d, nu chuong trnh duoc kim thu thuc hin
nhng tnh ton v yu cu hai s duong, th ban se mong mun chuong trnh thuc hin
theo cch nhu nhau voi tt ca cc s duong.
Boi v cch thuc hin l tuong duong, cc loai ny cn duoc goi l phn hoach tuong
duong hay min tuongduong (Bezier, 1990). Mt cch tip cn c h thngd thit k cc
truong hop kim thu l dua trn su dinh danh cua tt ca cc phn hoach trong mt h thng
hoc mt thnh phn. Cc truong hop thu nghimduoc thit k sao cho du vo v du ra
nm trong phn hoachd. Kim thu phn hoach c th duoc su dungd thit k cc truong
hop thu nghim cho cc h thng v cc thnh phn.
Trong hnh 3.8, mi phn hoach tuong duong duoc biu thi nhu mt elp. Du vo cc
phn hoach tuongduong l nhng tp d liu, tt ca cc tp thnh vin nn duoc xu l mt
cch tuong duong. Du ra phn hoach tuong l du ra cua chuong trnh v chng c cc
dc trung chung, v vy chng c th duoc kim tra nhu mt lop ring bit. Ban cung xc
dinh cc phn hoach c du vo o bn ngoi cc phn hoach khc. Kim tra cc thu
nghim m chuong trnh su dung du vo khng hop l c thuc hin dng cch thuc
khng. Cc du vo hop l v du vo khng hop l cung duoc t chuc thnh cc phn
hoach tuong duong.
http://www.ebook.edu.vn 38
Khi ban d xc dinh duoc tp cc phn hoach, ban c th lua chon cc truong hop thu
nghim cho mi phn hoachd. Mt quy tc tt d lua chon truong hop thu nghim l lua
chon cc truong hop thu nghim trn cc gioi han cua phn hoach cng voi cc thu nghim
gn voi dim gia cua phn hoach. L do cn ban l nguoi thit k v lp trnh vin thuong
xem xt cc gi tri du vo din hnh khi pht trin mt h thng. Ban kim thu diu d
bng cch lua chondim gia cua h thng. Cc gi tri gioi han thuong khng din hnh
(v du, s 0 c th duoc su dung khc nhau trong cc tp cc s khng m), v vy n
khng duoc nguoi pht trin ch toi. Cc li cua chuong trnh thuong xut hin khi n
xu l cc gi tri khng din hnh.
Ban xc dinh cc phn hoach bng cch su dung dc ta chuong trnh hoc ti liu huong
dn su dung, v tu kinh nghim cua mnh, ban du don cc loai gi tri du vo thch hopd
pht hin li. V du, tu dc trung cua chuong trnh: chuong trnh chp nhn tu 4 dn 8 du
vo l cc s nguyn c 5 ch s lon hon 10 000. Hnh 3.9 chi ra cc phn hoach cho tnh
hung ny v cc gi tri du vo c th xay ra.
D minh hoa cho ngun gc cua nhng truong hop thu nghim ny, su dung cc dc ta
cua thnh phn tm kim (trn hnh 3.10). Thnh phn ny tm kim trn mt dy cc phn
tu d dua ra phn tu mong mun (phn tu kha). N tra lai vi tr cua phn tu d trong dy.
Ti d chi r dy l mt cch truu tuong d xc dinh cc diu kin tin quyt phai dng
truoc khi thnh phndduoc goi, v cc hudiu kin phai dng sau khi thuc hin.
Ccdu vo
khng hop l
H thng
Ccdu vo
hop l
Cc du ra
Hnh 3.8
Phn hoach
tuongduong
http://www.ebook.edu.vn 39
Diu kin tin quyt: Thu tuc tm kim se chi lm vic voi cc dy khng rng. Hudiu
kin: binFound duoc thit dt nu phn tu kha thuc dy. Phn tu kha c chi s L. Gi
tri chi s khng duoc xc dinh nu phn tu d khng thuc dy.
Tu dc trungd, ban c th nhn ra hai phn hoach tuongduong:
1. Cc du vo c phn tu kha l mt phn tu cua dy (Found =true).
2. Cc du vo c phn tu kha khng phai l mt phn tu cua dy (Found =false).
procedure Search (Key : ELEM ; T: SEQ of ELEM;
Found : in out BOOLEAN; L: in out ELEM_INDEX) ;
Tin diu kin
-- Dy c t nht mt phn tu
TFIRST <=TLAST
Hu diu kin
-- Phn tu duoc tm thy v duoc chi boi L
( Found and T (L) =Key)
hoc
-- Phn tu khng thuc dy
( not Found and
not (exists i, TFIRST >=i <=TLAST, T (i) =Key ))
Nm gia 10000 v 99999 Nho hon 10000 Lon hon 99999
9999
10000 50000
100000
99999
Cc gi tri du vo
Nm gia 4 v 10 Nho hon 4 Lon hon 10
3
4 7
11
10
S gi tri du vo
Hnh 3.9 Cc phn hoch tuong duong
http://www.ebook.edu.vn 40
Khi ban thu nghim chuong trnh voi cc dy, mang hoc danh sch, mt s nguyn tc
thuongduoc su dungd thit k cc truong hop kim thu:
1. Kim thu phn mm voi dy chi c mt gi tri. Lp trnh vin thuong nghi cc dy
gm vi gi tri, v thnh thoang, ho cho rngdiu ny lun xay ra trong cc chuong
trnh cua ho. V vy, chuong trnh c th khng lm vic chnh xc khi dy duoc
dua vo chi c mt gi tri.
2. Su dung cc dy voi cc kch thuoc khc nhau trong cc thu nghim khc nhau.
Diu ny lm giam co hi mt chuong trnh khim khuyt se ngu nhin dua ra du
ra chnh xc boi v cc du vo c cc dc tnh ngu nhin.
3. Xut pht tu cc thu nghim c phn tu du tin, phn tu o gia, v phn tu cui
cng duoc truy cp. Cch tip cn ny bc l cc vn d tai cc gioi han phn
hoach.
Tu cc nguyn tc trn, hai phn hoach tuongduong c th duoc xc dinh:
1. Dy du vo c mt gi tri.
2. S phn tu trong dy du vo lon hon 1.
Sau khi, ban xc dinh thm cc phn hoach bng cch kt hop cc phn hoachd c, v
du, kt hop phn hoach c s phn tu trong dy lon hon 1 v phn tu kha khng thuc
Dy Phn tu
C mt gi tri Thuc dy
C mt gi tri Khng thuc dy
Nhiu hon mt gi tri L phn tu du tin trong dy
Nhiu hon mt gi tri L phn tu cui cng trong dy
Nhiu hon mt gi tri L phn tu nm gia trong dy
Nhiu hon mt gi tri Khng thuc dy
Dy du vo Kha (Key) Du ra (Found,L)
17 17 true, 1
17 0 false, ??
17, 29, 21, 23 17 true, 1
41, 18, 9, 31, 30, 16, 45 45 true, 7
17, 18, 21, 23, 29, 41, 38 23 true, 4
21, 23, 29, 33, 38 25 false, ??
Hnh 3.10 Dc ta chuong trnh tm kim
Hnh 3.11 Cc phn hoch tuong duong cho chuong trnh tm kim
http://www.ebook.edu.vn 41
dy. Hnh 3.11 dua ra cc phn hoach m ban d xc dinh d kim thu thnh phn tm
kim.
Mt tp cc truong hop thu nghim c th dua trn cc phn hoachd cungduoc dua ra
trn hnh 3.11. Nu phn tu kha khng thuc dy, gi tri cua L l khng xc dinh (??).
Nguyn tc cc dy voi s kch thuoc khc nhau nn duoc su dung d duoc p dung
trong cc truong hop thu nghim ny.
Tp cc gi tri du vo su dungd kim thu thu tuc tm kim khng bao gio ht. Thu tuc
ny c th gp li nu dy du vo tnh co gm cc phn tu 1, 2, 3 v 4. Tuy nhin, diud
l hop l d gia su: nu thu nghim khng pht hin khim khuyt khi mt thnh vin cua
mt loai duoc xu l, khng c thnh vin khc cua lop se xc dinh cc khim khuyt. Tt
nhin, cc khim khuyt se vn tn tai. Mt vi phn hoach tuong duong c th khng
duoc xc dinh, cc li c th dduoc tao ra trong phn hoach tuongduong hoc d liu
thu nghim c th dduoc chun bi khng dng.
3.8.3. Kim thu cu trc
Kim thu cu trc (hnh 3.12) l mt cch tip cn d thit k cc truong hop kim thu,
cc thu nghimduoc xc dinh tu su hiu bit v cu trc v su thuc hin cua phn mm.
Cch tip cn ny thinh thoang cn duoc goi l kim thu hp trng, hp knh, hoc
kim thu hp trong d phn bit voi kim thu hpden.
M thnh phn
kim thu
Cc du ra
D liu kim thu
Xut pht tu
Cc kim thu
Hnh 3.12 Kim thu cu trc
Ranh gioi gia cc lop tuongduong
Dim gia
Cc phn tu nho hon
phn tu o gia phn tu o gia
Cc phn tu lon hon
Hnh 3.13 Cc lp tuong duong trong tm kim nh| phn
http://www.ebook.edu.vn 42
Hiuduoc cch su dung thut ton trong mt thnh phn c th gip ban xc dinh thm
cc phn hoach v cc truong hop thu nghim. D minh hoadiu ny, ti d thuc hin cch
dc ta thu tuc tm kim (hnh 3.10) nhu mt thu tuc tm kim nhi phn (hnh 3.14). Tt
nhin, diu kin tin quyt dduoc baodam nghim ngt. Dy duoc thuc thi
Class BinSearch {
// Dy l mt hm tm kim nhi phn duoc thuc hin trn mt dy cc
// di tuongd c thu tu v mt kha, tra v mt di tuong voi 2 thuc
// tnh l:
// index gi tri chi s cua kha trong dy
// found c kiu logic cho bit c hay khng c kha trong dy
// Mt di tuongduoc tra v boi v trong J ava khng th thng qua cc
// kiu co ban bng tham chiu toi mt hm v tra v hai gi tri
// Gi tri index =-1 nu kha khng c trong dy
public static void search( int key, int[] elemArray, Result r)
{
1. int bottom =0;
2. int top = elemArray.length 1;
int mid;
3. r.found =false;
4. r.index =-1;
5. while (bottom <=top)
{
6. mid =(top +bottom) / 2;
7. if (elemArray[mid] =key)
{
8. r.index =mid;
9. r.found =true;
10. return;
} // if part
else
{
11. if (elemArray[mid] <key)
12. bottom =mid +1;
else
13. top =mid -1;
}
} // while loop
14. }// search
}// BinSearch
Hnh 3.14 Chuong trnh tm kim nh| phn duc vit bang Java
http://www.ebook.edu.vn 43
nhu mt mang v mang ny phai duoc sp xp v gi tri gioi han duoi phai nho hon gi tri
gioi han trn.
D kim tra m cua thu tuc tm kim, ban c th xem vic tm kim nhi phn chia khng
gian tm kim thnh 3 phn. Mi phn duoc tao boi mt phn hoach tuong duong (hnh
3.13). Sau d, ban thit k cc truong hop thu nghim c phn tu kha nm tai cc gioi han
cua mi phn hoach.
Diu ny duadn mt tp sua lai cua cc truong hop thu nghim cho thu tuc tm kim,
nhu trn hnh 3.15. Ch , d suadi mangdu vo v vy n dduoc sp xp theo thu tu
tng dn v d thm cc thu nghim c phn tu kha k voi phn tu gia cua mang.
3.8.4. Kim thu dung dn
Kim thu duong dn l mt chin luoc kim thu cu trc. Muc tiu cua kim thu duong
dn l thuc hin moi duong dn thuc hindc lp thng qua mt thnh phn hoc chuong
trnh. Nu moi duong dn thuc hindc lpduoc thuc hin, th tt ca cc cu lnh trong
thnh phnd phai duoc thuc hin t nht mt ln. Hon na, tt ca cu lnhdiu kin phai
duoc kim thu voi ca truong hopdng v sai. Trong qu trnh pht trin huongdi tuong,
kim thu duong dn c th duoc su dung khi kim thu cc phuong thuc lin kt voi cc di
tuong.
S luong duong dn qua mt chuong trnh thuong ty l voi kch thuoc cua n. Khi tt ca
cc mdun duoc tch hop trong h thng, n tro nn khng kha thi d su dung k thut
kim thu cu trc. V th, k thut kim thu duong dn hu nhu duoc su dung trong lc
kim thu thnh phn.
Kim thu duong dn khng kim tra tt ca cc kt hop c th cua cua cc duong dn qua
chuong trnh. Voi bt ky thnh phn no ngoi cc thnh phn rt tm thuong khng c
vng lp, dy l muc tiu khng kha thi. Trong chuong trnh c cc vng lp se c mt s
v han kha nng kt hop duong dn. Thm ch, khi tt ca cc lnh cua chuong trnh d
duoc thuc hin t nht mt ln, cc khim khuyt cua chuong trnh vn c th duoc dua ra
khi cc duong dndc bit duoc kt hop.
Dy du vo (T)
17
17
17, 21, 23, 29
9, 16, 18, 30,31,41,45
17, 18, 21, 23, 29, 38, 41
17, 18, 21, 23, 29, 33, 38
12, 18, 21, 23, 32
21, 23, 29, 33, 38
Kha (Key)
17
0
17
45
23
21
23
25
Du ra (Found,L)
true, 1
false, ??
true, 1
true, 7
true, 4
true, 3
true, 4
false, ??
Hnh 3.15 Cc trung hp kim thu cho chuong trnh tm kim
http://www.ebook.edu.vn 44
Dim xut pht d kim thu duong dn l d thi lung chuong trnh. Dy l m hnh
khung cua tt ca duong dn qua chuong trnh. Mt d thi lung chua cc nt miu ta cc
quyt dinh v cc canh trnh by lungdiu khin. D thi lungduoc xy dung bng cch
thay di cc cu lnhdiu khin chuong trnh su dung biud tuongduong. Nu khng c
cc cu lnh goto trong chuong trnh, d l mt qu trnh don gian xut pht tu d thi
lung. Mi nhnh trong cu lnh diu kin (if-then-else hoc case) duoc miu ta nhu mt
duong dn ring bit. Mi mui tn tro lai nt diu kin miu ta mt vng lp. Ti d ve d
thi lung cho phuong thuc tm kim nhi phn trn hnh 3.16. D tao nn su tuong ung gia
d thi ny v chuong trnh trn hnh 3.14 duoc r rng, ti d miu ta mi cu lnh nhu
mt nt ring bit, cc s trong mi nt tuongung voi s dng trong chuong trnh.
Muc dch cua kim thu duong dn l dam bao mi duong dndc lp qua chuong trnh
duoc thuc hin t nht mt ln. Mt duong dn chuong trnh dc lp l mt duong di
ngang qua t nht mt canh moi trong d thi lung. Ca nhnh dng v nhnh sai cua cc
diu kin phai duoc thuc hin.
D thi lung cho thu tuc tm kim nhi phn duoc miu ta trn hnh 3.16, mi nt biu
din mt dng trong chuong trnh voi mt cu lnh c th thuc hin duoc. Do d, bng
Hnh 2.16 D th| lung cua chuong trnh tm kim nh| phn
http://www.ebook.edu.vn 45
cch ln vt trn d thi lung, ban c th nhn ra cc duong dn qua d thi lung tm kim
nhi phn:
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 14
1, 2, 3, 4, 5, 14
1, 2, 3, 4, 5, 6, 7, 11, 12, 5,
1, 2, 3, 4, 5, 6, 7, 11, 13, 5,
Nu tt ca cc duong dn duoc thuc hin, chng ta c th dam bao moi cu lnh trong
phuong thuc dduoc thuc hin t nht mt ln v mi nhnh dduoc thuc hin voi cc
diu kindng v sai.
Ban c th tm duoc s luong cc duong dn dc lp trong mt chuong trnh bng tnh
ton vng lin hop (McCabe, 1976) trong d thi lung chuong trnh. Voi chuong trnh
khng c cu lnh goto, gi tri vng lin hop l nhiu hon s cu lnh diu kin trong
chuong trnh. Mt diu kindon l mt biu thuc lgc khng c cc lin kt and hoc
or. Nu chuong trnh bao gm cc diu kin phuc hop, l cc biu thuc lgc bao gm
cc lin kt and v or, th ban phai dm s diu kindon trong cc diu kin phuc hop
khi tnh s vng lin hop.
V vy, nu c 6 cu lnh if v 1 vng lp while v cc biu thuc diu kin l don,
th s vng lin hop l 8. Nu mt biu thucdiu kin l biu thuc phuc hop nhu if A and
B or C, th ban tnh n nhu 3 diu kindon. Do d, s vng lin hop l 10. S vng lin
hop cua thut ton tm kim nhi phn (hnh 3.14) l 4 boi v n c 3 diu kindon tai cc
dng 5, 7, 11.
Sau khi tnh duoc s duong dndc lp qua m chuong trnh bng tnh ton s vng lin
hop, ban thit k cc truong hop thu nghimd thuc hin mi duong dn d. S luong
truong hop thu nghim nho nht ban cn d kim tra tt ca cc duong dn tong chuong
trnh bng s vng lin hop.
Thit k truong hop thu nghim khng kh khn trong truong hop chuong trnh l thu tuc
tm kim nhi phn. Tuy nhin, khi chuong trnh c cu trc nhnh phuc tap, c th rt kh
khn d du don c bao nhiu thu nghimdduoc thuc hin. Trong truong hop d, mt
nguoi phn tch chuong trnh nngdng c th duoc su dung d pht hin so thao su thuc
thi cua chuong trnh.
Nhng nguoi phn tch chuong trnh nngdng l cc cng cu kim thu, cng lm vic
voi trnh bin dich. Trong lc bin dich, nhng nguoi phn tch ny thm cc chi thi phu d
sinh ra m. Chng dm s ln mi cu lnh dduoc thuc hin. Sau khi chuong trnh d
thuc hin, mt ban so thao thuc thi c th duoc in ra. N chi ra nhng phn chuong trnh
d thuc thi v d khng thuc thi bng cch su dung cc truong hop thu nghimdc bit. V
vy, ban so thao thuc thi cho php pht hin cc phn chuong trnh khng duoc kim thu.
3.9. T dng ha kim thu (Test automation)
Kim thu l mt giai doan tn km v nng n trong quy trnh phn mm. Kt qua l
nhng cng cu kim thu l mt trong nhng cng cu phn mmdu tin duoc pht trin.
Hin nay, cc cng cu ny d bc l nhiu su thun tin v chng lm giamdng k chi ph
kim thu.
http://www.ebook.edu.vn 46
Ti d thao lun mt cch tip cnd tu dng ha kim thu (Mosley v Posey, 2002) voi
mt khung kim thu nhu J Unit (Massol v Husted, 2003) duoc su dung kim thu phuc hi.
J Unit l mt tp cc lop J ava duoc nguoi dng mo rngd tao nn mi truong kim thu tu
dng. Mi thu nghim ring le duoc thuc hin nhu mt di tuong v mt chuong trnh
dang chay thu nghim chay tt ca cc thu nghimd. Cc thu nghimd nn duoc vit
theo cch d chng chi ra h thng kim thu c thuc hin nhu mong mun khng.
Mt phn mm kim thu workbench l mt tp tch hop cc cng cu d phuc vu cho qu
trnh kim thu. Hon na voi cc khung kim thu cho php thuc hin kim thu tu dng, mt
workbench c th bao gm cc cng cu d m phong cc phn khc cua h thng v d
sinh ra d liu thu nghim h thng. Hnh 3.17 dua ra mt vi cng cu c th bao gm
trong mt workbench kim thu:
1. Nguoi quan l kim thu: quan l qu trnh chay cc thu nghim. Ho gi vt cua d
liu thu nghim, cc kt qua mong doi v chuong trnh d dng kim thu. Cc
khung kim tu dng ha thu nghim nhu J Unit l v du cua cc nguoi quan l thu
nghim.
2. My sinh d liu thu nghim: sinh cc d liu d thu nghim chuong trnh. Diu
ny c th thuc hin bng cch lua chon d liu tu co so d liu hoc su dung cc
mud sinh ngu nhin d liu voi khun dangdng dn.
3. H tin don (Oracle): dua ra cc du don v kt qua kim thu mong mun. Cc h
tin don c th l phin ban truoc cua chuong trnh hoc h thng ban mu. Kim
thu back-to-back , bao gm vic thuc hin kim thu song song h tin don v
chuong trnh d. Cc khc bit trong cc du ra cua chng duoc lm ni bt.
4. H so snh tp tin: so snh cc kt qua thu nghim chuong trnh voi cc kt qua thu
nghim truocd v bo co cc khc bit gia chng. Cc h so snh duoc su dung
trong kim thu hi quy (cc kt qua thuc hin trong cc phin ban khc nhau duoc
so snh). Khi kim thu tu dng duoc su dung, h so snh c th duoc goi tu bn
trong cc kim thu d.
5. H sinh bo co: cung cp cc bo co d xc dinh v dua ra cc tin loi cho kt
qua thu nghim.
6. H phn tch dng: thm m vo chuong trnh d dm s ln mi cu lnh dduoc
thuc thi. Sau khi kimthu, mt ban so thao thuc thi duoc sinh ra se cho bit mi cu
lnh trong chuong trnh dduoc thuc hin bao nhiu ln.
7. H m phong (Simulator): Cc loai h m phong khc nhau c th duoc cung cp.
Muc dch cua cc h m phong l m phong cc my khi chuong trnh duoc thuc
thi. H m phong giao din nguoi dng l cc chuong trnh diu khin kich ban m
phong nhiu tuong tc dng thoi cua nguoi dng. Su dung h m phong cho I/O c
nghia l b dinh thoi gian cua dy giao dich c th duoc lpdi lp lai.
http://www.ebook.edu.vn 47
Khi su dung cho kim thu h thng lon, cc cng cu d phai duoc dinh dang v ph hop
voi h thng cu th. V du:
1. Cc cng cu moi c th duoc thm vo d kim thu cc dc trungung dung cu th,
mt vi cng cu hin c c th khng cndn.
2. Cc kich ban c th duoc vit cho h m phong giao din nguoi dng v cc mu
d xc dinh cho h sinh d liu thu nghim. Cc khun dang bo co c th cung
phai duoc xc dinh.
3. Cc tp kt qua thu nghim mong mun c th phai chun bi bng tay nu khng
mt phin ban chuong trnh no truocd c th dng duoc nhu mt h tin don.
4. H so snh tp tin mucdchdc bit c th duoc vit bao gm hiu bit v cu trc
cua kt qua thu nghim trn tp tin.
Mt luong lon thoi gian v cng suc thuong cnd tao nn mt workbench thu nghim
ton din. Do d, cc workbench hon chinh, nhu trn hnh 3.17, chi duoc su dung khi
pht trin cc h thng lon. Voi cc h thng d, ton b chi ph kim thu c th ln toi
50% tng gi tri pht trin, v vy, n l hiu qua d du tu cho cng cu cht luong cao
CASE h tro vic kim thu. Tuy nhin, v cc loai h thng khc nhau yu cu su h tro
cc loai kim thu khc nhau, cc cng cu kim thu c th khng sn c d dng. Rankin
(Rankin, 2002) d thao lun mt tnh hung trong IBM v miu ta thit k cua h thng h
tro kim thu, m ho d pht trin cho my chu kinh doanh din tu.
Cc dim chnh:
Phn tch
duoc kim thu
Kt qua Du don
File
B so snh
M phong
M ngun
Nguoi quan l D liu
H tin don
Sinh d liu
Dc ta
bo co
Bo co kt
qua kim thu
dng
Bo co
thuc thi
Chuong trnh
kim thu
kim thu
kim thu
kim thu
kim thu
B sinh
Hnh 3.17 Mt workbench kim thu
http://www.ebook.edu.vn 48
- Kim thu c th chi ra su hin din cua cc li trong chuong trnh. N khng thu
chung to khng cn li trong chuong trnh.
- Kim thu thnh phn l trch nhim cua nguoi pht trin thnh phn. Mt di kim
thu khc thuong thuc hin kim thu h thng.
- Kim thu tch hop l hoat dng kim thu h thng ban du khi ban kim thu khim
khuyt cua cc thnh phn tch hop. Kim thu pht hnh lin quan dn kim thu
cua khch hng v kim thu pht hnh nn xc nhn h thng duoc phn phi c
dydu cc yu cu.
- Khi kim thu h thng, ban nn c gng ph h thng bng cch su dung kinh
nghim v cc nguyn tc d lua chon cc kiu thu nghim c hiu qua d pht
hin khim khuyt trong h thng.
- Kim thu giao din dng d pht hin cc khim khuyt trong giao din cua cc
thnh phn hn hop. Cc khim khuyt trong giao din c th nay sinh boi li trong
khi doc cc dc ta chuong trnh, hiu sai cc dc ta chuong trnh, cc li khc hoc
do thua nhn b dm thoi gian khng hop l.
- Phn hoach tuongduong l mt cch xc dinh cc thu nghim. N phu thuc vo
vic xc dinh cc phn hoach trong tp d liu du vo v du ra, su thuc hin
chuong trnh voi cc gi tri tu cc phn hoachd. Thng thuong, cc gi tri d l
gi tri tai gioi han cua phn hoach.
- Kim thu cu trc dua trn phn tch chuong trnh d pht hin duong dn qua
chuong trnh v su dung nhng phn tch d lua chon cc thu nghim.
- Tu dng ha thu nghim lm giam chi ph kim thu bng cch h tro qu trnh
kim thu bng cch cng cu phn mm.
http://www.ebook.edu.vn 49
CHUONG 4: CC PHUONG PHP KIEM THU
Chuong ny tap trung vo cc k thuat a tao ra cc truong hop kim thu tt v t chi ph
nhat, tat ca chng phai thoa nhng muc tiu kim thu o chuong truoc. Nhc lai cc muc
tiu kim thu phan mm l thit k cc truong hop kim thu c kha nng tm kim nhiu li
nhat trong phan mm v voi t thi gian v cng suc nhat.
Hin tai pht trin rt nhiu phuong thuc thit k cc truong hop kim thu cho phn mm.
Nhng phuong php ny du cung cp mt huong kim thu c tnh h thng. Qua trong
hon na l chng cung cp mt h thng c th gip dam bao su hon chinh cua cc
truong hop kim thu pht hin li cho phn mm.
Mt san phmdu c th duoc kim thu theo 2 cch:
Hiu r mt chuc nng cu th cua mt hm hay mt module. Cc truong hop
kim thu c th xy dung d kim thu tt ca cc thao tc d.
Hiu r cch hoat dng cua mt hm/module hay san phm. Cc truong hop
kim thu c th duoc xy dung d dam bao tt ca cc thnh phn con khop voi
nhau. D l tt ca cc thao tc ni b cua hm dua vo cc m ta v tt ca cc
thnh phn ni b dduoc kim thu mt cch thoa dng.
Cch tip cndu tin duoc goi l kim thu hpden ( black box testing ) v cch tip cn
thu hai l goi l kim thu hp trng ( white box testing).
Khi d cp dn kim thu phn mm, black box testing cn duoc bit nhu l kim thu o
muc giao din ( interface ). Mc d tht su th chng duoc thit k d pht hin li. Black
box testing cn duoc su dng d chung minh kha nng hoat dng cua hm hay module
chuong trnh v c th ca mt chuong trnh lon: cc thng s du vo duoc chp nhn nhu
m ta cua hm, gi tri tra v cung hoat dng tt, dam bao cc d liu tu bn ngoi v du
nhu file d liuduoc gi/dam bao tnh nguyn ven cua d liu khi thuc thi hm.
While box testing l k thut tp trung vo khao st chc che thu tuc mt cch chi tit. Tt
ca nhngduong din tin logic trong chuong trnh duoc kim tra bng nhng truong hop
kim thu kim tra trn cc tp diu kin v cu trc lp cu th. k thut ny se kim tra
trang thi cua chuong trnh tai rt nhiu dim trong chuong trnh nhm xc gi tri mong
doi tai cc dim nay c khop voi gi tri thuc t hay khng.
Voi tt ca cc muc tiu kimdinh trn th k thut while box testing c le se dndn mt
chuong trnh chnh xc tuyt di. Tt ca nhng g chng ta cn by gio l thit k tt ca cc
duong logic cua chuong trnh v sau d l ci dt tt ca cc truong hop kimdinh c duoc.
Tuy nhin vic kimdinh mt cch thudo tt ca cc truong hop l mt bi ton qu lon
v tn rt nhiu chi phi. Chng ta hay xem xt v du sau
http://www.ebook.edu.vn 50
Hnh 4.1. FlowChart
Bn tri l flowchart cho mt chuong trnh
don gian duoc vit bng khoan 100 dng
m voi mt vng lp chnh thuc thi doan
m bn trong v lp lai khng qu 20 ln.
Tuy nhin khi tnh ton cho thy di voi
chuong trnh ny c dn khoang 10
14
duong c th duoc thuc hin.
Chng ta lm tip mt php tnh nhanh d
thy duoc chi ph dng d kim thu doan
chuong trnh nay mt cch thudo v chi
tit. Ta gia su rng d kim dinh mt
truong hop cn chay trung bnh tn mt
giy. V chuong trnh kim thu se duoc
chay 24 gio mt ngy v chay sut 365
ngy mt nm. Vy th d chay kim thu
cho tt ca cc truong hop ny cung cn
phai tn khoan 3170 nm.
Do d kim thu mt cch thu do l mt
vic bt kha thi cho nhng h thng lon.
Mc d k thut ny khng th hin thucduoc trong thuc t voi luong ti nguyn c han,
tuy nhin voi mt s luong c gioi han cc duong din tin logic quan trong c chon lua
truocd kim thu. Phuong php ny c th l rt kha thi
Ngoi ra cc truong hop kim thu cn c th l su kt hop cua ca hai k thut trn nhm
dat duoc cc muc tiu cua vic kim thu.
V by gio chng ta se di v chi tit thao lun v k thut kim thu hp trng
4.1. Phuong php white-box:
L phuong php kim nghim dua vo cu trc/m lnh chuong trnh. Phuong php
white-box kim nghim mt chuong trnh (mt phn chuong trnh, hay mt h thng, mt
phn cua h thng) dpung tt tt ca cc gi tri input bao gm ca cc gi tri khng dng
hay khng theo du dinh cua chuong trnh.
Phuong php kim nghim white-box dua trn:
- Cc cu lnh (statement)
- Duong dn (path)
- Cc diu kin (condition)
- Vng lp (loop)
- Ng re (branch)
4.1.1 M ta mt s cu trc theo luc d:
Trong cc phuong php kim tra tnh dngdn cua chuong trnh, luocd duoc dng d:
- Truu tuong ha c php cua m lnh.
Begin
End
Loop <=20
http://www.ebook.edu.vn 51
- Lm khun mu co ban cho cc nguyn tc kim tra theo truong hop.
- Kim tra tnh dngdn trn ton b luocd.
-
4.1.2 Kim tra theo cu lnh: (Statement Testing)
Thit k qu trnh kim tra sao cho mi cu lnh cua chuong trnh duoc thuc hin t nht
mt ln. Phuong php kim tra ny xut pht tu tuong:
- Tu phi mt cu lnh duoc thuc hin, nu khng ta khng th bit duoc c li
xay ra trong cu lnhd hay khng.
- Nhung vic kim tra voi mt gi tri du vo khng dam bao l se dng cho moi
truong hop.
V du: Doan chuong trnh thuc hin tnh:
result = 0+1++|value|,
nu result <= maxint, bo li trong truong hop nguoc lai.
1 PROGRAM maxsum ( maxint, value : INT )
2 INT result :=0 ; i :=0 ;
3 IF value <0
4 THEN value :=- value ;
5 WHILE ( i <value ) AND ( result <=maxint )
6 DO i :=i +1 ;
7 result :=result +i ;
8 OD;
9 IF result <=maxint
http://www.ebook.edu.vn 52
10 THEN OUTPUT ( result )
11 ELSE OUTPUT ( too large )
12 END.
http://www.ebook.edu.vn 53
V du voi cc b gi tri input:
maxint =10, value =-1
Hay
maxint =0, value =-1
se kim tra duoc ton b cc cu lnh trong doan chuong trnh trn.
Cc vn d di vi phuong php kim tra theo cu lnh:
D dnh gi phuong php ny ta xem qua v du sau:
http://www.ebook.edu.vn 54
Voi cu hoi du tin Luocd no phuc tap hon, ta c cu tra loi l B. V voi cu hoi tip
theo Luocd no cn cc buoc kim tra nhiu hon? ta cung tra loi l B.
Tuy nhin, ta thy s ln kim tra ti thiud c th kim tra ton b cc cu lnh nhu trn
cho ca 2 hm du l 2. V vy, phuong php ny khng tuongung voi su phuc tap cua m
lnh.
http://www.ebook.edu.vn 55
4.1.3 Kim tra theo dung dn: (Path Testing)
L phuong php kim tra bao trm moi duong dn cua chuong trnh v cn kt hop voi
luocd tin trnh.
Nhn xt:
Phuong php kim tra theo duong dn phu thuc nhiu vo cc biu thuc diu kin. Tuy
nhin, c nhng truong hop s luong duong dn qu lon (truong hop vng lp). V vy
thuong khng phai l lua chon thuc t d tin hnh vic kim tra tnh dng dn cua chuong
trnh.
i f ( A > B)
S1;
S2;
el se
S3;
S4;
A>B
S1; S2; S3;
S4;
true
false
whi l e ( A<B)
{
S1;
S2;
}
S3;
A>B
S1; S2;
S3;
true
false
i f ( A<B && C<D)
S1;
el se
S2;
S3;
A>B
C>D
S2;
true
false
S1;
S3;
true
false
http://www.ebook.edu.vn 56
4.1.4 Kim tra theo diu kin: (Condition Testing)
L phuong php kim tra cc biu thucdiu kin trn 2 gi tri true v false.
Ta xt cc v du sau:
V du 1:
Cc b kim tra { (x>0, y>0), (x <=0, y>0) } se kim tra ton b cc diu kin.
Tuy nhin: Khng thoa mn voi moi gi tri input, cn kt hop ca x v y d thuc hin buoc
kim tra.
V du 2:
i f ( x > 0 && y > 0)
x = 1;
el se
x = 2;
whi l e ( x > 0 | | y > 0)
{
x- - ; y- - ;
z += x*y;
}
C khoang 5
20
= 95.367.431.640.625 auong dan
loop <20
If then - else
http://www.ebook.edu.vn 57
Voi b kim tra { (x>0) } se kim tra bao trm duoc cc diu kin.
Tuy nhin: Khng kim tra duoc gi tri y.
V du 3:
Voi b kim tra {(x=0,z=1), (x=1, z=0)} se kim tra bao trm duoc cc diu kin.
Tuy nhin: Khng kim tra duoc truong hop li chia cho 0 (khi x=0).
Nhn xt: Khi kim tra bng phuong php kim tra theo diu kin cn xem xt kt hop cc
diu kin voi nhau.
4.1.5 Kim tra theo vng lp: (Loop Testing)
L phuong php tp trung vo tnh hop l cua cc cu trc vng lp.
i f ( x ! = 0 )
y = 5;
i f ( z < 1 )
z = z/ x;
el se
z = 0;
Vng lp
don gian
Vng lp
lng nhau
Vng lp
ni tip nhau
Vng lp
khng cu trc
http://www.ebook.edu.vn 58
- Cc buc cn kim tra cho vng lp don:
+ Bo qua vng lp.
+ Lp mt ln.
+ Lp hai ln.
+ Lp m ln (m<n).
+ Lp (n-1), n, (n+1) ln.
Trongd n l s ln lp ti da cua vng lp.
- Cc buc cn kim tra cho vng lp dng lng nhau:
+ Khoi du voi vng lp nm bn trong nht. Thit lp cc tham s lp cho cc
vng lp bn ngoi v gi tri nho nht.
+ Kim tra voi tham s min+1, 1 gi tri tiu biu, max-1 v max cho vng lp bn
trong nht trong khi cc tham s lp cua cc vng lp bn ngoi l nho nht.
+ Tip tuc tuong tu voi cc vng lp lin ngoi tip theo cho dn khi tt ca vng
lp bn ngoi duoc kim tra.
- Cc buc cn kim tra cho vng lp ni tip:
+ Nu cc vng lp l dc lp voi nhau th kim tra nhu truong cc vng lp dang
don, nu khng th kim tra nhu truong hop cc vng lp lng nhau.
V du:
// LOOP TESTING EXAMPLE PROGRAM
import java.io.*;
class LoopTestExampleApp {
// ------------------ FIELDS ----------------------
public static BufferedReader keyboardInput =
new BufferedReader(new InputStreamReader(System.in));
private static final int MINIMUM =1;
private static final int MAXIMUM =10;
// ------------------ METHODS ---------------------
http://www.ebook.edu.vn 59
/* Main method */
public static void main(String[] args) throws IOException {
System.out.println("Input an integer value:");
int input =new Integer(keyboardInput.readLine()).intValue();
int numberOfIterations=0;
for(int index=input;index >=MINIMUM && index <=MAXIMUM;index++) {
numberOfIterations++;
}
// Output and end
System.out.println("Number of iterations =" +numberOfIterations);
}
}
Gi tr|
du vo
Kt qua
(S ln lp)
11 0 (bo qua vng lp)
10 1 (chay 1 ln lp)
9 2 (chay 2 ln lp)
5 6 (truong hop chay m ln lp khi m<n)
2 9 (chay N-1 ln lp)
1 10 (chay N ln lp)
0 0 (bo qua vng lp)
4.2. Phuong php black-box:
Cn goi l kim nghim chuc nng. Vic kim nghim ny duoc thuc hin m khng cn
quan tm dn cc thit k v vit m cua chuong trnh. Kim nghim theo cch ny chi
quan tm dn chuc nng dd ra cua chuong trnh. V vy kim nghim loai ny chi dua
vo ban m ta chuc nng cua chuong trnh, xem chuong trnh c thuc su cung cp dng
chuc nngd m ta trong ban chuc nng hay khng m thi.
Kim nghim hpden dua vo cc dinh nghia v chuc nng cua chuong trnh. Cc truong
hop thu nghim (test case) se duoc tao ra dua nhiu vo ban m ta chuc nng chu khng
phai dua vo cu trc cua chuong trnh. Gm cc phuong php sau:
http://www.ebook.edu.vn 60
- Phn chia tuongduong
- Phn tch gi tri bin
- D thi Cause Effect
- Kim tra hnh vi (Behavioural testing)
- Kim thu ngu nhin
- Uoc luong li .
C 3 huong tip cn chnh trong phuong php blackbox:
Phn tch min vo/ra cua chuong trnh:
- Dn toi vic phn chia hop l min Input/Ouput vo tp hop con interesting.
Phn tch tnh cht dng ch cua hp den:
- Dn toi mt loai flowgraphlike, c th ung dung cc k thut cua hp trng
(trn loai hpden ny).
Heuristics:
- Cc k thut ny ging voi phn tch rui ro, du vo ngu nhin, kim thu stress.
4.2.1. Phn chia tuong duong:
Phn chia (nu c th) tt ca cc lopdu vo, nhu l:
- C mt s han ch v cc lop tuong duongdu vo.
- Chng ta c th chp nhn mt s l do nhu:
- Chuong trnh chay d gom nhng tn hiudu vo tuong tu nhau vo trong
cng mt lop.
- Test mt gi tri dai din cua lop.
- Nu gi tri dai din bi li th cc thnh vin trong lopd cung se bi li nhu
th.
output
input
SUT
requirements
events
domain testing
x
y
http://www.ebook.edu.vn 61
4.2.2. Lp k hoch:
Nhn dang cc lop tuong duongdu vo:
- Dua vo cc diu kin vo/ra trong dc tnh k thut/m ta k thut.
- Ca hai lop tuong duong du vo: valid v invalid.
- Dua vo heuristics v chuyn gia.
- input x in [1..10] classes: x<1, 1_ x _10, x>10
- Loai lit k A, B, C classes: A, B, C, not{A,B,C}
Dinh nghia mt/cp cua cc truong hop thu cho mi lop.
- Kim thu cc truong hop thuc lop tuong duong valid
- Kim thu cc truong hop thuc lop tuong duong invalid
V du:
Kim mt hm tnh gi tri tuyt di cua mt s integer. Cc lop tuongduong:
Condition Cc lp tuong duong Valid Cc lp tuong duong
Invalid
S nhp vo 1 0, >1
Loai d liu vo integer Non-interger
Abs <0, >=0
Kim cc truong hop:
x=-10, x=100
x=XYZ, x=- x=10 20
V du 2:
Mt chuong trnh doc 3 gi tri integer. Ba gi tri ny duoc th hin nhu chiu di cua 3
canh mt hnh tam gic. Chuong trnh in mt cu thng bo l tam gic thuong
(uligesidet), tam gic cn (ligebenet), hoc tam gic du (ligesidet). [Myers]
+Vit mt tp cc truong hopd thu chuong trnh ny.
Cc truong hop test l:
- Gi tri 3 canh c lch nhau khng?
- Gi tri 3 canh c bng nhau khng?
- Gi tri 3 canh tam gic cn?
http://www.ebook.edu.vn 62
- Ba hon vi truocd?
- Canh bng 0?
- Canh c gi tri m?
- Mt canh bng tng cua 2 canh kia?
- Ba hon vi truocd?
- Gi tri mt canh lon hon tng 2 canh kia?
- Ba hon vi truocd?
- Tt ca cc canh bng 0?
- Nhp vo gi tri khng phai s nguyn (non-integer)?
- S cua cc gi tri sai?
- Cho mi truong hop thu: l gi tri du ra mong doi?
- Kim tra cch chay chuong trnh sau khi du ra hon chinh?
V du: Phn lop tuongduong
Kim tra mt chuong trnh tnh tng gi tri du tin cua cc s nguyn min l tng ny
nho honmaxint. Mt khc, khi c li chuong trnh cn ghi lai, nu gi tri m, th phai ly
gi tri tuyt di.
Dang:
Nhp s nguyn maxint v value, gi tri result duoc tnh l:
Result=
_
=
/ /
0
Value
K
k nu:<=maxint, ngoi ra th sinh li.
Cc lop tuong duong:
Condition Lop tuong auong Valid Lop tuong auong Invalid
S nhp vo 2 <2, >2
Loai d liu vo Int int Int no-int, no-int int
Abs(value) Value<0, value>0
Maxint _ks maxint, _k>maxint
4.2.3. Phn tch gi tr| bin:
Dua vo chuyn gia/Heuristics:
http://www.ebook.edu.vn 63
- Test diu kin bin cua cc lop th c tc dung nhiu hon l dua vo cc gi tri truc
tip nhu trn.
- Chon cc gi tri bin du vo d kim tra cc lopdu vo thay v thm vo nhng
gi tri ty .
- Cung chon nhng gi tri du vo nhu th d cho ra nhng gi tri bin du ra.
- V du v chin luoc mo rng vic phn lop:
- Chon mt gi tri ty cho mi lop.
- Chon cc gi tri chnh xc o bin trn v bin duoi cua mi lop.
- Chon cc gi tri ngay lp tuco duoi v trn mi bin (nu c th).
V du: Kim tra mt hm tnh gi tri tuyt di cua 1 s nguyn.
Cc lop tuong duong valid nhu sau:
Condition Lop tuong auong Valid Lop tuong auong Invalid
Abs <0, >=0
Cc truong hop thu:
Lop x<0, Gi tri ty : x=-10
Lop x>=0, Gi tri ty : x=100
Cc lop x<0, x>=0, Gi tri bin x=0
Cc lop x<0, x>=0, Gi tri duoi v trn x=-1, x=1
V du: Phn tch gi tri bin
Nhp vo s integer maxint v value tnh ton gi tri result nhu sau:
Result=
_
=
/ /
0
Value
K
k nu:<=maxint, ngoi ra th sinh li.
Cc lop tuong duongvalid:
Condition Lop tuongduong Valid
Abs(value) Value<0, value>0
Maxint _ks maxint, _k>maxint
Chng ta cn gi tri giamaxint<0 vmaxint>=0?
http://www.ebook.edu.vn 64
Maxint maxint<0, 0s maxint <_k, maxint> _k
Cc lop tuong duongvalid:
Abs(value) Value<0, value>0
Maxint Maxint < 0, 0s maxint < _k, maxint > _k
Cc truong hop thu:
Maxint value result maxint value result
55 10 55 100 0 0
54 10 error 100 -1 1
56 10 55 100 1 1
0 0 0
4.2.4. D th| Cause Effect :
K thut kim thu Black-Box phn tch vic kt hop cc diu kin vo.
Dc tnh Cause v Effect
! !
inputs outputs
Trang thi hin tai trang thi moi
- Tao mt d thi kt ni Causes v Effects
- Ch thch nu khng th kt hop Causes v Effects.
- Pht trin bang quyt dinh tu d thi ung voi mi ct, mt su kt hopdc bit cua
du vo v du ra.
- Mi truong hop test phai thay di ct.
Cc truong hop thu:
Maxint Value result
Valid 100 10 55
100 -10 55
10 10 error
Invalid 10 - Error
10 30 Error
http://www.ebook.edu.vn 65
XYZ 10 Error
100 9.1E4 error
_ k _ maxint 1 1 0 0
_ k > maxint 0 0 1 1
value < 0 1 0 1 0
Causes
inputs
value _ 0 0 1 0 1

_ k 1 1 0 0 Effects
outputs
error 0 0 1 1
_ k s maxint
_ k >maxint
value <0
value > 0
xor
and
and
_ k
error
http://www.ebook.edu.vn 66
CHUONG 5: KIEM THU TCH HOP
Nguoi moi tap su trong th gioi phan mm c th hoi mt cu hoi c ve hop l khi
moi m aun a auoc kim thu aon vi xong Nu tat ca chng a lm vic ring bit tt th
sao cc anh lai hoi nghi rng chng khng lm vic khi ta gn chng lai voi nhau? Van
a, di nhin, l o ch gn chng lai voi nhau lm giao din. D liu c th bi mat qua
giao din; m aun ny c th c su bat can, anh huong bat loi sang m aun khc; cc chuc
nng con , khi t hop, khng th tao ra chuc nng chnh mong mun; nhng su khng
chnh xc chap nhan auoc o tng m aun c th bi khuch aai ln an muc khng chap
nhan ni; cc cau trc d liu ton cuc b c th lm sinh ra van a. iu ang bun l
danh sch ny cn ko di mi.
Kim thu tch hop l mt ki thuat h thng a xy dung cau trc chuong trnh trong
khi ang thoi tin hnh cc kim thu a pht hin li lin kt voi vic giao tip. Muc ach
lay cc m aun a kim thu aon vi xong v xy dung nn mt cau trc chuong trnh auoc
quy ainh boi thit k.
Thuong c mt khuynh huong c gng tch hop khng tng dan; tuc l xy dung
chuong trnh bng cch dng cch tip can vu n lon Big bang. Tat ca cc m aun au
auoc t hop truoc. Ton b chuong trnh auoc kim thu nhu mt tng th. V thuong s l
mt kt qua hn loan! Gp phai mt tap hop cc li. Vic sua ai thnh kh khn v vic
c lap nguyn nhn bi phuc tap boi vic trai rng trn ton chuong trnh. Khi nhng li
ny a auoc sua cha th nhng li moi lai xuat hin v tin trnh ny cu tip din trong
chu trnh v han.
Tch hop tng dan l nguoc lai voi cch tip cn vu n lon. Chuong trnh duoc xy
dung v kim thu trong tungdoan nho, noi li d duoc c lp v sua cha hon; giao din
c th duoc kim thu dy du hon v cch tip cn h thng c th duoc p dung. Trong
nhng muc sau dy, mt s chin luoc tch hop tng dn se duoc thao lun toi.
5.1. Tch hp trn xung.
Tch hop trn xung l cch tip cn tng dn toi vic xy dung cu trc chuong
trnh. Cc m dunduoc tch hop bng cch di dn xung qua cp bc diu khin, bt du
voi m dun diu khin chnh (chuong trnh chnh). Cc m dun phu thuc (v phu thuc
cui cng) vo m dundiu khin chnh se duoc t hop dn vo trong cu trc theo chiu
su truoc hoc chiu rng truoc.
http://www.ebook.edu.vn 67

Hnh 5.1. Tch hop trn xung
Tham khao toi hnh 5.1., vic tch hop chiu su truoc se tch hop tt cc cc m
dun trn duongdiu khin chnh cua cu trc. Vic chon mt duong chnh c tuy tin v
phu thuc vo cc dc trung cuaung dung. Chng han, chon duong bn tay tri, cc m
dun M1, M2, M5, se duoc tch hop truoc. Tipd M8 hay (nu cn cho chuc nng ring
cua M2) M6 se duoc tch hop vo. Ri, xy dung tip cc duongdiu khino gia v bn
phai. Vic tch hop theo chiu rng t hop tt ca cc m dun truc tip phu thuc vo tung
muc; di xuyn qua cu trc ngang. Tu hnh ve, cc m dun M2, M3, M4 (thay th cho
cung S4) se duoc tch hop vo truoc nht. Cc mucdiu khin tip M5, M6, .. theo sau.
Tin trnh tch hopduoc thuc thin trong mt loat nm buoc:
1. M dundiu khin chnh duoc dng nhu mt khin trnh kim thu v
cc cung duoc th vo cho tt ca cc m dun phu thuc truc tip vo m dundiu khin
chnh.
2. Tuy theo cc tip cn tch hop duoc chon lua (nhung theo chiu su
hay theo chiu ngang truoc) cc cung phu thucduoc thay th tung ci mt mi ln bng
cc m dun thuc tai.
3. Vic kim thu duoc tin hnh khi tung m dun duoc tch hop vo.
4. Khi hon thnh tung tp cc php kim thu, cung khc de duoc thay
th bng cc m dun thuc.
5. Kim thu hi quy (tuc l tin hnh tt ca hay mt s cc php kim thu
truoc) c th duoc tin hnh d dam bao tung nhng li moi khng bi dua thm vo.
Tin trnh ny tip tuc tu buoc 2 toi khi ton b cu trc chuong trnh dduoc xy dung
xong. Hnh 5.1 minh hoa cho tin trnh ny. Gia su ta dng cch tip cnd su truoc v
mt cu trc hon chinh b phn, cung S7 l chun bi duoc thay th boi m dun M7. M7
ban thn n c th c cc cung se bi thay th bng cc m dun tuong ung. Diu quan
trong phai ch l phai tin hnh cc php kim thu cho mi ln thay th d kim chung
giao din.
M
1
M
2
M
3
M
5
M
4
M
6
M
8
M
7
http://www.ebook.edu.vn 68
Chin luoc tch hop trn xung kim chung vicdiu khin chnh hay cc dim quyt dinh
ngay tu du trong tin tnh kim thu. Trong mt cu trc chuong trnh b tr kho, vic
quyt dinh thuong xut hin tai cc muc trn trong cp bc v do dduoc gp phai truoc.
Nu cc vnd diu khin chnh qua l tn tai th vic nhn ra chng l diu chu cht. Nu
vic tch hop theo d su duoc lua chon th chuc nngdy du cua phn mm c th duoc
ci dt v chung minh. Chng han, ta hy xt mt cu trc giao tc c din trong d cn
toi mt loai cc ci vo truong tc phuc tap ri thu nhn v kim chung chng qua duong
di toi. Duong di toi c th duoc tch hop theo cch trn xung. Tt ca xu l ci vo (di
voi vic pht tn giao tc v sau) c th duoc biu din truoc khi cc phn tu khc cua cu
trc duoc tch hop vo. Vic biu din ban du v kha nng chuc nng l ci xy dung
nim tin cho ca nguoi pht trin khch hng.
Chin luoc pht trin trn xung c ve nhu khng phuc tap nhung trong thuc t, cc vn d
logic c th ny sinh. Diu thng thuong nht cua nhng vnd ny xut hin khi vic xu
l tai muc thp trong cp bc di hoi vic kim thu tch hop o muc trn. Cung thay th
cho cc m dun cp thp vo lc bt du cua kim thu trn xung; do d khng c d liu
no c nghia c th chay nguoc ln trong cu trc chuong tnh. Nguoi kim thu dung truoc
hai chon lua: (1) d tr nhiu vic kim thu toi khi cungduoc thay th bng m dun thuc
th, (2) xy dung cc cung thuc hin nhng chuc nng gioi han m phong cho m dun
thuc tai, v (3) tch hop phn mm tu dy cp bc ln. Hnh 5.2 minh hoa cho cc lop
cungdin hnh, b tr tu don gian nht (cung A) toi phuc tap nht (cung D).
Hinh 5.2 Cung
Cch tip cn thu nht (d tr kim thu cho dn khi cung duoc thay th boi m
dun thuc tai) gy cho chng ta bi mt diu khindi voi tuong ung gia kim thu dc bit
v vic t hop cc m dundc bit. Diu ny c th dn toi nhng kh khn trong vic xc
dinh nguyn nhn li v c khuynh huong vi pham ban cht bi rng buc cao d cua cch
tip cn trn xung. Cc tip cn thu hai th duoc, nhung c th dn toi tng ph kh lon, v
cung tro thnh ngy cng phuc tap hon. Cch tip cn thu ba, duoc goi l kim thu duoi
ln, duoc thao lun trong muc sau:
5.2. Tch hp dui ln.
Kim thu tch hop duoi ln, nhu tn n d hm , bt du xy dung v kim thu voi
cc m dun nguyn tu (tuc l cc m dun o muc thp nht trong cu trc chuong trnh). V
Cung
A
Cung
B
Cung
C
Cung
D
Hin thi thng
bo du vt
Hin thi tham
binduoc
truyn
Cho lai gi tri
tu bang
Tm kim bang
cho tham bin
vo v cho lai
tham bin ra
Chiu cua lung d liu
http://www.ebook.edu.vn 69
cc m dun ny duoc tch hop tu duoi ln trn nn vic xu l yu cudi voi cc m dun
phu thuc cua mt muc no d bao gio cung c sn v nhu cu v cung bi dep bo.
Chin luoc tch hop duoi ln c th duoc thuc hin qua nhng buoc sau:
1. Cc m dun muc thpduoc t hop vo cc chum (di khi cung cn
duoc goi l kiu kin trc) thuc hin cho mt chuc nng con phn mmdc bit.
2. Khin trnh (mt chuong trnh diu khin cho kim thu) duoc vit
rad phi hop vic vo v truong hop kim thu.
3. Kim thu chm
4. Loai bo khin trnh v chm duoc t hop chuyn ln trong cu trc
chuong trnh.
Vic tch hopdi theo mu hnh duoc minh hoa trong hnh 5.3. Cc m dunduoc t
hopd tao nn cc chm 1, 2, 3. Tung chm duduoc kim thu bng cch dng mt khin
trnh (duoc ve trong khi sm mu). Cc m dun trong cc chm 1 v 2 phu thuc vo M
a
.
Cc khin trnh D1 v D2 duoc loai bo v chm duoc giao tip truc tip voi M
a
. Tuong tu,
khin trnh D3 cho chm 3 loai bo truoc khi tch hop voi m dun M
b
. Ca M
a
va M
b
cui
cng se duoc tch hop voi m dun M, v cu nhu th. Cc loai khin trnh khc nhau duoc
minh hoa trong hnh 5.4
Khi vic tch hopdi ln, nhu cu v cc khin trnh kim thu tch bit t dn. Trong
thuc t, nu hai mucdinh cua cu trc chuong trnh duoc tch hop theo kiu trn xung th
s cc khin trnh c th duoc giam bot kh nhiu v vic tch hop cc chm duoc don
gian hon rt nhiu.
5.3. Kim thu ni quy.
Mi mt ln mt module moi duoc thm vo nhu l mt phn cua kim thu tch
hop, phn mm thay di. Cc duong dn d liu moi duoc thit lp, vo ra moi cung xay
ra, v logic diu khin moi duoc goi ra. Nhng thay di ny c th sinh ra vnd di voi
cc hm d lm vic hon hao truoc d. Trong mt ng canh cua mt chin luoc kim thu
phn mm, kim thu hi quy l vic thuc hin lai mt vi tp hop con cc kim thu m d
duoc quan l d dam bao nhng thay di d khng sinh ra cc hiuung phu khng kim
sot duoc.
http://www.ebook.edu.vn 70
( Hnh 5.3)
Trong mt ng canh rng nhu vy, kim thu thnh cng (bt cu loai no) kt qua l
cc tm ra cc li c cc li phai duoc lm dng. Mt khi phn mmdduoc lm dng,
mt vi b phn cua cu hnh phn mm (chuong trnh, cc ti liu cua n, d liu m h
tro n) bi thay di. Kim thu hi quy l hoat dng m gip dam bao rng nhng thay
di(trong ton b qu trnh kim thu hoc l cc l do khc) khng dn toi cc cch thuc
khng luong truoc hoc cc li pht sinh thm.
N
H

M
I
N
H

M
3
N H M 2
http://www.ebook.edu.vn 71
Hnh 5.4 Khin trnh
Kim thu hi quy c th thuc hin bng thao tc bng tay bng cch thuc hin lai
mt tp hop con cua tt ca cc truong hop kim tra hoc su dung cc cng cu bt li tu
dng. Cc cng cu bt li tro lai (capture - playback tools) cho php nguoi k su phn
mm c th bt duoc cc trung hop kim tra v kt qua cho mt chui li v so snh tro
lai. B kim thu hi quy bao gm ba lop cc truong hop kim thu khc nhau:
- Mt l biu din v du cua cc truong hop kim thu m n se thuc hin voi
tt ca cc chuc nng cua phn mm.
- Thm vo cc kim thu ung voi cc chuc nng cua phm mm ging nhu
l gia dinh khi thay di.
- Cc truong hop kim thu ung voi cc thnh phn cua phn mmd bi
thay di.
Ging nhu tin trnh kim thu tch hop, s cc kim thu hi quy c th tng ln kh
lon. V th b kim thu hi quy nn duoc thit k d bao gm chi cc truong hop kim thu
m nhm vo mt hay nhiu cc lop cua li trong mi chuc nng chuong trnh chnh. R
rang l khng thuc t v khng hiu qua de thuc hin lai tt ca cc kim thu cho moi chuc
nng chuong trnh mi ln khi c su thay di xay ra.
5.4. Gi v vic kim thu tch hp
D c nhiu thao lun v uu v nhuoc dim tuongdi cua vic kim thu tch hop
trn xung v duoi ln. Ni chung, uu dim cua chin luoc ny c khuynh huong thnh
nhuoc dim cua chin luoc kia. Nhuoc dim chnh cua cch tip cn trn xung l cn toi
cc cung v c th c nhng kh khn kim thu km theo lin kt voi chng. Vnd lin
Khin trnh
A
Khin trnh
B
Khin trnh
C
Khin trnh
D
Chiu cua lung thng tin
Goi phu thuc Gui tham bin
tu bang
(hay tp ngoi)
Hin thi
Tham bin
T hop cc
khin trnh
B&C
http://www.ebook.edu.vn 72
quan toi cc cung c th b dp lai bnguudim cua vic kim thu cc chuc nng diu
khin chnh som sua. Nhuoc dim chnh cua vic tch hop duoi ln l o ch chuong trnh
nhu mt thuc th th chua tn tai chung no m dun cui cng chua duoc thm vo.
Nhuocdim ny duoc lm diudi bng thit k truong hop kim thu som hon v vic thiu
cung.
Su lua chon mt chin luoc tch hop phu thuc vo cc dc trung phn mm v di
khi ca lich biu du n. Ni chng, mt cch tip cn t hop (di khi cn duoc goi l kim
thu bnh kep thit) dng chin luoc trn xung cho cc muc trn cua cu trc chuong trnh,
di di voi chin luoc duoi ln co cc muc phu thuc, c th l su thoa hip tt nht.
Khi vic kim thu tch hopduoc tin hnh, nguoi kim thu phai xc dinh m dun
gng. Mt m dun gng c duy nht mt hay nhiudc trung sau: (1) d cp toi nhiu yu
cu phn mm, (2) c muc diu khin cao (nmo vi tr tuong di cao trong cu trc
chuong trnh), (3) l phuc tap hay d sinh li (d phuc tap xoay vng c th duoc dng lm
mt chi bao) hay (4) c yu cud hon thin xc dinh. Cc m dun gng nn duoc kim
thu som nht c th duoc. Bn canhd, kim thu hi quy nn tp trung vo chuc nng m
dun gng.
5.5. Lp ti liu v kim thu tch hp
K hoach tng th cho vic tch hop phn mm v mt m ta v cc kim thu dc
bit duoc ghi trong ban c ta kim thu. Ban dc ta kim thu ny c th bn giao duoc
trong tin trnh ki ngh phn mm v tro thnh mt phn cua cu hnh phn mm. Hnh
17.11 trnh by dn bi cho bandc ta kim thu c th duoc dng nhu mt khun kh cho
ti liu ny
Hnh 5.5 Dn bi dc ta kim thu
I. Pham vi kim thu
II. K hoach kim thu
A. Cc giai doan v khi kim thu.
B. Lich biu
C. Tng ph phn mm
D. Mi truong v ti nguyn
III. Thu tuc kim thu n (m ta vic kim thu cho khi n)
A. Thu tu tch hop
1. Mucdch
2. Mdun cn kim thu
B. Kim thu don vi co cc m dun trong khi
1. M ta kim thu cho m dun
2. M ta tng ph phn mm
3. Kt qua du kin
C. Mi truong kim thu
1. Cng cu hay k thut dc bit
2. M ta tng ph phn mm
http://www.ebook.edu.vn 73
D. D liu truong hop kim thu
E. Kt qua du kin thuc t
IV. Kt qua kim thu thuc t
V. Tham khao
VI. Phu luc
Pham vi kim thu tm tt cc dc trung chuc nng, su hon thin v thit k bn trong
ring, cn phai duoc kim thu. N luc kim thu v cn gn km, tiu chun d hon tt
tung giai doan kim thu cnduoc m ta, v cc rng buc lich biu cnduoc lm tu liu.
Phn k hoach kim thu m ta chin luoc chung cho vic tch hop. Vic kim thu duoc
chia thnh cc giai doan v khi, d cp toi cc dc trung hnh vi v chuc nng ring cua
phn mm. Chng han, kim thu tch hop cho mt h thng CAD huong d thi c th duoc
chia thnh cc giai doan kim thu sau:
- Giao din nguoi dng (chon chi lnh; tao ra vic ve; biu din hin thi;
xu l li v biu din li)
- Thao tc v phn tch d liu (tao ra k hiu; tm huong; quay; tnh cc
tnh cht vt l)
- Xu l v sinh hin thi (hin thi hai chiu, )
- Quan tri co so d liu (thm nhp; cp nht; ton ven; hiu nng)
Mi mt trong cc giai doan v giai doan con (duoc ghi trong du ngoc trn) du
nu ra pham tr chuc nng rng bn trong phn mm v ni chung c th c lin quan toi
mt linh vuc ring cua cu trc chuong trnh. Do d, cc khi chuong trnh (nhm cc m
dun) duoc tao ra d tuong ung voi tung giai doan.
Cc tiu chun sau dy v php kim thu tuongungduoc p dung cho tt ca cc giai
doan kim thu:
Tnh thng nht giao din. Cc giao din bn trong v bn ngoi duoc kim thu khi
tung m dun (hay chm) duoc t hop vo trong cu trc.
Hop l chuc nng. Tin hnh cc kim thu dduoc thit k d pht hin ra li chuc
nng.
Ni dung thng tin. Tin hnh cc kim thu dduoc thit k d pht hin ra li lin
kt voi cc cu trc d liu cuc b hay ton cucduoc su dung.
Su hon thin. Tin hnh kim thu d duoc thit k d kim chung cc cn hon
thindduoc thit lp trong thit k phn mm.
Nhng tiu chun ny v cc kim thu lin kt voi chng duoc thao lun trong muc
banDc ta kim thu.
Lich biu d tch hop, tng ph phn mm, v cc chu th c lin quan cung duoc
thao lun nhu mt phn cua muc k hoach kim thu. Ngy thng bt du v kt thc cho
tung giai doanduoc thit lp v cua s c sn cho cc m dund xong kim thu don vi
cung phai duoc xc dinh. Mt m ta tm tt v tng ph phn mm (cung v khin trnh)
tp trung vo cc dc trung c th yu cu n lucdc bit. Cui cng, cung phai m ta mi
truong v ti nguyn kim thu. Cc cu hnh phn cung bt thuong, cc b m phong
ngoai lai, cc cng cu k thut kim thu dc bit l mt s trong nhiu chu d c th duoc
thao lun trong muc ny.
http://www.ebook.edu.vn 74
Mt thu tuc kim thu chi tit cn toi d hon thnh ban k hoach kim thu se duoc
m ta trong muc thu tuc kim thu. Tham khao lai dn bi banDc ta kim thu muc II, trt
tu cua vic tch hop v cc php kim tu tuong ung tai mi buoc tch hop phai duoc m ta.
Mt danh sch tt ca cc truong hop kim thu (c th d tham khao v sau) v kt qua du
kin cung nn duocdua vo.
Lich su cc kt qua kim thu thuc tai, cc vnd, hay cc dc th duoc ghi lai trong
bn muc cua banDc ta kim thu. Thng tin c trong muc ny c th rt quan trong cho
vic bao tr phn mm. Cc tham khao thch hop cc phu luc cungduoc trnh by trong hai
muc cui.
Ging nhu tt ca cc phn tu khc cua cu hnh phn mmdinh dang cn banDc ta
kim thu c th duoc t chuc theo nhu cu cuc b cua t chuc pht trin phn mm. Tuy
nhin diu quan trong cn luu l mt chin luc tch hop c trong ban K hoach kim thu,
v cc chi tit kim thu duoc m ta trong banDc ta kim thu l thnh phn ban cht v
phai c.
http://www.ebook.edu.vn 75
CHUONG 6: KY NGHJ DO TIN CAY PHAN MEM
Muc tiu cua chuong ny l thao luan k thuat tham ainh v xc nhan tnh hop l auoc
dng trong vic pht trin h thng quan trong. Khi ban aoc chuong ny, ban s:
- Hiu auoc phuong php ao a tin cay cua h thng v cc m hnh pht trin a tin cay
c th auoc su dung a du bo khi mt muc a yu cau a tin cay aat auoc.
- Hiu auoc cc nguyn l cua cc luan chung tnh an ton v cch cc nguyn l ny c
th auoc su dung cng voi phuong php V & V trong vic aam bao tnh an ton cua h
thng.
- Hiu auoc cc van a trong vic aam bao tnh bao mat cua h thng.
- Lm quen voi cc truong hop an ton m aua ra cc luan chung v dau hiu cua an ton
h thng.
6.1. Gii thiu
R rng, vic thm d|nh v xc nhn tnh hp l cua h thng quan trng d rt
ph bin trong vic xc nhn tnh hp l cua bt ky h thng no. Qu trnh V & V
m ta cc dc ta cua h thng, v d|ch v h thng v cch cu xu vi cc yu cu cua
ngui dng. Tuy nhin, vi h thng quan trng, tnh tin cy duc di hoi cao, hon
na kim thu v phn tch duc yu cu d dua ra bang chng chng to h thng
dng tin cy. C hai l do ti sao bn nn lm vic d:
1. Chi ph tht bi: Chi ph v hu qua cua vic tht bi trong h thng quan trng c
kha nang cao hon trong h thng khng quan trng. Bn giam nguy co tht bi cua
h thng bang cch su dng vic thm d|nh v xc nhn tnh hp l cua h thng.
Vic tm v loi bo li truc khi h thng duc phn phi lun lun re hon chi ph do
cc s c cua h thng.
2. Xc nhn tnh hp l cua cc thuc tnh tin cy: Bn c th phai to ra mt trung
hp bnh thung d cho cc khch hng thy h thng c cha cc yu cu v tnh tin
cy (tnh san sng, tnh tin cy, tnh an ton v tnh bao mt). D dnh gi dc tnh
tin cy di hoi s hot dng c th V & V(duc thao lun o phn sau trong chuong
ny). Trong mt vi trung hp, ngui kim sot bn ngoi nhu ngui c thm quyn
trong ngnh hng khng quc gia c th phai chng nhn rang h thng l an ton
truc khi n c th ct cnh. D dt duc chng nhn ny, bn phai thit k v thc
thi thu tc dc bit V & V nham tp hp chng c v tnh an ton cua h thng.
V rt nhiu l do, gi tr| cua V & V vi h thng quan trng lun lun cao hon so
vi cc loi h thng khc. Thng thung V & V chim hon 50% tng gi tr| pht
Tnh ton
tnh tin cy
p dung
vo h thng
Chun bi tp
d liu kim thu
Xc dinh
hoat dng
so luoc
cc kim thu
Hnh 6.1 Qu trnh do tnh tin cy
http://www.ebook.edu.vn 76
trin cua h thng phn mm quan trng. Tt nhin, dy l gi d duc diu chinh,
khi tht bi cua h thng d duc ngan nga. V d, nam 1996, mt h thng phn
mm quan trng trn tn lua Ariane 5 b| hong v mt vi v tinh d b| ph huy, gy
thit hi hng tram triu dla. Sau d, nhng ngui c trch nhim d khm ph ra
rang s thiu ht trong h thng V & V c phn no trch nhim trong vic ny.
Mc d, qu trnh xc nhn tnh hp l cua h thng quan trng phn ln tp trung
vo vic xc nhn tnh hp l cua h thng, cc hot dng lin quan nn kim tra d
xc nhn qu trnh pht trin h thng d duc thc hin. Khi thao lun trong
chuong 27 v 28, cht lung h thng b| anh huong boi cht lung cua qu trnh
duc su dng d pht trin h thng. Tm li, qu trnh tt dn dn h thng tt. V
vy, d cung cp h thng tin cy, bn cn phai tin tuong rang qu trnh pht trin
hp l d duc tin hnh.
Dam bao qu trnh l mt phn cua tiu chun ISO 9000 v quan l cht lung,
duc trnh by tm tt trong chuong sau. Ti liu yu cu chun cua cc qu trnh
duc su dng v lin kt cc hot dng d dam bao cc qu trnh d duc thc hin.
Thng thung yu cu c cc h so qu trnh d chng nhn vic hon thnh cc
hot dng xu l v kim tra cht lung san phm. Tiu chun ISO 9000 chi r du ra
cua qu trnh cn dua ra v ngui ch|u trch nhim dua ra n. .
6.2. Xc nhn tnh tin cy
S lung d do d duc pht trin d chi ra yu cu tin cy cua mt h thng. D xc
nhn h thng c cc yu cu no, bn phai do d tin cy cua h thng nhu boi mt
ngui dng h thng thng thung.
Qu trnh do d tin cy cua h thng duc minh ha trong hnh 6.1. Qu trnh ny
gm 4 buc:
1. Du tin, ban nghin cuu cc h thng tn tai cua cc kiu nhu nhau d dua ra m
ta so luoc hoat dng. M ta so luoc hoat dng nhn bit loai cuadu vo h thng
v xc sut xut hin cc du vo ny trong truong hop bnh thuong.
2. Saud, ban thit dt tp cc d liu kim thu d phan nh m ta so luoc hoat dng.
C nghia l ban tao ra d liu kim thu voi phn b xc sut nhu nhau (nhu d liu
cho h thng m band nghin cuu). Thng thuong, ban su dung my sinh d liu
kim thu d kim tra qu trnh ny.
3. Ban kim thu h thng su dung cc d liudduoc sinh o trn v dm s luong v
cc loai li xay ra. S ln li cungduoc ghi nhn. Nhu thao lun trong chuong 9,
ccdon vi thoi gian ban nn chon ph hop voi d do tnh tin cy ban dng.
4. Cui cng, ban tin hnh thng k cc li quan trong, ban c th tnh ton d tin
cy cua phn mm v dua ra gi tri d dod tin cy.
Cch tip cn ny duc gi l kim thu thng k. Mc dch cua kim thu thng k
l dnh gi d tin cy cua h thng. Vic dnh gi cng vi kim thu sai st, duc
http://www.ebook.edu.vn 77
thao lun trong chuong 2, c cng mc dch l tm ra li cua h thng. Prowell et
al.(1999) dua ra mt m ta tt cua kim thu thng k trong sch cua ng (K ngh
phn mm phng sch).
Cch tip cn da trn d do tnh tin cy khng d dng p dng trong thc t.
Nhng kh khan chu yu xut hin do:
1. Khng chc chn m ta so luoc hoat dng: M ta so luoc hoat dng dua trn kinh
nghim, voi cc h thng khc c th khng phan nh chnh xc thuc t su dung
cua h thng.
2. Gi tri cao cua su sinh ra d liu kim tra: c th rt dt d sinh mt luong lon d
liu yu cu trong m ta so luoc hoat dng tru khi qu trnh c th hon ton tu
dng.
3. Thng k khng chc chn khi yu cu tnh tin cy cao duoc chi ra: Ban phai sinh
mt s luong thng k quan trong cc sai st d cho php dod tin cy chnh xc.
Khi phn mmdduoc xc thuc tnh tin cy, mt vi sai st lin quan xut hin v
n kh khnd sinh sai st moi.
Pht trin m ta so luoc thao tc chnh xc chc chn c th voi vi kiu h thng, nhu
h thng truyn thng c mt mu tiu chun ha duoc su dung. Tuy nhin, voi cc loai h
thng khc c rt nhiu nguoi su dung khc nhau, mi nguoi c mt cch ring khi su
dung h thng. Nhu ti d thao lun trong chuong 3, nhng nguoi dng khc nhau c cc
n tuong khc nhau v d tin cy v ho su dung h thng theo nhng cch khc nhau.
T d, cch tt nht d sinh lung ln d liu d dp ng yu cu do d tin cy l su
dng mt h sinh d liu kim thu m c th thit dt t dng sinh du vo ph hp
vi m ta so luc hot dng. Tuy nhin, n thung khng th t dng sinh ra tt ca
d liu thu nghim cho cc h thng tuong tc boi v cc du vo thung l cu tra
li ti du ra h thng. Tp d liu cho cc h thng d phai duc sinh ra bang tay,
do d chi phi cao hon. Ngay ca khi diu d c th hon ton t dng, vit lnh cho h
sinh d liu thu nghim c th tit kim nhiu thi gian.
Thng k khng chc chn l mt vn d chung trong vic do d tin cy cua h
thng. D to nn mt d don chnh xc d tin cy, bn cn phai lm nhiu hon l
chi pht hin ra mt li h thng don le. Bn phai sinh ra mt lung ln d liu ph
hp, thng k s cc li d chc chn rang d tin cy cua bn l chnh xc. Diu ny
tt nht khi bn tm ra rt t li trong h thng, kh khan l n tro thnh do s hiu
qua cua k thut t li. Nu tnh tin cy duc xc d|nh o mc rt cao, n thung
khng thc t d sinh du li h thng d kim tra cc dc ta d.
http://www.ebook.edu.vn 78
6.2.1. So thao hot dng
So thao hot dng cua phn mm phan nh cch phn mm s duc su dng trong
thc t. So thao hot dng gm dc ta cc loi du vo v kha nang xut hin cua
chng. Khi mt h thng phn mm mi thay th mt h thng bang tay hoc mt h
thng t dng ha, diu d l d thuyt phc d dnh gi cc mu cch dng c th c
cua phn mm mi. N nn ph hp vi cch su dng hin c, vi mt vi s tha
nhn duc to boi chc nang mi c th c trong phn mm mi. V d, mt so thao
hot dng c th duc xc d|nh cho cc h thng chuyn mch vin thng boi v cc
cng ty vin thng bit tt ca cc mu cuc gi m cc h thng d phai diu khin.
Thng thung, so thao hot dng nhu l cc du vo c kha nang cao nht duc
sinh ra v duc phn vo mt lung nho cc lp, nhu chi ra o bn tri hnh 6.2. C
mt lung ln cc lp c cc du vo c kha nang khng xay ra cao nhung khng
phai l khng th xay ra. N duc chi ra o bn phai hnh 6.2. Du () c nghia l cn
c rt nhiu du vo khc.
Musa (Musa, 1993; Musa, 1998) d xut cc nguyn tc d pht trin cc so thao
hot dng. ng l mt k su h thng vin thng, v ng d c thi gian di lm vic
tp hp d liu ngui dng trong linh vc ny. Do d, ng d rt ra kt lun: Qu
trnh pht trin so thao hot dng tuong di d lm. Vi mt h thng yu cu cng
sc pht trin cua khoang 15 ngui lm vic trong mt nam, so thao hot dng d
duc pht trin trong khoang 1 ngui/thng. Trong cc trung hp khc, h sinh so
thao hot dng cn nhiu thi gian hon (2-3 ngui/nam), nhung chi ph d trai rng
ra h thng pht hnh. Musa tnh rang cng ty cua ng (mt cng ty vin thng) c t
nht 10 nhm d du tu vo vic pht trin so thao hot dng.
Tuy nhin, khi mt h thng phn mm mi v tin tin duc pht hnh, ta rt kh
don truc duc n s duc su dng nhu th no d dua ra so thao hot dng chnh
xc. Rt nhiu ngui dng vi trnh d, kinh nghim v s mong mun khc nhau c
th su dng h thng mi. N khng c co so d liu l|ch su cch dng. Ngui dng
...
S du vo
Cc loai du vo
Hnh 6.2 Mt so thao hoat dng
http://www.ebook.edu.vn 79
c th su dng h thng theo nhiu cch m ngui pht trin h thng d khng d
don truc.
Vn d tro nn phc tp hon boi v cc so thao hot dng c th thay di lc h
thng d duc su dng. Khi ngui dng nghin cu mt h thng mi v tro nn tin
tuong hon v n, h thung su dng n theo nhng cch phc tp. Do nhng kh
khan d, Hamlet (Hamlet, 1992) cho rang n khng c kha nang d pht trin mt so
thao hot dng tin cy. Nu bn khng chc chn rang so thao hot dng cua bn l
chnh xc, th bn c th khng tin tuong v s chnh xc cua d do tnh tin cy cua
bn.
6.2.2. D don tnh tin cy
Trong lc thm d|nh phn mm, ngui quan l phai phn cng qu trnh kim thu
h thng. V qu trnh kim thu phn mm rt tn km, nn n s duc dng ngay
khi c th v khng kim thu qu h thng. Kim thu c th dng khi mc d yu
cu tnh tin cy cua h thng d duc thc hin. Tt nhin, thinh thoang, cc d don
tnh tin cy c th cho thy mc d yu cu tnh tnh tin cy cua h thng s khng
bao gi duc thc hin. Trong trung hp d, ngui quan l phai dua ra quyt d|nh
kh khan: vit li cc phn cua phn mm hoc sua li m ta h thng.
M hnh qu trnh gia tang tnh tin cy l mt m hnh m tnh tin cy cua h thng
thay di qu gi trong thi gian qu trnh kim thu. Khi cc li h thng duc pht
hin, cc khim khuyt co so dn dn cc li d d duc sua cha, v vy tnh tin cy
cua h thng c th duc cai thin trong lc kim thu v g li h thng. D d don
tnh tin cy, m hnh qu trnh gia tang tnh tin cy nhn thc phai hiu l m hnh
ton hc. Ti khng di vo cc mc c th cua vn d ny, don gian chi thao lun cc
nguyn tc cua qu trnh gia tang tnh tin cy.
C nhiu m hnh qu trnh gia tang tnh tin cy d duc bt ngun t kinh nghim
trong cc linh vc ng dng khc nhau. Nhu Kan (Kan, 2003) d pht biu rang: hu
ht cc m hnh d theo lut s m, vi tnh tin cy tang nhanh khi cc khim khuyt
Tnh tin cy
(ROCOF)
t1 t2 t3 t4 t5
Thoi gian
Hnh 23.3 M hnh chuc nng cua qu trnh gia tng tnh tin cy voi buoc tng bng nhau
http://www.ebook.edu.vn 80
duc pht hin v loi bo (hnh 6.5). Sau d, s tang thm nho dn di v tin ti trng
thi n d|nh khi rt t khim khuyt duc pht hin v loi bo trong ln kim thu
cui cng.
M hnh don gian nht minh ha khi nim gia tang tnh tin cy l m hnh buc
chc nang (Jelinski v Moranda, 1972). Tnh tin cy tang lin tip mi khi mt li
(hoc mt tp li) duc pht hin v sua cha (hnh 6.3) v mt phin ban mi cua
phn mm duc to ra. M hnh ny gia su rang s sua cha phn mm lun duc
thc hin chnh xc v vy s li v khim khuyt lin hp cua phn mm giam trong
mi phin ban mi cua h thng. Khi s sua cha duc to ra, ty l xut hin li cua
phn mm (ROCOF) c th giam, nhu trn hnh 6.3. Ch cc chu ky thi gian trn
trc honh phan nh thi gian gia cc ln pht hnh h thng d kim thu, v vy
n thung c chiu di khng bang nhau.
Tuy nhin, trong thc t, cc li phn mm khng lc no cng duc sua trong lc
g li, v khi bn thay di mt chuong trnh, thinh thoang bn dua cc li mi vo
chuong trnh d. Kha nang xut hin cc li d c th cao hon kha nang xut hin cc
li d duc sua cha. Do d, thinh thoang tnh tin cy cua h thng c th tro nn ti
hon trong phin ban mi.
M hnh qu trnh gia tang tnh tin cy don gian buc bang nhau cng gia su tt ca
cc li dng gp nhu nhau vo tnh tin cy cua h thng, v mi li duc sua cha
dng gp mt lung nhu nhau vo vic gia tang tnh tin cy. Tuy nhin, khng phai
tt ca cc li c kha nang xay ra nhu nhau. Sua cha cc li ph bin dng gp vo
vic gia tang tnh tin cy nhiu hon l sua cha cc li chi thinh thoang xay ra. C l
bn cng cho rang d dng tm kim cc li c kha nang xay ra trong qu trnh kim
thu, v th tnh tin cy c th tang nhiu hon khi cc li t c kha nang xay ra duc
pht hin.
t1 t2 t3 t4 t5
Thoi gian
Tnh tin cy
Mt li duoc sua
v tnh tin cy giam
(tng thm ROCOF)
Tnh tin cy
(ROCOF)
tng khc nhau
lm xut hin cc li moi
Hnh 6.4 M hnh chuc nng qu trnh gia tng tnh tin cy voi buoc tng ngu nhin
http://www.ebook.edu.vn 81
Cui cng, cc m hnh nhu d xut cua Littlewood v Verrall dua ra cc vn d
bang cch dua mt thnh phn ngu nhin vo qu trnh gia tang tnh tin cy nham
cai thin tc dng cua mt sua cha trong phn mm. Do d, mi sua cha khng
dn dn cng mt lung tang tnh tin cy bang nhau trong phn mm, cc bin di
ph thuc vo tnh ngu nhin (hnh 6.4).
M hnh cua Littewood v Verrall cho php phu nhn qu trnh gia tang tnh tin cy
khi s sua cha dua vo nhiu li hon. D cng l m hnh khi mt li duc sua
cha, tnh tin cy duc cai thin trung bnh boi mi sua cha giam. L do l hu ht
cc li c kha nang xay ra c th d duc pht hin sm trong qu trnh kim thu.
Sua cha cc li d dng gp phn ln vo qu trnh gia tang tnh tin cy.
Cc m hnh o trn l cc m hnh ri rc phan nh qu trnh gia tang tnh tin cy.
Khi mt phin ban mi cua phn mm d duc sua li duc dua di kim thu, n nn
c ty l li xut hin thp hon phin ban truc. Tuy nhin, d d don tnh tin cy s
dt duc sau khi thc hin kim thu, chng ta cn m hnh ton hc lin tc. Nhiu
m hnh ny nhn duc t cc linh vc ng dng khc nhau, d duc d xut v so
snh.
Don gian, bn c th d don tnh tin cy bang cch kt hp d liu do tnh tin cy
v m hnh nhn bit tnh tin cy. Sau d, bn ngoi suy m hnh d vi cc mc yu
cu tnh tin cy v quan st khi mt mc yu cu tnh tin cy s dt duc (hnh 6.5).
Do d, kim thu v g li phai duc thc hin lin tc cho dn khi thoa mn cc yu
cu.
D don tnh tin cy cua h thng t m hnh qu trnh gia tang tnh tin cy c hai
li ch chnh:
1. Lap k hoach kim thu: dua ra lich kim thu hin tai, ban c th du don khi no
qu trnh kim thu duoc hon thnh. Nu diu d kt thc sau ngy du kin pht
Tnh tin cy
Tnh tin cy
m hnh tnh tin cy
Duong cong
Uoc luong thoi gian
dat duoc tnh tin cy
Thoi gian
=Tnh tin cydoduoc
yu cu
Hnh 6.5 Du don tnh tin cy
http://www.ebook.edu.vn 82
hnh h thng, th ban phai trin khai b sung ti nguyn cho vic kim thu v g
li d tng nhanh ty l pht trin tnh tin cy.
2. Su am phn khch hng: Di khi m hnh tnh tin cy cho thy su tng ln cua
tnh tin cy rt chm v su thiu cn xung cua cc c gng kim thu duoc yu cu
voi loi ch dat duoc tuong di t. N c th dng gi d dm phn lai cc yu cu v
tnh tin cy voi khch hng. Mt su lua chon khc, m hnh d du don tnh cc
yu cu v tnh tin cy c th se khng bao gio dat duoc. Trong truong hopd, ban
se phai dm phn lai voi khch hng v cc yu cu v tnh tin cy cua h thng.
O dy, ti d don gian ha m hnh qu trnh gia tang tnh tin cy nham dem li
cho bn nhng hiu bit co ban v khi nim ny. Nu bn mun su dng nhng m
hnh ny, bn phai hiu bit cc kin thc ton hc bn dui nhng m hnh ny v
cc vn d thc t cua chng. Littlewood v Musa d vit cc vn d bao qut cua cc
m hnh gia tang tnh tin cy v Kan vit mt cun sch tm tt rt hay v vn d
ny. Nhiu tc gia khc d m ta cc kinh nghim thc t cua h khi su dng cc m
hnh qu trnh gia tang tnh tin cy.
6.3. Dam bao tnh an ton
Cc qu trnh dam bao tnh an ton v thm d|nh tnh tin cy c mc tiu khc
nhau. Bn c th xc d|nh s lung tnh tin cy bang cch su dng mt vi d do, do
d do duc tnh tin cy cua h thng. Vi cc gii hn cua qu trnh do, bn bit cc
mc yu cu cua tnh tin cy c th dt duc hay khng. Tuy nhin, tnh an ton
khng th xc d|nh dy du nghia theo s lung, v do d khng th duc do khi
kim thu h thng.
V vy, dam bao tnh an ton lin quan ti vic chng minh mc d tin cy cua h
thng, n c th thay di t rt thp dn rt cao. Dy l mt chu d vi cc chuyn
gia phn don da trn cc du hiu cua h thng, mi trung v cc qu trnh pht
trin h thng. Trong nhiu trung hp, s tin cy ny phn no da trn kinh
nghim t chc pht trin h thng. Nu truc d mt cng ty d pht trin nhiu h
thng diu khin m d hot dng an ton, th d l diu hp l d cho rang h s tip
tc pht trin cc h thng an ton.
Tuy nhin, s dnh gi phai dam bao boi nhng chng c r rng t thit k h
thng, cc kt qua cua h thng V & V, v cc qu trnh pht trin h thng d duc
su dng. Vi mt s h thng, cc chng c r rng duc thu thp trong mt hp an
ton (xem phn 6.4), n cho php mt ngui diu chinh bn ngoi di dn kt lun s
tin tuong cua ngui pht trin v tnh an ton cua h thng duc chng minh l
dng.
Cc qu trnh V & V vi cc h thng quan trng an ton l ph bin vi cc qu
trnh c th so snh duc cua bt ky h thng no vi cc yu cu tnh tin cy cao. D
phai l qu trnh kim thu bao qut d pht hin cc khim khuyt c th xay ra, v
ti nhng ch thch hp, kim thu thng k c th duc su dng d dnh gi tnh tin
cy cua h thng. Tuy nhin, boi v ty l li cc thp duc yu cu trong nhiu h
thng quan trong an ton, kim thu thng k khng th lun cung cp s dnh gi v
http://www.ebook.edu.vn 83
s lung tnh an ton cua h thng. Cc thu nghim cung cp mt vi bang chng,
m d duc su dng cng vi cc bang chng khc nhu cc kt qua cua s xem xt
li v kim tra tinh , d dua ra kt lun v tnh an ton cua h thng.
S xem xt li bao qut l cn thit trong lc qut trnh pht trin hung tnh an
ton d trung by phn mm ti nhng ngui m s xem xt n t nhiu khung nhn
khc nhau. Pernas d xut 5 loi xem xt li m nn duc uy thc vi h thng quan
trng an ton.
1. xem xt lai chnh xc chuc nng mong doi.
2. xem xt lai cu trc c th duy tr duoc, v c th hiuduoc.
3. xem xt lai d kim tra lai thit k thut ton v cu trc d liu l thch hop voi
hnh vi xc dinh.
4. xem xt lai tnh chc chn cua thit k m, thut ton v cu trc d liu.
5. xem xt lai su dydu cua cc truong hop kim thu.
Mt s tha nhn lm co so cua hot dng v tnh an ton h thng l nhiu thiu
st cua h thng c th dn ti nhng rui ro v tnh an ton quan trng l t hon dng
k so vi tng s thiu st c th tn ti trong h thng d. Dam bao tnh an ton c
th tp trung vo nhng li c tim nang gy rui ro. Nu n c th duc chng minh
rang nhng li d khng th xut hin, hoc nu nhng li d xut hin, s rui ro kt
hp s khng dua dn mt tai nn, th h thng l an ton. Dy l nhng lun chng
co ban v tnh an ton m ti thao lun trong phn ti.
6.3.1. Nhng lun chng v tnh an ton
Vic chng minh mt chuong dng dn, nhu thao lun trong chuong truc, d
duc d ra nhu mt k thut thm d|nh phn mm khoang hon 30 nam truc. Vic
chng minh mt chuong trnh bnh thung chc chn c th duc xy dng cho cc
h thng nho. Tuy nhin, nhng kh khan thc t cua vic chng minh rang mt h
thng dp ng dy du cc dc ta n l qu ln vi t chc xem xt vic chng minh
dng dn tro thnh mt chi ph. Tuy nhin, vi mt s ng dng quan trng, n c
th kinh t d pht trin vic chng minh tnh dng dn nham tang s tin tuong rang
h thng dp ng cc yu cu v tnh an ton v tnh bao mt. Dy l trung hp dc
bit khi chc nang tnh an ton quan trng c th c lp trong mt h thng con nho
m c th duc xc d|nh chnh xc.
Mc d, n c th khng mang li li nhun d pht trin vic chng minh tnh
dng dn cho hu ht cc h thng, thinh thoang n c th thc hin duc d pht
trin nhng lun chng don gian v tnh an ton d chng minh chuong trnh dp
ng cc yu cu v tnh an ton. Vi mt lun chng v tnh an ton, n c th khng
cn thit d chng minh cc chc nang cua chuong trnh duc xc d|nh. N chi cn
thit d chng minh rang s thc thi cua chuong trnh khng th dn ti mt trng
thi khng an ton.
http://www.ebook.edu.vn 84
Hu ht cc k thut hiu qua d chng minh tnh an ton cua h thng l chng
minh bang phan chng. Bn bt du vi gia thit rang mt trng thi khng an ton
d duc xc d|nh bang phn tch rui ro h thng, c th duc di dn khi chuong trnh
thc thi. Bn vit mt thuc tnh d xc d|nh d l trng thi khng an ton. Sau d,
mt cch c h thng, bn phn tch m chuong trnh v chi ra, vi tt ca cc dung
dn chuong trnh dn ti trng thi d, diu kin kt thc cua cc dung dn d mu
thun vi thuc tnh trng thi khng an ton. Nu c trung hp d, gia thit ban
du cua trng thi khng an ton l khng dng. Nu bn lp li diu d vi tt ca
d|nh danh rui ro, th phn mm l an ton.
Mt v d, xem xt m trn hnh 6.6, n c th l mt phn thc thi cua h thng
phn phi insulin. Pht trin mt lun chng cho m ny bao gm vic chng minh
liu lung thuc duc quan l khng bao gi nhiu hon mc ln nht d duc lp
cho mi bnh nhn. Do d, khng cn thit d chng minh rang h thng phn phi
dng liu lung thuc, m chi don thun l n khng bao gi phn phi qu liu
lung cho bnh nhn.
- Liu luong Insulin duoc phn phi l mt hm cua mucd duong trong
mu, liu luong Insulin phn phi ln truoc v thoi gian phn phi liu
thuc truoc.
currentDose =computeInsulin();
// Tnh an ton kim tra v diu chinh currentDose nu cn thit
// Cu lnh if-1
if (previousDose ==0)
{
if (currentDose >16)
currentDose =16;
}
else
if (currentDose >(previousDose * 2))
currentDose =previousDose * 2;
// Cu lnh if-2
if (currentDose <minimumDose)
currentDose =2;
else if (currentDose >maxDose)
currentDose =maxDose;
administerInsulin(currentDose);
Hnh 6.6 M phn phi Insulin
http://www.ebook.edu.vn 85
D xy dng nhng lun chng v tnh an ton, bn xc d|nh tin diu kin cho
trng thi khng an ton , trong trung hp d nhu l currentDose > maxDose. Sau
d, bn chng minh rang tt ca cc dung dn chuong trnh dua dn s mu thun
cua diu khng d|nh tnh khng an ton d. Nu d l mt trung hp, diu kin
khng an ton khng th l dng. Do d, h thng l an ton. Bn c th cu trc v
dua ra nhng lun chng v tnh an ton bang d th| nhu trn hnh 6.7.
Nhng lun chng v tnh an ton, nhu duc chi ra trn hnh 6.7, l ngn hon nhiu
so vi vic thm tra h thng theo dng trnh t. Du tin, bn xc d|nh tt ca cc
dung dn c th m dua ti trng thi khng an ton tim nang. Bn lm vic v
pha sau t trng thi khng an ton v xem xt kt qua cui cng ti tt ca cc bin
trng thi trn mi dung dn dn ti n. Bn c th bo qua cc tnh ton truc d
(nhu cu lnh if th nht trong hnh 6.7) trong cc lun chng tnh an ton. Trong v
d ny, tt ca nhng g bn cn lin quan ti l mt tp cc gi tr| c th xay ra cua
currentDose ngay lp tc truc khi phuong thc administerInsulin duc thc thi.
Hnh 6.7 Cc lun chung tnh an ton dua trn su m ta nhng mu thun
http://www.ebook.edu.vn 86
Trong cc lun chng v tnh an ton chi ra trn hnh 6.7, c ba dung dn chuong
trnh c th dn ti vic gi ti phuong thc administerInsulin. Chng ti mun
chng minh rang lung insulin phn phi khng bao gi vut qu maxDose. Tt ca
cc dung dn chuong trnh c th dn ti phuong thc administerInsulin d duc
xem xt:
1. Khng c nhnh no cua cu lnh if thu hai duoc thuc thi. N chi c th xay ra nu
mt trong hai diu sau xay ra: currentDose l lon hon hoc bng minimumDose
v nho hon hoc bng maxDose.
2. Nhnh then cua cu lnh if thu 2 duoc thuc thi. Trong truong hop d, vic gn
currentDose bng 0 duoc thuc thi. Do d, hudiu kind l currentDose =0.
3. Nhnh else-if cua cu lnh if thu 2 duoc thuc thi. Trong truong hop d, vic gn
currentDose bng maxDose duoc thuc thi. Do d, hu diu kin d l
currentDose=maxDose.
Trong ca ba trung hp trn, cc hu diu kin mu thun vi cc tin diu kin v
tnh khng an ton l liu lung thuc duc phn phi l nhiu hon maxDose, v vy
h thng l an ton.
6.3.2. Dam bao quy trnh
Ti d thao lun tm quan trng cua vic dam bao cht lung cua qu trnh pht
trin h thng trong phn gii thiu chuong ny. Dy l diu quan trng vi tt ca
cc h thng quan trng nhung n dc bit quan trng vi cc h thng tnh an ton
quan trng. C 2 l do cho diu ny:
1. Cc rui ro t xay ra trong cc h thng quan trong v n c th l khng th xay ra
duoc trong thuc t d m phong chng trong lc kim thu h thng. Ban khng th
dua trn kim thu bao qut d tao ra cc diu kin c th dn toi mt tai nan.
2. Cc yu cu v tnh an ton, nhu ti d thao lun trong chuong 9, di khi l nhng
yu cu se khng (shall not) loai tru hnh vi khng an ton cua h thng. N
khng th duoc chung minh thuyt phuc thng qua kim thu v cc hoat dng thm
dinh khc rng cc yu cuddduoc thuc thi.
M hnh vng di cho qu trnh pht trin h thng tnh an ton quan trng lm
cho diu d r rng rang s ch r rng nn dnh cho tnh an ton trong tt ca cc
buc cua quy trnh phn mm. Diu d c nghia l cc hot dng dam bao tnh an
ton phai duc bao gm trong quy trnh. N bao gm:
1. Vic tao thnh mt doan rui ro v gim st h thng ln theo nhng rui ro tu phn
tch tnh rui ro ban du thng qua kim thu v thmdinh h thng.
2. B nhim vo du n cc k su v tnh an ton, nhng nguoi c trch nhim r rng
v tnh an ton cua h thng.
3. Su dung tnh an ton bao qut xem xt lai trong ton b quy trnh pht trin.
4. Tao thnh su chung nhn tnh an ton h thng boi tnh an ton cua cc thnh phn
quan trong tnh an ton d chnh thucduoc chung nhn.
5. Su dung h thng quan l cu hnh rt chi tit (xem chuong 29), m d duoc su
dungd theo di tt ca cc ti liu v tnh an ton lin quan v gi n trong tung
buoc voi ti liu k thut lin quan. C mt dim nho trong thu tuc thmdinh
http://www.ebook.edu.vn 87
nghim ngt nu mt li trong cu hnh quan l c nghia l mt h thng khng
dngduoc phn phi toi khc hng.
D minh ha vic dam bao tnh an ton, ti d su dng qu trnh phn tch rui ro
m n l mt phn thit yu cua qu trnh pht trin cc h thng tnh tin cy quan
trng. Phn tch rui ro lin quan dn vic xc d|nh cc rui ro, kha nang c th xay ra
cua chng v kha nang m cc rui ro d s dn dn tai nn. Nu qu trnh pht trin
bao gm cc du hiu r rng t nhn dng rui ro trong chnh h thng d, th mt
lun c c th chng minh duc ti sao cc rui ro d khng dn dn cc tai nn. Dy
c th duc b sung vo cc lun c v tnh an ton, nhu d thao lun trong phn
6.2.1. Khi s xc nhn bn ngoi duc yu cu truc khi h thng duc su dng (v
d, mt my bay), n thung l diu kin xc nhn rang cc du vt ny c th duc
chng minh.
Cc ti liu tnh an ton trung tm l hazard log, noi m cc rui ro duc xc d|nh
trong qu trnh dc ta duc chng minh v chi ra. Sau d, Hazard log duc su dng
tai mi giai don trong qu trnh pht trin phn mm d dnh gi rang giai don
pht trin d d dua cc rui ro d vo ban k khai. Mt v d don gian cua mt
hazard log du vo cho h thng phn phi insulin duc chi ra trn hnh 6.8. Mu ti
liu ny chng minh qu trnh phn tch rui ro v chi ra cc yu cu thit k m d
duc sinh ra trong qu trnh ny. Cc yu cu thit k d duc d d|nh d dam bao
rang h thng diu khin c th khng bao gi phn phi qu liu lung insulin ti
ngui dng.
Hazard Log Trang 4: duoc in ngy 20.02.2003
H thng: H thng bom Insulin File: Insulin/Safety/HazardLog
K su dam bao: J ames Brown Phin ban Log: 1/3
Xcdinh rui ro: Luong Insulin duoc phn phi qu liu luong toi bnh nhn
Xcdinh boi: J aneWilliams
Muc quan trong: 1
Xcdinh su rui ro: Cao
Xcdinh cy khim khuyt: C ngy 24.01.99 Vi tr: Hazard Log, trang 5
Nguoi tao cy khim khuyt: J ane Williams v Bill Smith
Kim tra cy khim khuyt: Ngy 28.01.99 Nguoi kim tra J ames Brown.
Cc yu cu thit k tnh an ton cua h thng
1. H thng se bao gm phn mm tu kim thu m se kim tra h thng cam
bin, dng h v h thng phn phi Insulin.
2. Phn mm tu kim tra se duoc thuc thi t nht mt ln mi pht.
3. Khi phn mm tu kim tra pht hin mt sai st trong bt ky mt thnh
phn no, mt canh bo se duoc pht ra v bom hin thi se cho bit tn cua
thnh phn m sai st dduoc pht hin. Vic phn phi Insulin se bi tr
hon.
4. H thng se kt hop voi h thng ghi dd cho php nguoi su dung h
thng suadi liu luong Insulin d tnh d phn phi boi h thng.
5. Luong ghi d nn duoc gioi han khng lon hon mt gi tri dinh truoc l
mt tp m h thngdduoc cu hnh boi cc chuyn gia y t.
Hnh 6.8 Mt trang don gian Hazard log
http://www.ebook.edu.vn 88
Nhu chi ra trn hnh 6.8, cc c nhn ch|u trch nhim v tnh an ton nn duc
xc d|nh r rng. Cc d n pht trin h thng tnh an ton quan trng nn b
nhim mt k su v tnh an ton, ngui m khng lin quan trong vic pht trin h
thng. Trch nhim cua k su ny l dam bao vic kim tra tnh an ton thch hp d
duc to thc hin v chng minh. H thng d cng c th yu cu mt ngui thm
d|nh tnh an ton dc lp duc b nhim t mt t chc bn ngoi, ngui ny s bo
co trc tip ti khch hng cc vn d v tnh an ton.
Trong mt s linh vc, cc k su h thng c trch nhim v tnh an ton phai duc
cp giy chng nhn. O Anh, diu ny c nghia l h phai duc tha nhn nhu l
mt thnh vin cua mt vin k ngh (v din, co kh,) v phai l cc k su c du tu
cch hnh ngh. Cc k su thiu kinh nghim, cht lung km c th khng dam bao
trch nhim v tnh an ton.
Hin nay, diu ny khng duc p dng vi cc k su phn mm, mc d n d
duc thao lun rng ri v giy php cua cc k su o mt s bang cua nuc M
(Knight v Leveson, 2002; Begert, 2002). Tuy nhin, trong tuong lai, cc tiu chun
cua qu trnh pht trin phn mm tnh an ton quan trng c th yu cu cc k su
v tnh an ton cua d n nn l cc k su d duc cp giy chng nhn chnh thc
vi mt cp d thp nht cua qu trnh do to.
6.3.3. Kim tra tnh an ton khi thc hin
K thut tuong t c th duc su dng d gim st dng cc h thng tnh an ton
quan trng. Cc m kim tra c th duc thm vo h thng d kim tra mt rng
buc v tnh an ton. N dua mt ngoi l nu rng buc d b| vi phm. Cc rng
buc v tnh an ton nn lun duc gi ti cc dim c th trong mt chuong trnh c
th duc biu th| nhu cc xc nhn. Cc xc nhn d m ta cc diu kin phai duc
dam bao truc khi cc cu lnh tip theo c th duc thc hin. Trong cc h thng
tnh an ton quan trng, cc xc nhn nn duc sinh ra t cc dc ta tnh an ton. N
duc d d|nh d dam bao hnh vi an ton hon hnh vi theo cc dc ta.
Cc xc nhn c th c gi tr| dc bit trong vic dam bao tnh an ton trong giao
tip gia cc thnh phn cua h thng. V d, trong h thng phn phi insulin, liu
thuc cua ngui quan l insulin cng vi cc tn hiu duc sinh ra ti bom insulin d
phn phi lung tang xc d|nh insulin (hnh 6.9). Lung tang insulin cng vi liu
lung insulin ln nht cho php c th duc tnh ton truc v duc tnh dn nhu
mt xc nhn trong h thng.
Nu c mt li trong vic tnh ton currentDose, currentDose l mt bin trng thi
gi lung insulin duc phn phi, hoc nu gi tr| ny d b| sua di theo mt cch
no d, th n s b| chn li ti buc ny. Mt liu lung insulin qu mc s khng
duc phn phi, khi phuong thc kim tra dam bao rang bom s khng phn phi
nhiu hon maxDose.
http://www.ebook.edu.vn 89
T cc xc nhn tnh an ton duc bao gm nhu cc li ch giai chuong trnh, vit
m d kim tra cc xc nhn d c th duc sinh ra. Bn c th xem hnh 6.9, cu
lnh if sau cc ch giai xc nhn kim tra xc nhn d. V nguyn tc, vic sinh cc
m ny c th duc sinh ra mt cch t dng bang cch su dng b tin xu l xc
nhn. Tuy nhin, cc cng c thung phai duc vit ring bit v thng thung m
xc nhn duc sinh bang tay.
6.4. Cc trung hp an ton v tin cy duc
Cc trung hp an ton v, tng qut hon, cc trung hp tin cy duc cu trc
thnh ti liu, dua ra cc lun chng v chng c chi tit d chng minh h thng l
an ton hoc mc yu cu cua tnh tin cy duc d dt duc. Vi nhiu loi h thng
quan trng, dua ra mt trung hp an ton l mt yu cu theo lut d|nh, v trung
hp d phai thoa mn mt s chng nhn chnh truc khi h thng c th duc trin
khai.
Nhng ngui diu chinh duc to ra boi chnh phu d dam bao rang k ngh mt
khng duc li dng s thiu cc tiu chun quc gia v tnh an ton, tnh bao mt,
C nhiu ngui diu chinh trong nhiu linh vc k ngh khc nhau. V d, ngnh
hng khng duc diu chinh boi nhng ngui trong linh vc hng khng quc gia
nhu FAA (ti M) v CAA (ti Anh). Nhng ngui diu chinh ngnh dung st tn
ti d dam bao tnh an ton trong ngnh dung st, nhng ngui diu chinh ht nhn
phai chng nhn tnh an ton cua khu vc xu l ht nhn truc khi n c th hot
dng. Trong linh vc ngn hng, cc ngn hng nh nuc ph v vi vai tr nhu
nhng ngui diu chinh, thit lp cc thu tc v cc bi tp d giam kha nang gian
static void administerInsulin() throw SafetyException {
int maxIncrements =InsulinPump.maxDose / 8;
int increments =InsulinPump.currentDose / 8;
// xc nhan currentDose <= InsulinPump.maxDose;
if (InsulinPump.currentDose >InsulinPump.maxDose)
throw new SatefyException (Pump.doseHigh);
else
for (int i =1; i <=increments; i++)
{
generateSignal();
if (i >maxIncrements)
throw new SatefyException (Pump.incorrectIncrements);
} // for loop
} // administerInsulin
Hnh 6.9 Quan l insulin bang cch kim tra lc thc thi
http://www.ebook.edu.vn 90
ln v bao v khch hng truc nhng rui ro. Khi cc h thng phn mm ngy cng
tang tm quan trng trong co so h tn cua cc quc gia, nhng ngui diu chinh tro
nn lin quan nhiu hon ti cc trung hp an ton v tin cy duc cua cc h thng
phn mm.
Thnh phn M ta
M ta h thng Tng quan v h thng v m ta cc thnh phn
quan trong cua n.
Cc yu cu tnh an ton Cc yu cu tnh an ton rt ra tu dc ta yu cu cua
h thng.
Phn tch cc rui ro v
cc nguy co
Cc ti liu m ta cc rui ro v nguy co dduoc xc
dinh v cc tiu chun duoc dua ra d giam cc
nguy co d.
Xc nhn v thmdinh M ta vic su dung thu tuc V & V v, ch thch
hop, cc kim thu duoc thuc hin voi h thng.
Bo co xem xt lai Cc h so cua tt ca thit k v tnh an ton duoc
xem xt lai
Nhm nng luc Chung co nng luc cua tt ca cc nhm cng voi
vic pht trin v thmdinh h thng tnh an ton
lin quan.
Qu trnh QA Cc h so cua qu trnh dam bao cht luong duoc
thuc hin trong khi pht trin h thng.
Qu trnh quan l su thay
di
Cc h so cua tt ca cc thay di duoc dua ra v cc
hnh dng thuc hin v noi thch hop, su bin minh
tnh an ton cua cc thay di d.
Cc truong hop kt hop
tnh an ton
Xem xt toi cc truong hop tnh an ton khc c th
tc dng toi cc truong hop an ton.
Vai tr cua nhng ngui diu chinh l kim tra xem h thng d hon thnh l an
ton v c th thc hin duc, v vy h chu yu duc tp hp khi mt d n pht
trin duc hon thnh. Tuy nhin, nhng ngui diu chinh v nhng ngui pht
trin him khi lm vic dc lp, h lin lc vi di pht trin d xc minh nhng g
phai tnh dn trong mt trung hp an ton. Nhng ngui diu chinh v nhng
ngui pht trin cng nhau thm tra cc qu trnh v cc thu tc d dam bao rang n
d duc ban hnh v chng minh thao mn ngui diu khin.
Tt nhin, ban thn phn mm khng nguy him. N chi nguy him khi n duc
nhng vo trong mt h thng ln, h thng da trn my tnh hoc h thng chuyn
mn x hi m nhng sai st cua phn mm c th dn dn sai st cua cc thit b|
khc hoc cuar cc qu trnh m c th gy ra tn hi v ci cht. V vy, mt trung
hp an ton cua phn mm lun lun l mt phn cua trung hp an ton h thng
rng hon d chng minh tnh an ton cua ton b h thng. Khi xy dng mt trung
hp an ton cua phn mm, bn phai lin h nhng sai st cua phn mm vi nhng
sai st cua h thng ln hon v chng minh rang hoc nhng sai st cua phn mm s
Hnh 6.11. Cc thnh phn cua mt truong hop an ton cua phn mm
http://www.ebook.edu.vn 91
khng xay ra hoc n s khng lm lan rng ra theo cch lm cho cc sai st nguy
him cua h thng c th xay ra.
Mt trung hp an ton l mt tp cc ti liu bao gm m ta h thng d duc
chng nhn, thng tin v cc qu trnh su dng d pht trin h thng v cc lun
chng hp logic d chng minh rang h thng l c kha nang an ton. Bishop v
Bloomfield d dua ra d|nh nghia ngn gn v mt trung hp an ton nhu sau:
Mt ti liu nhiu bng chung cung cp mt lun chung thuyt phuc v hop l rng h
thng thoa mn tnh an ton voi ung dungdua ra trong mi truongdua ra.
S t chc v ni dung cua mt trung hp an ton ph thuc vo kiu cua h
thng d duc chng nhn v ng canh hot dng cua n. Hnh 6.11 chi ra mt t
chc c th xay ra vi mt trung hp an ton cua phn mm.
Thnh phn then cht cua mt trung hp an ton l mt tp cc lun chng hp
logc v tnh an ton cua h thng. N c th l cc lun chng xc thc (s kin X s
hoc s khng xay ra) hoc cc lun chng kha nang (xc xut cua s kin X l 0.Y);
khi duc kt hp, n c th chng minh duc tnh an ton. Nhu trn hnh 24.12, mt
lun chng l mt mi lin h gia ci g duc nghi l mt trung hp (mt tuyn b)
v khung chng c d duc thu thp. V co ban, lun chng d giai thch ti sao
tuyn b d (ni chung diu g d l an ton) c th duc suy ra t cc chng c d.
Tt nhin, dua ra nhiu mc t nhin cua cc h thng, cc tuyn b duc t chc
trong mt h thng phn cp. D chng minh rang mt tuyn b mc cao l hp l,
du tin bn phai thc hin vi cc lun chng mc thp hon. Hnh 24.13 chi ra mt
phn cua h thng phn cp tuyn b phn phi kim tim Insulin.
Nhu mt thit b| y t, h thng bom Insulin c th phai duc chng nhn bn ngoi.
V d, o Anh, MDD phai dua ra mt chng nhn an ton vi bt ky thit b| y t no
duc bn ti Anh. Nhiu lun chng khc nhau c th phai dua ra d chng minh
tnh an ton cua h thng d. V d, cc lun chng dui dy c th l mt phn
trung hp an ton cua h thng bom Insulin.
Chung co
Chung co
Chung co
Lun cu Tuynb
Hnh 6.12 Cu trc cua mt lun c
http://www.ebook.edu.vn 92
Tuyn b: Mt liu thuc lon nht duoc tnh boi h thng bom Insulin se khng vuot
qu maxDose.
Chng c: Lun chung an ton cho h thng Insulin (hnh 6.7).
Chng c: Cc tp d liu thu nghim cho h thng Insulin.
Chng c: Bo co phn tch tinh cho phn mm bom Insulin.
Lun c: Lun cu an ton chi ra liu luong insulin lon nht c th duoc tnh bng voi
maxDose.
Trong 400 thu nghim, gi tri cua Dose duoc tnh chnh xc v khng bao gio vuot qu
maxDose.
Phn tch tinh phn mmdiu khin khng xut hin di thuong.
Tt ca du hop l d thua nhn rng tuyn b dduoc khngdinh.
Tt nhin, dy l mt lun chng rt don gian, v trong mt trung hp an ton thc
t c th tham khao dn cc chng c s duc dua ra. Boi v, chi tit t nhin cua n,
do d, cc trung hp an ton l cc ti liu rt di v phc tp. Cc cng c phn
mm khc nhau c kha nang gip xy dng chng, v ti d bao gm cc lin kt ti
cc cng c d trong cc trang web cua cun sch ny.
Nhng vn d trng tm
maxDose l mt liu
thuc an ton cho
nguoi dng h thng
bom Insulin
Khi thao tc bnh thuong,
liu thuc lon nht duoc
tnh se khng vuot qu
maxDose
Luong thuc lon nht
duoc tnh boi phn
mm bom se khng
vuot qu maxDose
maxDose duoc
thit dt chnh
xc khi bom
duoc cu hnh
Nu phn mm bi li,
liu thuc lon nht
duoc tnh se khng
vuot qu maxDose
Bom insulin se khng phn
phi mt liu thuc insulin
khng an ton
Hnh 6.13 H thng phn cp tuyn b trong truong hop tnh an ton
cua h thng bom insulin
http://www.ebook.edu.vn 93
Kim thu thng k duoc su dung dnh gi tnh tin cy cua phn mm. N dua vo
kim thu h thng voi mt tp d liu thu nghim phan nh so thao hoat dng cua
phn mm. D liu thu nghim c th duoc sinh ra tu dng.
Cc m hnh pht trin tnh tin cy biu thi su thay di tnh tin cy khi cc thiu st
duoc tho g tu phn mm trong qu trnh kim thu. Cc m hnh tnh tin cy c
th duoc su dungd du don khi cc yu cu tnh tin cy se dat duoc.
Chung minh tnh tin cy l mt k thut hiu qua dam bao tnh tin cy cua san
phm. N chi ra cc diu kin c tnh rui ro xc dinh c th khng bao gio xut
hin. N thuongdon gian hon vic chung minh rng chuong trnh dp ung dy du
dc ta.
Diu quan trongd c mt dinh nghia r rng, chung nhn qu trnh pht trin cc
h thng tnh tin cy quan trong. Qu trnh d phai bao gm su xc nhn v gim
st cc rui ro tim nng.
Thmdinh tnh bao mt c th duoc thuc hin bng cch su dung phn tch dua
trn kinh nghim, phn tch dua trn cng cu hoc di h(tiger teams) m m
phong vic tn cng vo h thng.
Cc truong hop tnh an ton tp hop tt ca cc chung co d chung minh mt h
thng l an ton. Cc truong hop an ton d duoc yu cu khi mt b diu khin
bn ngoi phai xc nhn h thng truoc khi n duoc su dung.
Best practices in code inspection for safety-critical software. Bi bo gioi thiu mt ban
lit k cc muc can kim tra cua cc nguyn tc a kim tra v xem xt phan mm tnh an
ton quan trong. (J.R. de Almeida, IEEE Software, 20(3), May/June 2003).
Statically scanning Java code: Finding security vulnerabilities. y l mt bi bo hay
v van a ngn nga vic tan cng tnh bao mat. N thao luan cch cc tan cng a auoc
thuc hin v cch pht hin chng bng mt phn tch tinh. (J. Viega, IEEE Software,
17(5), September/Octorber 2000).
Software Reliability Engineering: More Reliable Software, Faster Development and
Testing. y chc chn l r rng v vic su dung cc so thao thao tc v m hnh tnh
tin cay a anh gi tnh tin cay. N bao gm kinh nghim chi tit v kim thu thn k. (J.D.
Musa, 1998, McGraw-Hill).
Safety-critical Computer System. y l mt cun sch gio khoa rat hay bao gm mt
s chuong hay v vi tr cua nhng phuong thuc hnh thuc trong qu trnh pht trin phan
mm tnh tin cay quan trong. (N. Storey, 1996, Addison-Wesley).
Safeware: System Safety and Computers. Cun sch ny bao gm mt s chuong v vic
tham ainh cc h thng tnh an ton quan trong voi rat nhiu chi tit hon ti a aua ra o
ay v vic su dung nhng luan chung v tnh an ton dua trn cy thiu st. (N. Leveson,
1995, Addison-Wesley).
Bi tp
1. M ta cch ban se su dung d thmdinh dc ta tnh tin cy cua h thng siu thi m
band xc dinh trong bi tp 9.8. Cu tra loi cua ban nn bao gm su m ta cc cng
cu thmdinh c th duoc su dung.
http://www.ebook.edu.vn 94
2. Giai thch tai sao thuc t khng th lm duoc vic thmdinhdc ta tnh tin cy khi c
gioi han r rng cua rt t li qua ton b cucdoi cua mt h thng.
3. Su dung tc phm vn hoc nhu thng tin nn tang, vit mt bo co cho nguoi quan l
(nhng nguoi chua c kinh nghim trong linh vuc ny) v cch su dung m hnh pht
trin tnh tin cy.
4. C hop voi daoduc khng khi mt k su dng d phn phi mt h thng phn mm
m d bit c cc thiu st toi khch hng? Diu d c th tao nn nhiu diu khc
nhau nu khch hng ni c tn tai cc thiu st trong phn mm? Nhu th no l hop
ld dua ra tuyn b v tnh tin cy cua phn mm trong hon canhd?
5. Giai thch tai sao dam bao tnh tin cy cua h thng khng phai l mt su dam bao v
tnh an ton cua h thng.
6. Co cudiu khin vic kha cua trong diu kin luu tr cht thai hat nhn duoc thit
k d hoat dng an ton. N dam bao li di vo kho lua tr chi duoc cho php khi tm
chn su phng xa duocdt hoc khi mucd phng xa trong phng giam xung dn gi
tri d cho (dangerLevel). D l:
a. Nu tm chn diu khin tu dng l duoc dt trong mt phng, cua c th
duoc mo boi nguoi diu hnh c thm quyn.
http://www.ebook.edu.vn 95
CHUONG 7: KIEM THU PHAN MEM TRONG CNG NGHIJP
Trong phn truc chng ti d gii thiu tng quan v cc mc v loi kim tra phn
mm (KTPM) co ban. Thc t di su vo tng mc v loi kim tra, cn c rt nhiu
kim tra dc th khc na, mang tnh chuyn bit cho tng vn d hoc tng loi ng
dng. Trong phn ny, chng ti s gii thiu chi tit v nhng buc co ban cua mt
quy trnh KTPM, lm th no d dnh gi v cai tin nang lc KTPM cua mt t
chc thng qua m hnh TMM (Testing Maturity Model), duc cc chuyn gia dnh
gi kh tt, dnh ring cho hot dng KTPM
7.1. QUY TRNH KIEM TRA PHAN MEM CO BAN
Truc khi tm hiu mt quy trnh kim tra phn mm co ban, ta cn hiu hai khi
nim sau: Test Case v Test Script.
7.1.1. Test Case
Mt Test Case c th coi nm na l mt tnh hung kim tra, duc thit k d kim
tra mt di tung c thoa mn yu cu dt ra hay khng. Mt Test Case thung bao
gm 3 phn co ban:
M ta: dc ta cc diu kin cn c d tin hnh kim tra.
Nhp: dc ta di tung hay d liu cn thit, duc su dng lm du vo d thc
hin vic kim tra.
Kt qua mong ch: kt qua tra v t di tung kim tra, chng to di tung dt yu
cu.
7.1.2. Test Script
Mt Test Script l mt nhm m lnh dng dc ta k|ch ban dng d t dng ha mt
trnh t kim tra, gip cho vic kim tra nhanh hon, hoc cho nhng trung hp m
kim tra bang tay s rt kh khan hoc khng kha thi. Cc Test Script c th to thu
cng hoc to t dng dng cng c kim tra t dng. (Hnh 04)
Phn sau s giai thch r hon cc buc co ban cua mt quy trnh kim tra.
Hnh 7.1: Mt quy trnh kim tra co ban c th p dung rng ri cho nhiu h thng PM
voi nhngdc trung khc nhau.
http://www.ebook.edu.vn 96
7.1.3. Lp k hoch kim tra
Mc dch: Nham chi d|nh v m ta cc loi kim tra s duc trin khai v thc hin.
Kt qua cua buc lp k hoch l ban ti liu k hoch KTPM, bao gm nhiu chi tit
t cc loi kim tra, chin luc kim tra, cho dn thi gian v phn d|nh lc lung
kim tra vin.
Ban k hoch kim tra du tin duc pht trin rt sm trong chu trnh pht trin
phn mm (PTPM), ngay t khi cc yu cu d tuong di dy du, cc chc nang v
lung d liu chnh d duc m ta. Ban k hoch ny c th duc coi l ban k hoch
chnh (master test plan), trong d tt ca cc k hoch chi tit cho cc mc kim tra v
loi kim tra khc nhau du duc d cp (hnh 05).
Luu , ty theo dc trung v d phc tp cua mi d n, cc k hoch kim tra chi
tit c th duc gom chung vo ban k hoch chnh hoc duc pht trin ring.
Sau khi ban k hoch chnh duc pht trin, cc ban k hoch chi tit ln lut duc
thit k theo trnh t thi gian pht trin cua d n. (Hnh 06 minh ho thi dim
ph hp d thit lp cc k hoch kim tra, gn lin vi qu trnh pht trin cua d
n. Qu trnh pht trin cc k hoch kim tra khng dng li ti mt thi dim, m
lin tc duc cp nht chinh sua cho ph hp dn tn cui d n.).
Hnh 05: Ban k hoach chnh v cc ban k hoach chi tit
Cc buc lp k hoch:
Xc dinh yu cu kim tra: chi dinh b phn, thnh phn cua PM se duoc kim tra, pham
vi hoc gioi han cua vic kim tra. Yu cu kim tra cungduoc dng d xc dinh nhu cu
nhn luc.
Khao st rui ro: Cc rui ro c kha nng xay ra lm chm hoc can tro qu trnh cung nhu
cht luong kim tra. V du: k nng v kinh nghim cua kim tra vin qu yu, khng hiu
r yu cu.
Xc dinh chin luoc kim tra: chi dinh phuong php tip cnd thuc hin vic kim tra
trn PM, chi dinh cc k thut v cng cu h tro kim tra, chi dinh cc phuong php dng
d dnh gi cht luong kim tra cung nhu diu kind xc dinh thoi gian kim tra.
Xc dinh nhn luc,vt luc: k nng, kinh nghim cua kim tra vin; phn cung, phn
mm, cng cu, thit bi gia lp... cn thit cho vic kim tra.
http://www.ebook.edu.vn 97
Lp k hoach chi tit: uoc luong thoi gian, khi luong cng vic, xc dinh chi tit cc
phn cng vic, nguoi thuc hin, thoi gian tt ca cc dim mc cua qu trnh kim tra.
Tng hop v tao cc ban k hoach kim tra: k hoach chung v k hoach chi tit.
Xem xt cc k hoach kim tra: phai c su tham gia cua tt ca nhng nguoi c lin quan,
k ca truong du n v c th ca khch hng. Vic xem xt nhm baodam cc k hoach l
kha thi, cung nhu d pht hin (v sa cha sau d) cc sai st trong cc ban k hoach.
7.1.4. Thit k Test
Muc dch: Nhm chi dinh cc Test Case v cc buoc kim tra chi tit cho mi phin ban
PM. Giai doan thit k test l ht suc quan trong, n baodam tt ca cc tnh hung kim tra
"qut" ht tt ca yu cu cn kim tra.
Hnh 06 cho thy vic thit k test khng phai chi lm mt ln, n se duoc sua cha, cp
nht, thm hoc bot xuyn sut chu ky PTPM, vo bt cu lc no c su thay di yu cu,
hoc sau khi phn tch thy cnduoc sua cha hoc b sung.
Hnh 7: Thoi dim ph hopd thit lp cc k hoach kim tra
Cc buc thit k test bao gm:
- Xc d|nh v m ta Test Case: xc d|nh cc diu kin cn thit lp truc v
trong lc kim tra. M ta di tung hoc d liu du vo, m ta cc kt qua
mong ch sau khi kim tra.
- M ta cc buc chi tit d kim tra: cc buc ny m ta chi tit d hon
thnh mt Test Case khi thc hin kim tra. Cc Test Case nhu d ni o trn
thung chi m ta du vo, du ra, cn cch thc tin hnh nhu th no th
khng duc d|nh nghia. Thao tc ny nham chi tit ha cc buc cua mt
Test Case, cng nhu chi d|nh cc loi d liu no cn c d thc thi cc Test
Case, chng bao gm cc loi d liu trc tip, gin tip, trung gian, h
thng...
- Xem xt v khao st d bao phu cua vic kim tra: m ta cc chi s v cch
thc xc d|nh vic kim tra d hon thnh hay chua? bao nhiu phn tram
PM d duc kim tra? D xc d|nh diu ny c hai phuong php: can c
trn yu cu cua phn mm hoc can c trn s lung code d vit.
http://www.ebook.edu.vn 98
- Xem xt Test Case v cc buc kim tra: Vic xem xt cn c s tham gia
cua tt ca nhng ngui c lin quan, k ca truong d n nham bao dam cc
Test Case v d liu yu cu l du v phan nh dng cc yu cu cn kim
tra, d bao phu dt yu cu, cng nhu d pht hin (v sa cha) cc sai st.
7.1.5. Pht trin Test Script
kt qua nhn duc l dng tin cy, cng nhu nhn bit duc nhng li xay ra khng
phai do PM m do d liu dng d kim tra, mi trung kim tra hoc cc buc kim
tra (hoc Test Script) gy ra. Nu thc s li xay ra do qu trnh kim tra, cn phai
sua cha v kim tra li t du.
7.1.6. Dnh gi qu trnh kim tra
Mc dch: Dnh gi ton b qu trnh kim tra, bao gm xem xt v dnh gi kt qua
kim tra, lit k li, chi d|nh cc yu cu thay di, v tnh ton cc s liu lin quan
dn qu trnh kim tra (chng hn s gi, thi gian kim tra, s lung li, phn loi
li...).
Luu , mc dch cua vic dnh gi kt qua kim tra o buc ny hon ton khc vi
buc thm d|nh kt qua kim tra sau khi hon tt mt vng kim tra. Dnh gi kt
qua kim tra o giai don ny mang tnh ton cc v nham vo ban thn gi tr| cua
cc kt qua kim tra.
Hnh 06 cho thy, vic dnh gi qu trnh v kt qua kim tra duc thc hin song
song vi bt ky ln kim tra no v chi chm dt khi qu trnh kim tra d hon tt.
Dnh gi qu trnh kim tra thung thng qua cc buc sau:
Hnh 07: Cu trc cua mt mc truong thnh trong m hnh TMM
http://www.ebook.edu.vn 99
Phn tch kt qua kim tra v d xut yu cu sua cha: Chi d|nh v dnh gi s
khc bit gia kt qua mong ch v kt qua kim tra thc t, tng hp v gui thng
tin yu cu sua cha dn nhng ngui c trch nhim trong d n, luu tr d kim
tra sau d.
Dnh gi d bao phu: Xc d|nh qu trnh kim tra c dt duc d bao phu yu cu
hay khng, ty l yu cu d duc kim tra (tnh trn cc yu cu cua PM v s lung
code d vit).
Phn tch li: Dua ra s liu phc v cho vic cai tin cc qui trnh pht trin, giam
sai st cho cc chu ky pht trin v kim tra sau d. V d, tnh ton ty l pht sinh
li, xu hung gy ra li, nhng li "ngoan c" hoc thung xuyn ti xut hin.
Xc d|nh qu trnh kim tra c dt yu cu hay khng: Phn tch dnh gi d xem
cc Test Case v chin luc kim tra d thit k c bao phu ht nhng dim cn kim
tra hay khng? Kim tra c dt yu cu d n khng? T nhng kt qua ny, kim
tra vin c th s phai thay di chin luc hoc cch thc kim tra.
Bo co tng hp: Tng hp kt qua cc buc o trn v phai duc gui cho tt ca
nhng ngui c lin quan.
Tm luc: Trn dy l tm tt cc buc co ban cua mt quy trnh KTPM. Ty theo
dc th cua d n, loi kim tra v mc d kim tra, quy trnh kim tra trong thc t
c th chi tit hon nhiu, tuy nhin cc buc trn l xuong sng cua bt ky quy trnh
kim tra no.
Sau dy, chng ti s gii thiu mt m hnh gip cc t chc dnh gi v nng cao
nang lc KTPM cua mnh, d l m hnh TMM (Testing Maturity Model).
7.2. M HNH KIEM TRA PHAN MEM TMM (TESTING MATURITY
MODEL)
Mc d khng t ngui trong cng nhu ngoi ngnh bit hoc d tng nghe v m
hnh CMM/CMMi (Capability Maturity Model/Intergration) cua SEI (Software
Engineering Institute Vin cng ngh phn mm cua M) dng d dnh gi v nng
cao nang lc PTPM, song c l t ngui bit v TMM - m hnh duc cc chuyn gia
dnh gi l kh tt duc dng d dnh gi v nng cao nang lc KTPM cua mt t
chc.
TMM thc ra khng mi, phn ln ni dung cua m hnh ny d duc pht trin t
nam 1996, tuy nhin chng khng duc chp nhn rng ri. Mt trong nhng l do
chnh d l ti liu v TMM rt t. Cc bi bo, sch v n thung duc vit dui
dng nng v l thuyt. Mt l do na l phn ln cc t chc du "say m m hnh
CMM/CMMi v nghi rang qu du cho qui trnh PTPM cua mnh.
Thc t cho thy khng hon ton nhu vy
KTPM l mt b phn sng cn cua quy trnh PTPM, s h tr quan trng d dam
bao cht lung cua PM. Nhiu t chc PM trong thc t vn chua nhn thy tnh non
nt yu km trong quy trnh cng nhu nang lc KTPM cua h. Cc m hnh hng
du hin nay nhu CMM/CMMi/ISO9000 thc t vn khng ch tm dy du vo cc
vn d cua KTPM.
http://www.ebook.edu.vn 100
TMM duc pht trin ti IIT (Illinois Institute of Technology Vin cng ngh
Illinois) vo gia thp nin 90 trong bi canh hu nhu chua c quy trnh PM no d
cp mt cch ton din vn d kim tra trong PTPM. Tuong t SW-CMM, n c mt
cu trc co ban bao gm 5 mc truong thnh. V TMM l m hnh chuyn bit cho
linh vc KTPM, cc mc truong thnh ny trc tip m ta cc mc tiu truong
thnh cua mt quy trnh KTPM. Trong mt t chc PM, TMM khng mu thun m
c th dng dc lp hoc phi hp vi CMM/CMMi.
Mc dch cua TMM l h tr t chc PM dnh gi v cai tin cc quy trnh v nang
lc PM cua mnh, mc tiu cui cng l gip t chc c th:
Hon thnh san phm dng hn v trong phm vi ngn sch d d|nh.
To ra san phm phn mm c cht lung cao hon.
Xy dng nn tang cho vic cai tin quy trnh o phm vi rng trong mt t chc.
TMM bao gm hai thnh phn chnh:
1. Tp hp 5 mc d truong thnh, d|nh nghia nang lc KTPM cua mt t chc. Mi
mc d bao gm:
Mc tiu
Hot dng d hin thc cc mc tiu
Cng vic v phn cng trch nhim
2. M hnh dnh gi nang lc KTPM cua mt t chc, bao gm
Bang cu hoi dnh gi
Thu tc tin hnh dnh gi
Hung dn d chn la v hun luyn nhm dnh gi.
Phn sau ta s khao st r hon v cc mc d truong thnh cua TMM
7.2.1. Cu trc cua mt mc truong thnh
Cc mc truong thnh cu thnh TMM, vy ban thn mt mc truong thnh l g v
cu trc cua n ra sao? (Hnh 07).
Mi mc d, ngoi tr mc d thp nht l 1, c cu trc bao gm cc thnh phn
sau:
Mc tiu truong thnh: Xc d|nh cc mc tiu cn phai dt trong vic cai tin quy
trnh KTPM. D dt mt mc truong thnh, t chc phai dt tt ca cc mc tiu cua
mc truong thnh d.
Mc tiu con: Cc mc tiu truong thnh d ni o trn c tm bao qut rng. Do
vy d lm r hon phm vi cng nhu nhng cng vic cn lm d dt duc mt mc
tiu, mi mc tiu li duc m ta r hon thng qua nhng mc tiu con, d hiu v c
th hon. Nu ta dt duc tt ca mc tiu con cua mt mc tiu nghia l ta d dt duc
mc tiu d.
Cng vic v trch nhim: M ta r hon cc cng vic cn lm, cng nhu ai trong
d n (truong d n, lp trnh vin, kim tra vin...) s thc hin cc cng vic d.
Nghia l, d dt duc mt mc tiu con, ta cn thc hin tt ca cc cng vic duc d
ngh| cho mc tiu con d.
http://www.ebook.edu.vn 101
S tham gia cua cc nhm khc nhau: TMM cho rang c 3 nhm ngui quan trng
vi cch nhn v quan dim khc nhau anh huong dn cng vic KTPM, d l ngui
quan l/quan l d n, lp trnh vin/kim tra vin, v khch hng/ngui su dng. Do
vy m hnh TMM yu cu cc cng vic phai duc phn trch nhim cho 3 nhm
ngui ny.
7.2.2. nghia v t chc cua cc mc truong thnh
5 mc d truong thnh do TMM quy d|nh duc xc d|nh nhu hnh 08.
Mc truong thnh 1: Khoi du
Mc khoi du cua da s t chc PM, khng c mc tiu no dt ra cho mc ny. Quy
trnh KTPM hon ton hn dn. KTPM duc thc hin mt cch khng d tnh v
phi th thc sau khi code duc vit xong; khng c k hoch, khng c quy trnh. Ni
chung o mc ny KTPM dng nghia vi tm li (debugging). Mt lp trnh vin vit
code v sau d tm li, sua cha, d li... cho dn khi tin rang mi th dt yu cu.
Kim tra vin khng duc hun luyn, ti nguyn cn thit cng khng dy du.
Do hu nhu chi c lp trnh vin lm mi th, chi ph kim tra hu nhu khng bit
truc hoc duc bao gm trong chi ph PTPM.
Mc truong thnh 2: D|nh nghia
KTPM l mt quy trnh ring bit, l mt chng cua ton b chu trnh PTPM v
hon ton phn bit vi cng vic d tm li (debug). Mc tiu cua kim tra nham
chng minh PM hoc h thng dp ng duc cc yu cu.
KTPM duc lp k hoch chi tit v duc theo di cht ch. Quy trnh kim tra c
th duc su dng lp li trong cc d n khc nhau. K hoch kim tra thung duc
hon thnh sau khi d xong giai don vit code. K thut v phuong php kim tra
co ban duc thit lp v dua vo su dng. Cc mc tiu cua mc 2 bao gm:
Pht trin cc mc tiu d li v kim tra phn mm
Quy trnh lp k hoch kim tra
Th ch ha cc k thut v phuong php kim tra co ban
Mc truong thnh 3: Tch hp
Mt nhm kim tra vin duc thnh lp
nhu mt b phn trong cng ty. Kim tra
vin duc hun luyn k v dc bit. KTPM khng cn l mt chng, m duc thc
hin xuyn sut ton b chu ky PTPM. Vic su dng cng c kim tra t dng bt
du duc tnh dn. K hoch kim tra duc thc hin sm hon nhiu so vi mc
TMM Mc 2:
Dinh nghia
CMM Mc 2:
C th lp lai
K thut v
phuong php
kim tra co ban
Quy trnh lp k
hoach kim tra
Muc tiu d li
v kim tra phn
mm
Quan l yu cu
Lp k hoach du n
Gim st v theo di
du n
Quan l thu phu
Dam bao cht luong
Quan l cu hnh
http://www.ebook.edu.vn 102
truong thnh 2. Quy trnh kim tra duc gim st, tin d v hiu qua kim tra duc
kim sot cht ch. Mc tiu cua mc 3 bao gm:
Thit lp b phn KTPM
Thit lp chuong trnh hun luyn k thut
Tch hp KTPM vo chu ky PTPM
Kim sot v gim st quy trnh kim tra
http://www.ebook.edu.vn 103
7.2.3. So snh mc 3 gia TMM v CMM:
TMM Mc 3:
Tch hop
CMM Mc 3:
Duocdinh nghia
Kim sot v gim st quy trnh kim
tra
Tch hop kim tra phn mm
Thit lp chuong trnh hun luyn k
thut
Thit lp t chuc kim tra phn mm
Tp trung quy trnh cp t chuc
Dinh nghia quy trnh cp t chuc
Chuong trnh hun luyn
Tch hop quan l phn mm
K thut pht trin san phm
Diu phi lin nhm
Xem xt ngang hng
Mc truong thnh 4: Quan l v do lung
Mt chuong trnh xem xt cp cng ty duoc thnh lp voi muc tiu loai bo sai st trong san
phm k ca san phm trung gian bng k thut xem xt ngang hng (peer review k thut
ph bin d pht hin li som trn cc san phm v san phm trung gian khng thi hnh
duoc nhu yu cu khch hng, ban thit k, m ngun, k hoach kim tra... duoc thuc hin
boi mt nhm nguoi cng lm vic).
Quy trnh kim tra l mt quy trnh dinh luong. Cc chi s lin quan dn KTPM duocdinh
nghia v thu thp nhm phn tch, khao st cht luong v hiu qua cua quy trnh kim tra.
Mt s v du v cc chi s ny nhu: ty l li trn mt don vi kch thuoc PM, s luong li
do kim tra vin tm thy trn tng s li cua PM (bao gm li do khch hng pht hin),
thoi gian trung bnh d sua cha mt li... Muc tiu cua muc 4 bao gm:
Thit lp chuong trnh xem xt xuyn sut cc du n trong cng ty
Thit lp chuong trnh do luong vic KTPM
Dnh gi cht luong PM
So snh mc 4 gia TMM v CMM
TMM Mc 4:
Quan l v do luong
CMM Mc 4:
Duoc quan l
Dnh gi cht luong phn
mm
Do luong vic kim tra phn
mm
Chuong trnh xem xt xuyn
du n
Quan l quy trnh theo
luong ha
Quan l cht luong phn
mm
Mc truong thnh 5: Ti uu ha, phng nga li v kim sot cht lung
D liu lin quan dn cc sai st d thu thp (o mc 4) duc phn tch d tm ra
nguyn nhn gc pht sinh cc sai st d. Can c vo cc nguyn nhn ny, hnh
dng phng nga duc thit lp v thi hnh. Cc php thng k duc dng d uc
http://www.ebook.edu.vn 104
lung tnh tin cy cua phn mm, cng nhu lm co so cho cc quyt d|nh lin quan
dn xc d|nh cc mc tiu v d tin cy cua phn mm. Chi ph v tnh hiu qua cua
KTPM duc gim st cht ch, cng c kim tra t dng duc su dng rng ri.
Mt khc, o mc 5, quy trnh KTPM phai duc cai tin mt cch lin tc, nham khc
phc nhng yu km cua quy trnh, cng nhu hung dn nhng mc tiu xa hon.
Mc tiu cua mc 5 bao gm:
- Su dung d liu thu thpd phng ngua sai st.
- Kim sot cht luong
- Ti uu ha quy trnh KTPM
So snh mc 5 gia TMM v CMM:
TMM Mc 5: Ti uu ha, phng
ngua li v kim sot cht luong
CMM Mc 5:
Ti uu ha
Phng ngua sai st.
Kim sot cht luong
Ti uu ha quy trnh kim tra
phn mm
Phng ngua sai st.
Quan l thay di k thut/cng
ngh
Quan l thay di quy trnh
Tm li
KTPM l mt linh vc rt quan trng trong hot dng san xut cng nhu gia cng
PM. Cc mc kim tra v loi kim tra rt phong ph, phc v mc tiu dam bao
cht lung ton din cho mt PM hoc mt h thng. Trong thc t, d trin khai tt
ca cc mc v loi kim tra d lit k cho mt d n PM di hoi s du tu rt ln ca
v thi gian ln cng sc. Cc t chc "cn non" trong quy trnh kim tra thung c
gng tit kim ti da du tu vo KTPM, thung l vic lp k hoch kim tra dn khi
hon thnh vic vit code, bo qua mt vi hoc hu ht cc chng kim tra. PM giao
cho khch hng trong diu kin nhu th thung ngho nn v cht lung. Kt qua
thung l s dt bin v chi ph bo ra cho vic sa cha li, hoc bao tr PM, tuy
nhin s mt mt ln nht l s tht vng cua khch hng hoc nhng ngui dng
cui.
http://www.ebook.edu.vn 105
Hnh 08: 5 mucd truong thnh trong TMM
7.3. Cc cng c kim thu (Test tools)
Ngy nay t dng ha duc ng dng o rt nhiu linh vc, mc dch thung rt da
dng v ty theo nhu cu dc th cua tng linh vc, tuy nhin dim chung nht vn
l giam nhn lc, thi gian v sai st. Ngnh CNTT m c th l pht trin phn
mm (PTPM) cng khng ngoi l. Nhu chng ta bit, d to ra san phm CNTT hay
PM c cht lung th hot dng kim thu phn mm (KTPM) dng vai tr rt quan
trng, trong khi d hot dng ny li tiu tn v chim ty trng kh ln cng sc v
thi gian trong mt d n. Do vy, nhu cu t dng ho qui trnh KTPM cng duc
dt ra.
Qua thc t cho thy vic p dng kim thu t dng (KTTD) hp l s mang li
thnh cng cho hot dng KTPM. KTTD gip giam bt cng sc thc hin, tang d
tin cy, giam s nhm chn v rn luyn k nang lp trnh cho kim thu vin (KTV).
Bi vit ny s gii thiu cc khi nim co ban cua KTTD, dng thi gii thiu mt
cng c KTTD kh mnh hin nay l QuickTest Professional 8.2 (QTP) cua Mercury.
7.3.1. TAI SAO PHAI DNG TEST TOOL
Test Tool (TT) trong linh vc PTPM l cng c gip thc hin vic kim thu PM mt
cch t dng. Tuy nhin khng phai mi vic kim thu du c th t dng ha, cu
hoi dt ra l trong diu kin hoc tnh hung no dng TT l thch hp? Vic dng
TT thung duc xem xt trong mt s tnh hung sau:
1. Khng du ti nguyn
Khi s lung tnh hung kim thu (test case) qu nhiu m cc KTV khng th hon
tt bang tay trong thi gian c th no d.
http://www.ebook.edu.vn 106
C th ly mt dn chng l khi thc hin kim thu chc nang cua mt website.
Website ny s duc kim thu vi 6 mi trung gm 3 trnh duyt v 2 h diu hnh
Tnh hung ny di hoi s ln kim thu tang ln v lp li 6 ln so vi vic kim thu
cho mt mi trung c th.
Kim thu hi qui
Trong qu trnh PTPM, nhm lp trnh thung dua ra nhiu phin ban PM lin tip
d kim thu. Thc t cho thy vic dua ra cc phin ban PM c th l hng ngy, mi
phin ban bao gm nhng tnh nang mi, hoc tnh nang c duc sua li hay nng
cp. Vic b sung hoc sua li code cho nhng tnh nang o phin ban mi c th lm
cho nhng tnh nang khc d kim thu tt chy sai mc d phn code cua n khng
h chinh sua. D khc phc diu ny, di vi tng phin ban, KTV khng chi kim
tra chc nang mi hoc duc sua, m phai kim tra li tt ca nhng tnh nang d
kim tra tt truc d. Diu ny kh kha thi v mt thi gian nu kim tra thu cng.
nh duyt: IE, Netscape, Opera
H diu hnh:
WinXP, Linux WinXP, IE WinXP, Netscape WinXP, Opera Linux, IE Linux, Netscape
Linux, Opera
2. Kim tra kha nang vn hnh PM trong mi trung dt bit
Dy l kim tra nham dnh gi xem vn hnh cua PM c thoa mn yu cu dt ra
hay khng. Thng qua d KTV c th xc d|nh duc cc yu t v phn cng, phn
mm anh huong dn kha nang vn hnh cua PM. C th lit k mt s tnh hung
kim thu tiu biu thuc loi ny nhu sau:
Do tc d trung bnh xu l mt yu cu cua web server.
Thit lp 1000 yu cu, dng thi gui dn web server, kim tra tnh hung 1000
ngui dng truy xut web cng lc.
Xc d|nh s yu cu ti da duc xu l boi web server hoc xc d|nh cu hnh my
thp nht m tc d xu l cua PM vn c th hot dng o mc cho php.
Vic kim tra thu cng cho nhng tnh hung trn l cc kh, thm ch "v phuong".
Cn luu l hot dng KTTD nham mc dch kim tra, pht hin nhng li cua PM
trong nhng trung hp don truc. Diu ny cng c nghia l n thung duc thc
hin sau khi d thit k xong cc tnh hung (test case). Tuy nhin, nhu d ni, khng
phai mi trung hp kim tra du c th hoc cn thit phai t dng ha, trong tt ca
test case th KTV phai dnh gi v chn ra nhng test case no ph hp hoc cn
thit d p dng KTTD da trn nhng tiu ch d d cp bn trn.
7.3.2. KHI QUT VE KTTD
Vic pht trin KTTD cng tun theo cc buc PTPM, chng ta phai xem vic pht
trin KTTD ging nhu pht trin mt d n. Bn dc c th tham khao bi vit v
kim tra phn mm trn TGVT A thng 12/2005 (ID: A0512_110). Hnh 1 cho chng
ta thy mi tuong quan gia KTTD v ton b chu trnh KTPM.
http://www.ebook.edu.vn 107
Hnh 1
Ging nhu PTPM, d thnh cng trong KTTD chng ta nn thuc hin cc buoc co ban sau:
Thu thp cc dc ta yu cu hoc test case; lua chon nhng phn cn thuc hin KTTD.
Phn tch v thit k m hnh pht trin KTTD.
Pht trin lnhdc ta (script) cho KTTD.
Kim tra v theo di li trong script cua KTTD.
Bang sau m ta r hon cc buoc thuc hin KTTD:
T Buc thc hin M ta
1
Tao test script
Giai aoan ny chng ta s dng test tool a ghi lai cc thao tc ln PM can kim tra v tu
ang sinh ra test script.
2
Chinh sua test script
Chinh sua a test script thuc hin kim tra theo ang yu cau at ra, cu th l lm theo test
case can thuc hin.
3
Chay test script a KTT
Gim st hoat ang kim tra PM cua test script.
4
nh gi kt qua
Kim tra kt qua thng bo sau khi thuc hin KTT. Sau a b sung, chinh sua nhng sai
st.
KTTD c mt s thun li v kh khan co ban khi p dng:
KTPM khng can can thip cua KTV.
Giam chi ph khi thuc hin kim tra s luong lon test case hoc test case lp lai nhiu
lan.
Gia lap tnh hung kh c th thuc hin bng tay.
Mat chi ph tao cc script a thuc hin KTT.
Tn chi ph dnh cho bao tr cc script.
i hoi KTV phai c k nng tao script KTT.
Khng p dung auoc trong vic tm li moi cua PM.
http://www.ebook.edu.vn 108
7.3.3. GII THIJU CNG CJ KTTD: QUICKTEST PROFESSIONAL
Trong linh vc KTTD hin c kh nhiu TT thuong mi ni ting, ph bin nhu
QuickTest Professional, WinRunner, Rational Robot, SilkTest, JTest,... Trong s d,
QuickTest Professional (QTP) phin ban 8.2 cua hng Mercury kh tt v mnh, bao
gm nhiu chc nang din hnh cua mt cng c kim tra t dng. Luu l QTP 8.2
d c mt ci tn mi hon l Mercury Functional Testing 8.2.
QTP l TT dng d kim tra chc nang (functional test) v cho php thc hin kim
tra hi qui (regression test) mt cch t dng. Dy cng l cng c p dng phuong
php Keyword-Driven, mt k thut scripting (lp trnh trong KTTD) hin di, cho
php KTV b sung test case bang cch to file m ta cho n m khng cn phai chinh
sua hay b sung bt c script no ca. N cng ph hp trong tnh hung chuyn giao
cng vic m ngui mi tip nhn chua c thi gian hoc khng hiu script vn c th
thc hin kim tra PM theo dng yu cu.
1. Loi phn mm h tr
QTP gip chng ta KTPM theo hung chc nang trn rt nhiu loi chuong trnh
phn mm khc nhau. Tuy nhin Mercury chi h tr san mt s loi chuong trnh
thng dng nhu:
ng dng Windows chun/Win32.
ng dng web theo chun HTML, XML chy trong trnh duyt Internet Explorer,
Netscape hoc AOL.
Visual Basic.
ActiveX.
QTP h tr Unicode (UTF-8, UTF-16).
Mt s loi chuong trnh khc di hoi chng ta phai ci dt thm thnh phn b sung
cua QTP th mi thc hin kim tra duc. Cc loi chuong trnh d l:
.NET
NET Framework 1.0, 1.1, 2.0 beta
Cc di tung chun cua .NET v cc di tung khc tha k t cc di tung
chun.
Java
Sun JDK 1.1 1.4.2
IBM JDK 1.2 1.4
Oracle
Oracle Applications 11.5.7, 11.5.8, 11.5.9
People Soft
PeopleSoft Enterprise 8.0 8.8
SAP
SAP GUI HMTL 4.6D, 6.10, 6.20
http://www.ebook.edu.vn 109
Dc dim
D su dng, bao tr, to test script nhanh. Cung cp d liu kim tra r rng v d
hiu.
Kim tra phin ban mi cua ng dng vi rt t s thay di. V d khi ng dng
thay di nt tn "Login" thnh "Dang nhp", th chi cn cp nht li Object
Repository (OR - duc giai thch o phn sau) d QTP nhn ra s thay di d m
khng cn thay di bt c test script no.
H tr lm vic theo nhm thng qua s chia se thu vin, thng nht quan l Object
Repository.
Thc t cho thy, QTP thc hin KTTD trn nhiu trnh duyt cng lc tt hon
nhng TT khc.
Vi chc nang Recovery Scenarios, QTP cho php xu l nhng s kin hoc li
khng th don truc c th lm script b| dng trong khi dang chy.
QTP c kha nang hiu test script cua Mercury Winrunner (mt cng c kim tra
khc cua Mercury).
Dc bit phin ban v.8.2 c mt s tnh nang mi ni bt:
Quan trj Object Repository
Phi hop gia cc KTV qua vic ang b ha d liu, kha nng trn, nhap/xuat ra file
XML
Thu vin hm mi
Chia se cc thu vin hm gia cc nhm KTV
Kim tra ti nguyn
Kim tra ti nguyn can thit truoc khi thuc thi lnh kim tra tu ang.
Nng cp kha nng ko tha
Ko tha cc buoc kim tra trong mi truong ngn ng tu nhin.
H tr XML cho bo co
Luu tr kt qua kim tra duoi dang XML, HTML, t a cho php ty bin bo co.
Trnh pht trin mi (IDE)
Mi truong soan thao moi, mm deo cho ty bin v su dung.
Trnh d li mi
Cho php KTV kim sot li khi vit test case.
Quan trj t kha
Quan l t kha trong qu trnh su dung
H tr da giao tip
Cho php nguoi dng mo v soan thao ang thoi nhiu hm thu vin v Object
Repository.
H tr Unicode
H tro Unicode voi cc ung dung aa ngn ng (multi-language).
H tr cc mi trung mi
http://www.ebook.edu.vn 110
Khu vc Chc
Menu bar Cu hnh thao tc vi QTP v script File toolbar H tr quan l script
Debug toolbar H tr kim tra li trong test script (debug) Testing toolbar H tr
qu trnh to test script hoc thc hin KTTD Action toolbar Xem mt Action (thu
tc, hm) hoc ton b chu trnh cua test script Test pane Son thao script o mt
trong 2 ch d Keyword View hoc Expert View Data Table Noi luu tr d liu cho
test script Active Screen Xem li giao din PM duc kim tra
3. Cc thnh phn quan trng trong QTP
a. Action:
Ging nhu thu tuc hay hm trong cc ngn ng lp trnh khc, Action ghi lai cc
buoc thuc hin KTTD v n c th duoc su dung lai nhiu ln. Trong mt test
script c th c nhiu Action.
b. DataTable:
Noi luu d liu phuc vu cho KTTD. Mt test script se c mt DataTable duoc dng
chung cho tt ca cc Action. Bn canh d mi Action cung c mt DataTable cho
ring mnh.
c. Object Repository (OR):
Cu trc theo dang cy, m ta cc di tuong trong PM duoc kim tra. Dyduoc
xem l cu ni d test script tuong tc voi PM duoc kim tra.
Khi ra lnh cho QTP ghi lai thao tc nguoi dng ln PM th trong OR se tu dng
pht sinh thnh phndai din cho nhng di tuong trn PM vuaduoc thao tc.
OR c th t chuc thnh 2 loai, mt loai dng chung trong nhiu test script, loai
http://www.ebook.edu.vn 111
khc dng theo tung Action.
D xem OR, chon menu Tools >Object Repository.
d. Checkpoint:
C th hiu l noi kim tra trong test script, khi chay n se thuc hin so snh kt
qua thuc t khi kim tra PM voi kt qua mong doi. Sau khi tin hnh so snh QTP
se tu dng ghi lai kt qua vo Test Results (noi luu kt qua khi chay test script).
4. Ngn ng su dng vit script
QTP su dng ngn ng VBScript d vit test script. Dy l ngn ng d hc; rt
ging ngn ng VBA. Ch d Expert View cua QTP l ch d son thao dnh cho
VBScript. Ngoi vic dng VBScript d tuong tc vi PM duc kim tra, QTP cn c
kha nang cu hnh h thng bang ngn ng Windows Script.
Chi tit v ngn ng VBScript, ngui dc c th d dng tm trong cc sch hin c
trn th| trung, thm ch ngay chnh trong phn help cua QTP.
6. Su Dng QTP
a. Yu cu cu hnh h thng:
b. Ban quyn su dung:
http://www.ebook.edu.vn 112
H diu hnh Windows 2000 SP3, SP4; Windows XP SP1, SP2 hoc Windows 2003
Server RAM 256 MB tro ln Dung lung dia Ti thiu 250MB cho ng dng, 120MB
trn dia h diu hnh. Sau khi ci QTP, dung lung cn thit thm trn dia ci h
diu hnh l 150 MB Trnh duyt IE 5.5 SP 2 tro ln Bn c th vo
http://www.mercury.com d dang k v tai v ban dng thu trong 14 ngy. Cc buc
ci dt theo s hung dn cua chuong trnh. Sau thi gian dng thu, d c th tip
tc su dng QTP chng ta cn phai mua ban quyn, gi tham khao t nh cung cp
nhu sau: cho mt my 9.000 USD; cho nhiu my dng cng lc 12.000 USD.
7.3.4. Kim thu don v| vi JUnit
D|nh nghia
JUnit l mt framework don gian dng cho vic to cc unit testing t dng, v
chy cc test c th lp di lp li. N chi l mt phn cua h kin trc XUnit cho vic
to cc Unit Testing. JUnit l mt chun trn thc t cho Unit Testing trong Java.
Dc dim
JUnit l cng c gip ta thu nghim, g ri chuong trnh Java. Vi JUnit, bn d
dng theo di din bin cua chuong trnh, nhanh chng dn dng hng lot php thu
(test case) d kim tra xem mi vic c xay ra dng nhu d d|nh hay khng. Thuo
ban du, JUnit duc xy dng boi Kent Beck v Erich Gamma. Sau d, gii lp trnh
vin Java bin JUnit thnh mt d n ngun mo. Ngy nay, JUnit tro thnh mt th
"cng c chun" m mi lp trnh vin Java du nn bit cch dng.
JUnit l mt m ngun mo, regression-testing framework nham gip cho cc
java developer vit nhng unit test d kim tra tng modul cua project khi pht trin
h thng. Framework gip d trong vic thit lp mt close-relationship gia testing
v development. Du tin bn vit ra cc don code cua bn s lm vic. Sau d bn
vit code v dng JUnit test runner d kim tra xem n b| chch hung so vi d
d|nh ban du nhu th no.Intergration testing xc nhn rang nhng h thng con
khc nhau d s lm vic tt khi kt hp chng vi nhau. Acceptance testing don gian
xc nhn chnh xc rang mt ng dng c lm vic dng nhu khch hng mong di
khng. Unit test duc gi nhu vy boi v h test tng don code don le mt, n c th
chi l mt class don trong java.
Khc vi cc Unit Test dc th, o d bn c khuynh hung rang s vit test sau
khi hon thnh module, JUnit khuyn khch bn kt hp coding v testing trong sut
qun trnh pht trin. K t dy, mc dch chnh l kim tra module o mc nho l
kim tra cc chc nang, v hon l kim tra cc khi co ban cua h thng ti mt thi
dim no d.D n ny hung dn vic pht trin mt b test ton din m bn c th
dng bt c khi no sau khi thay di mt don code v tin tuong rang san phm hoc
don code sua di d khng ph v nhng h thng con khch m bn k duc bit.
http://www.ebook.edu.vn 113
Mt s dcdim quan trong cua J unit:
Xc nhn (assert) vic kim tra kt qua duoc mong doi.
Cc Test Suite cho php chng ta d dng t chuc v chay cc test.
H tro giao dind hoa v giao din dng lnh.
Cc test case cua JUnit l cc lp cua Java, cc lp ny bao gm mt hay nhiu
cc phuong thc unit testing, v nhng test ny li duc nhm thnh cc Test Suite.
Mi phuong thc test trong JUnit phai duc thc thi nhanh chng. Tc d l
diu ti quan trng v cng nhiu test duc vit v tch hp vo bn trong qu trnh
xy dng phn mm, cn phai tn nhiu thi gian hon cho vic chy ton b Test
Suite. Cc lp trnh vin khng mun b| ngt qung trong mt khong thi gian di
trong khi cc test chy, v th cc test m chy cng lu th s c nhiu kha nang l
cc lp trnh vin s bo qua buc cng khng km phn quan trng ny.
Cc test trong JUnit c th l cc test duc chp nhn hay tht bi, cc test ny
duc thit k d khi chy m khng cn c s can thip cua con ngui. T nhng
thit k nhu th, bn c th thm cc b test vo qu trnh tch hp v xy dng phn
mm mt cch lin tc v d cho cc test chy mt cch t dng.
Mt s phuong thc trong Junit
Cc phuong thc assertXXX()
Cc phuong thc assertXXX() duc dng d kim tra cc diu kin khc nhau.
junit.framework.TestCase, lp cha cho tt ca cc test case, tha k t lp
junit.framework.Assert. Lp ny d|nh nghia kh nhiu cc phuong thc
assertXXX(). Cc phuong thc test hot dng bang cch gi nhng phuong thc ny.
Mt s m ta cc phuong thc assertXXX() khc nhau c trong lp junit.framework.
assert:assertEquals(): So snh 2 gi tri a kim tra bng nhau. Test s auoc
chap nhan nu cc gi tri bng nhau
assertFalse(): nh gi biu thuc luan l. Test s auoc chap nhan nu biu
thuc saiassertNotNull(): So snh tham chiu cua mt ai tuong voi null. Test s auoc chap
nhan nu tham chiu ai tuong khc null
assertNotSame(): So snh aia chi vng nho cua 2 tham chiu ai tuong
bng cch su dung ton tu ==. Test s auoc chap nhan nu ca 2 au tham chiu an cc
ai tuong khc nhau
assertNull(): So snh tham chiu cua mt ai tuong voi gi tri null. Test s
auoc chap nhan nu tham chiu l null
assertSame(): So snh aia chi vng nho cua 2 tham chiu ai tuong bng
cch su dung ton tu ==. Test s auoc chap nhan nu ca 2 au tham chiu an cng mt
ai tuong
assertTrue(): nh gi mt biu thuc luan l. Test s auoc chap nhan nu
biu thuc ang
fail(): Phuong thuc ny lm cho test hin hnh that bai, phuong thuc ny
thuong auoc su dung khi xu l cc bit l
Mc d bn c th chi cn su dng phuong thc assertTrue() cho gn nhu hu
ht cc test, tuy nhin th vic su dng mt trong cc phuong thc assertXXX() c th
s lm cho cc test cua bn d hiu hon v cung cp cc thng dip tht bi r rng
hon.
Tt ca cc phuong thc trn du nhn vo mt String khng bt buc lm
tham s du tin. Khi duc xc d|nh, tham s ny cung cp mt thng dip m ta test
tht bi.
http://www.ebook.edu.vn 114
V du:
assertEquals(employeeA, employeeB);
assertEquals(Employees should be equal after the clone() operation., employeeA,
employeeB).
.Set Up v Tear Down
Hai phuong thc setUp() v tearDown() l mt phn cua lp
junit.framework.TestCase Bang cch su dng cc phuong thc setUp v tearDown.
Khi su dng 2 phuong thc setUp() v tearDown() s gip chng ta trnh duc vic
trng m khi nhiu test cng chia se nhau o phn khoi to v dn dp cc bin.
JUnit tun thu theo mt dy c th t cc s kin khi chy cc test. Du tin,
n to ra mt th hin mi cua test case ng vi mi phuong thc test. T d, nu
bn c 5 phuong thc test th JUnit s to ra 5 th hin cua test case. V l do d, cc
bin th hin khng th duc su dng d chia se trng thi gia cc phuong thc test.
Sau khi to xong tt ca cc di tung test case, JUnit tun theo cc buc sau cho mi
phuong thc test:
Goi phuong thuc setUp() cua test case
Goi phuong thuc test
Goi phuong thuc tearDown() cua test case
Qu trnh ny duoc lp lai di voi mi phuong thuc test trong test case.
Sau dy chng ta se xem xt 1 v du tnh cng, tru v nhn hai s nguyn:
CODE
public class CongTruNhan {
int add (int x, int y){
return (x + y );
}
int multiply (int x, int y){
return (x*y);
}
int subtract (int x, int y){
return (x-y);
}
}
M Code TestCase cua lop trn c su dung phuong thuc setUp() v tearDown()
http://www.ebook.edu.vn 115
CODE
import junit.framework.*;
public class Test CongTruNhan extends TestCase {
public Test CongTruNhan (String name) {
super(name);
}
// Initialize common test data
int x;
int y;
protected void setUp() {
System.out.println("setUp - Intialize common test data");
x = 7;
y = 5;
}
protected void tearDown(){
System.out.println("tearDown - Clean up");
}
/**
* Test of add method, of class CongTruNhan.
*/
public void testAdd() {
System.out.println("add");
CongTruNhan instance = new CongTruNhan ();
int expResult = 12;
int result = instance.add(x, y);
assertEquals(expResult, result);
}
/**
* Test of multiply method, of class CongTruNhan.
*/
public void testMultiply() {
System.out.println("multiply");
CongTruNhan instance = new CongTruNhan ();
int expResult = 35;
int result = instance.multiply(x, y);
assertEquals(expResult, result);
}
/**
* Test of subtract method, of class CongTruNhan.
http://www.ebook.edu.vn 116
*/
public void testSubtract() {
System.out.println("subtract");
CongTruNhan instance = new CongTruNhan();
int expResult = 2;
int result = instance.subtract(x, y);
assertEquals(expResult, result);
}
public static void main(String[] args){
System.out.println("Running the test using junit.textui.TestRunner.run() method...");
junit.textui.TestRunner.run(TestCongTruNhan.class);
}
}
Thng thung chng c th bo qua phuong thc tearDown() v mi unit
test ring khng phai l nhng tin trnh chy tn nhiu thi gian, v cc di tung
duc thu dn khi JVM thot. tearDown() c th duc su dng khi test cua bn thc
hin nhng thao tc nhu mo kt ni dn co so d liu hay su dng cc loi ti nguyn
khc cua h thng v bn cn phai dn dp ngay lp tc. Nu chung chy mt b bao
gm mt s lung ln cc unit test, th khi bn tro tham chiu cua cc di tung dn
null bn trong thn phuong thc tearDown() s gip cho b dn rc ly li b nh
khi cc test khc chy
Di khi bn mun chy vi don m khoi to chi mt ln, sau d chy cc
phuong thc test, v bn chi mun chy cc don m dn dp chi sau khi tt ca test
kt thc. O phn trn, JUnit gi phuong thc setUp() truc mi test v gi
tearDown() sau khi mi test kt thc, v th d lm duc diu nhu trn, chng ta s su
dng lp junit.extension.TestSetup d dt duc yu cu trn.
V d sau s minh ha vic su dng lp trn
CODE
import junit.extensions.TestSetup;
import junit.framework.*;
public class TestPerson extends TestCase {
public TestPerson(String name)
{ super(name); }
public void testGetFullName() {
Person p = new Person("Aidan", "Burke");
assertEquals("Aidan Burke", p.getFullName());
}
public void testNullsInName() {
Person p = new Person(null, "Burke");
http://www.ebook.edu.vn 117
assertEquals("? Burke", p.getFullName());
p = new Person("Tanner", null);
assertEquals("Tanner ?", p.getFullName());
}
public static Test suite() {
TestSetup setup = new TestSetup(new TestSuite(TestPerson.class)) {
protected void setUp() throws Exception
{
//Thuc hin cc aoan m khoi tao mt lan o ay
}
protected void tearDown() throws Exception {
//Thuc hin cc aoan m don dep o ay
}
};
return setup;
}
}
TestSetup l mt lp tha k t lp junit.extension.TestDecorator, Lp
TestDecorator l lp co so cho vic d|nh nghia cc test bin th. L do chnh d mo
rng TestDecorator l d c duc kha nang thc thi don m truc v sau khi mt
test chy. Cc phuong thc setUp() v tearDown() cua lp TestSetup duc gi truc
v sau khi bt ky Test no duc truyn vo constructor,
Trong v d trn chng ta d truyn mt tham s c kiu TestSuite vo
constructor cua lp TestSetup
TestSetup setup = new TestSetup(new TestSuite(TestPerson.class))
Diu ny c nghia l 2 phuong thc setUp() duc gi chi mt ln truc ton b
b test v tearDown() duc gi chi mt ln sau khi cc test trong b test kt thc.
Ch : cc phuong thuc setUp() v tearDown() bn trong lop TestPerson vnduoc
thuc thi truoc v sau mi phuong thuc test bn trong lop TestPerson.
To test class v to b test
Test cc chc nang cua mt lp
Bn mun vit cc unit test vi JUnit. Vic du tin bn phai to mt lp con
tha k t lp junit.framework.TestCase. Mi unit test duc di din boi mt
phuong thc testXXX() bn trong lp con cua lp TestCase
Ta c mt lop Person nhu sau:
CODE
public class Person {
private String firstName;
private String lastName;
public Person(String firstName, String lastName) {
if (firstName == null && lastName == null) {
throw new IllegalArgumentException("Both names cannot be null");
}
this.firstName = firstName;
http://www.ebook.edu.vn 118
this.lastName = lastName;
}
public String getFullName() {
String first = (this.firstName != null) ? this.firstName : "?";
String last = (this.lastName != null) ? this.lastName : "?";
return first + last;
}
public String getFirstName() {
return this.firstName;
}
public String getLastName() {
return this.lastName;
}
}
Sau d ta se vit mt test case don giand test mt s phuong thuc cua lop trn:
CODE
import junit.framework.TestCase;
public class TestPerson extends TestCase
{
public TestPerson(String name) {
super(name);
}
/**
*
Xac nhan rang name duoc the hien dung dinh dang
*/
public void testGetFullName() {
Person p = new Person("Aidan", "Burke");
assertEquals("Aidan Burke", p.getFullName());
}
/**
* Xac nhan rang nulls da duoc xu ly chinh xac
*/
public void testNullsInName() {
Person p = new Person(null, "Burke");
assertEquals("? Burke", p.getFullName());
p = new Person("Tanner", null);
assertEquals("Tanner ?", p.getFullName());
}
}
Luu : mi unit test l mt phuong thc public v khng c tham s duc bt
du bang tip du ng test. Nu bn khng tun theo quy tc dt tn ny th JUnit s
khng xc d|nh duc cc phuong thc test mt cc t dng.
http://www.ebook.edu.vn 119
D bin d|ch TestPerson, chng ta phai khai bo gi thu vin junit trong bin
dung mi trung classpath
set classpath=%classpath%;.;junit.jar
javac TestPerson
T chc cc test vo cc test suite
Thng thung JUnit t dng to ra cc Test Suite ng vi mi Test Case. Tuy
nhin bn mun t to cc Test Suite cua ring mnh bang cch t chc cc Test vo
Test Suite. JUnit cung cp lp junit.framework.TestSuite h tr vic to cc Test
Suite
Khi bn su dng giao din text hay graphic, JUnit s tm phuong thc sau
trong test case cua bn trn, JUnit s su dng k thut reflection d t dng xc d|nh
tt ca cc phuong
public static Test suite() { }
Nu khng thy phuong thc thc testXXX() trong test case cua bn, ri
thm chng vo mt test suite. Sau d n s chy tt ca cc test trong suite ny. Bn
c th to ra ban sao hnh vi cua phuong thc suite() mc d|nh nhu sau:
public class TestGame extends TestCase{

public static Test suite() {


return new TestSuite(TestGame.class);
}
}
Bang cch truyn di tung TestGame.class vo construtor TestSuite, bn
dang thng bo cho JUnit bit d xc d|nh tt ca cc phuong thc testXXX() trong
lp d v thm chng vo suite. Don m trn khng lm khc g so vi vic JUnit t
dng lm, tuy nhin bn c th thm cc test c nhn d chi chy cc test nht d|nh
no d hay l diu khin th t thc thi
CODE
import junit.framework.*;
public class TestGame extends TestCase {
private Game game;
private Ship fighter;
public TestGame(String name) {
super(name);
}

public static Test suite() {


TestSuite suite = new TestSuite();
suite.addTest(new TestGame("testCreateFighter"));
suite.addTest(new TestGame("testSameFighters"));
return suite;
}
}
http://www.ebook.edu.vn 120
Ban c th kt hop nhiu suite vo cc suite khc. Ban c ra o dy d su dung mu
Composite. V du:
public static Test suite() {
TestSuite suite = new TestSuite(TestGame.class);
suite.addTest(new TestSuite(TestPerson.class));
return suite;
}
By gi khi bn chy test case ny, bn s chy tt ca cc test bn trong lp
TestGame v lp TestPeson
Chy cc Test lp di lp li
Trong mt vi trung hp, chng ta mun chy mt test no d lp di lp li
nhiu ln d do hiu sut hay phn tch cc vn d trc trc. JUnit cung cp cho
chng ta lp junit.extension.RepeatedTest d lm duc diu ny. Lp RepeatedTest
gip chng ta thc hin diu ny mt cch d dng
CODE
public static Test suite() {
//Chay ton b test suite 10 ln
return new RepeatedTest(new TestSuite(TestGame.class), 10);
}
Tham s du tin cua RepeatedTest l mt Test cn chy, tham s th 2 l s
ln lp li. V TestSuite ci dt interface Test nn chng ta c th lp li ton b test
nhu trn. Tip theo l v d m ta cch xy dng mt test suite m trong d cc test
khc nhau duc lp di lp li khc nhau:
CODE
public static Test suite() {
TestSuite suite = new TestSuite();
//Lp lai testCreateFighter 100 lan
suite.addTest(new RepeatedTest(new TestGame("testCreateFighter"), 100));
//Chay testSameFighters 1 lan
suite.addTest(new TestGame("testSameFighters"));
//Lp lai testGameInitialState 20 lan
suite.addTest(new RepeatedTest(new TestGame("testGameInitialState"), 20);
return suite;
}
Test cc Exception
Phn tip dn chng ta s xem xt dn mt phn test cng quan trng khng
km trong lp trnh l test cc exception. Chng ta su dng cp t kha try/catch d
bt cc exception nhu mong di, chng ta s gi phuong thc fail() khi exception
chng ta mong di khng xay ra. Trong v d sau, constructor cua lp Person nn
tung ra IllegalArgumentException khi ca 2 tham s cua n du mang gi tr| null. Test
s tht bi nu n khng tung ra exception.
CODE
public void testPassNullsToConstructor() {
try {
Person p =new Person(null, null);
http://www.ebook.edu.vn 121
fail("Expected IllegalArgumentException because both args are null");
}
catch (IllegalArgumentException expected) {
//Bo qua phn ny khng xu l v c nghia l test duoc chp nhn
}
}
Ni chung bn chi nn su dng k thut ny khi bn mong di mt exception
xay ra. Di vi cc diu kin li khc bn nn d exception chuyn sang cho JUnit.
Khi d JUnit s bt ly v tung trnh 1 li test.
Thc hin kim thu
So d kim thu
So d sau biu din cch test chuong trnh:
(1) J unit: Tool dng d test. Du n ny su dung b tool J unit 4.0
(2) Chuong trnh Test
(3) Chuong trnh thu nghim:Vit mt TestCase d test chuong trnh trn.
(4) Kt qua: Sau khi kim thu chuong trnh xong th se dua ra kt qua l chuong trnh
dng hay sai.
II.3.2.Lp k hoch kim thu
Buoc 1: Du tin, ta phai tao ra mt du n.
Buoc 2: Add J unit 4.0 vo thu muc chuaduong dn cua chuong trnh.
Buoc 3: Mo chuong trnh Test v tao TestCase cho chuong trnh.
Buoc 4: Chay chuong trnh
II.3.3. Qu trnh kim thu
Buc 1: Khoi tao du n:
Chay Eclipse, chonduong dnd chua du n, nn chonduong dn d nho d sau ny
Add J unit 4.0 vo duong dn cua chuong trnh
(2)
Chuong
trnh Test
(1)
J unit
(3)
Chuong trnh
thu nghim
(4)
Kt qua
http://www.ebook.edu.vn 122

Tip theo, ta to mt d n d luu chuong trnh test v chuong trnh kim thu.T
menu chuong trnh, chn File New Java Project.
O cua s hin ra, bn dt tn cho d n cua mnh.
http://www.ebook.edu.vn 123
Tip tc, bn nhn nt Next.Chuong trnh s hin ra nhu bn dui:
Dn dy, ta phai add tool Junit vo chuong trnh d tin hnh kim thu.
http://www.ebook.edu.vn 124
Buc 2: Add J unit 4.0 vo thu muc chuaduong dn cua chuong trnh
Truc tin, chng ta phai copy junit 4.0 vo thu mc cua chuong trnh
Chon the Libraries, chonAdd External Jars d add junit 4.0 v chuong trnh
Sau khi add junit 4.0 th chuong trnh c hnh nhu bn dui.Nhn nt Finish d
kt thc giai don thm junit vo chuong trnh.
http://www.ebook.edu.vn 125
Buc 3: Mo chuong trnh Test v to TestCase cho chuong trnh.
Truoc tin, ban phai copy chuong trnh test vo duong dn cua du n.
T menu chuong trnh, chn File Open File d mo chuong trnh Test.
http://www.ebook.edu.vn 126
Chng ta tip tc to TestCase cho chuong trnh test. T menu chuong trnh,
chn File New JUnit Test Case. O cua s hin ra, chuong trnh t to ra tn test
case, vi tn c phn du trng vi tn cua lp cn test v phn cui thm dui Test.
Trong cua s ny, bn check vo hai phuong thc setUp() v tearDown().
Sau khi thc hin xong th ta nhn nt Next d chn phuong thc cho chuong trnh.
Di vi chuong trnh ny, chng ta check vo cc phuong thc duc minh ha bang
hnh dui:
http://www.ebook.edu.vn 127
Nhn nt Finish, chuong trnh s c hnh nhu bn dui. Tip theo chng ta s
vit TestCase da trn nhng phuong thc h tr cua Junit d test chuong trnh.
Buc 4: Chay chuong trnh
Sau khi d to v vit TestCase cho chuong trnh Test, chng ta s chy chuong
trnh kim thu. T menu chuong trnh, nhn nt hoc nhn F5.Nu chuong
trnh test khng c li th chuong trnh s th hin mt mu xanh, th hin s thu
thnh cng.
http://www.ebook.edu.vn 128
Nu chuong trnh Test b| li th Junit s hin th| mt mu do, bo hiu chuong trnh
b| li. Dng thi, chuong trnh cn chi r phuong thc hay lp no b| li.
http://www.ebook.edu.vn 129
CHUONG 8: UC LUONG GI THNH PHAN MEM
8.1. Gii thiu
Trong chuong truc, ti d gii thiu v qu trnh lp k hoch cho d n, nhng
cng vic cua d n duc chia thnh cc hot dng ring bit. S thao lun sm v
vic lp k hoch cho d n tp trung vo vic miu ta cc hot dng, s ph thuc v
s phn phi cua con ngui d thc hin cc nhim v. Trong chuong ny, ti mun
ni dn vn d kt hp uc lung cua s c gng v thi gian vi cc hot dng cua
d n. S uc lung bao gm tra li cc cu hoi sau:
1. Bao nhiu c gng duoc yu cud hon thnh mi hoat dng.
2. Bao nhiu thoi gian cn thit d hon thnh mi hoat dng.
3. Tng gi tri cua mi hoat dng.
Uc lung chi ph d n v lp k hoch cho d n thung duc tin hnh cng
nhau. Chi ph cua s pht trin l chi ph chnh trong cc th bao gm, do d s tnh
ton duc su dng l trong ca uc don chi ph v uc don l|ch trnh. Tuy nhin,
bn c th phai lm mt s s uc lung chi ph truc khi l|ch trnh duc di vo c
th. S uc lung khoi du c th su dng l ngn sch cho d n hoc tp gi tr|
phn mn cho khch hng.
C ba tham s trong su tnh ton tng chi ph cua du n pht trin phn mn:
- Chi ph phn cung v phn mn k ca bao dung.
- Chi ph di lai v do tao.
- Chi ph cho k su (Chi ph chi tra chi k su phn mn).
Hu ht cc d n, chi ph chu yu l chi ph cho k su. My tnh m n du mnh cho
pht trin phn mn l phai tuong di re. Mc d chi ph cho s di li c th cn thit
khi d n duc pht trin o cc d|a dim khc nhau, chi ph di li thung chi l mt
phn nho so vi chi ph cho k su. Hon na, su dng cc h thng giao tip din tu
nhu thu din tu, cc trang web v hi ngh| trc tuyn c th lm giam dng k yu
cu cho s di li. Hi thao din tu cng c nghia l thi gian di li giam v c th c
nang xut cao hon cho vic pht trin phn mn. Trong mt d n, noi ti d lm
vic, to ra tt ca cc hi thao trc tuyn thay v cc hi thao gp mt trc tip, d
giam duc chi ph di li v thi gian dn 50%.
Chi ph cho k su khng hn l luong cua cc k su phn mn m h c trong d n.
T chc tnh ton chi ph cho k su trong nhm da trn tt ca chi ph m h c duc
d thc hin d n v chia n cho s lung nang sut nhn vin. Do d, cc chi ph
sau dy l tt ca cc thnh phn cua chi ph cho k su.
1. Chi ph cho diu kin nhit d, nh sang cua cng so.
2. Chi ph h tro nhn vin nhu nhn vin k ton, nh quan tri, nguoi quan l h
thng, nguoi don dep, v cc k thut vin.
3. Chi ph kt ni mang v giao tip
4. Chi ph cho nhng trung tm taodiu kin tt cho lm vic nhu thu vin hay
noi giai tr.
http://www.ebook.edu.vn 130
5. Chi ph cho su bao v chung v loi ch cho nguoi lm vic nhu tin tro cp v
bao him suc khoe.
Chi ph chnh thung t nht bang hai ln luong cua k su phn mn, ph thuc v
kch thuc t chc v s kt hp cua n. V th, nu mt cng ty tra chi k su phn
mn 90.000 bang/Nam th tng chi ph t nht l 180.000 Bang/Nam hay 15.000
bang/Thng.
Khi mt d n dang duc thc hin, ngui quan l d n nn thung xuyn v du
dn cp nht uc lung chi ph v l|ch trnh. Diu ny gip cho vic lp k hoch cho
tin trnh v vic su dng hiu qua ti nguyn. Nu thc s c s tiu dng vut dng
k so vi d tnh, th ngui quan l d n phai c mt s hnh dng. N c th bao
gm vic tang ngn sch cho d n hoc sua di li cng vic cho n tro nn dng
dn.
D ton phn mn nn duc thc hin khch quan vi mc dch d don chnh xc
chi ph pht trin phn mn. Nu chi ph d n duc tnh ton nhu gi khch hng
phai tra cho d n, th vic quyt d|nh d|nh gi l vic dt gi cho khch hng. Gi ca
don gian l chi ph cng vi li nhun. Tuy nhin, mi quan h gia chi ph d n v
gi chi khch hng thung khng don gian.
Vic d|nh gi cho phn mn phai bao gm ca t chc, kinh t, chnh tr|, thuong mi,
m n duc th hin trong hnh 26.1. Boi vy, n c th khng chi l s quan h don
gian gia gi ca khch hng phai tra cho d n v chi ph pht trin d n. Boi v bao
gm nhiu l do trong t chc, vic d|nh gi d n nn c s gp mt cua nhng nh
quan l kinh nghim (d c nhng quyt d|nh chin luc).
V d, mt cng ty phn mn nho phc v du thu 10 k su hi du nam, nhung chi
c nhng hp dng trong linh vc m n yu cu 5 thnh vin trong vic mo rng
nhn vin. Tuy nhin, d l s tra gi cho nhng hp dng rt ln vi cng ty du ln
m n yu cu 30 ngui lm vic c gng trong 2 nam. D n s khng th bt du
sau 12 thng, v nhu th diu d s thay di ti chnh cua cng ty nho. Cng ty cung
cp du c co hi tra gi cho d n m n yu cu 6 ngui v phai hon thnh trong
10 thng. Chi ph ( bao gm tt ca trong d n) duc uc tnh l 1.2 triu D. Tuy
nhin, d tang kha nang cnh tranh, cng ty cung cp du d|nh gi cho khch hng l
0.8 triu D. Diu d c nghia l, mc d mt tin trong hp dng ny, nhung n d
duc nhng chuyn vin hu ch cho nhng d n trong tuong lai.
Hnh 8.1 Nhn t anh huong gi phn mn
Nhn t Din ta
Co hi trong thi
truong
Mt t chuc pht trin c th dt mt muc gi thp boi v n mong
mun chuyn toi mt giai doan moi trong thi truong phn mn.
Chp nhn mt muc loi thp trong mt du n c th cho t chuc co
hi c loi nhun lon hon trong tuong lai, v vn kinh nghim thu
duoc c th se rt hu ch trong tuong lai.
Su khng chc
chn cua vicuoc
luong chi ph
Nu mt t chuc khng dm chc v su uoc tnh chi ph, diud c
th lm gia tng gi thnh boi mt s su c bt ngo.
Nhng yu cu d
thay di.
Nu cc yu cu c kha nng thay di, mt t chuc c th giam gi
thnhd c duoc hopdng. Sau d, lai tng gi thnh d thay di
http://www.ebook.edu.vn 131
cc yu cu.
Tnh trang ti
chnh
Nh pht trin trong su kh khn ti chnh c th giam gi thnh d
dat duoc hopdng. Diud tt hond tao ra cc loi nhun nho hon
l bnh thuong hoac se khng th tip tuc kinh doanh.
8.2. Nang sut phn mn
Ban c th tnh ton nng sut trong h thng bng cch dm s luong cc don vi
duoc san xut v chia chng cho luong thoi gian yu cu lm ra chng. Tuy nhin, voi bt
ky vnd phn mn no, se c nhiu giai php khc nhau, mi trong s chng lai c nhng
tnh cht khc nhau. Mt giai php c th thuc hin mt cch hiu qua trong khi nhng ci
khc lai c th d doc v d bao tr. Khi nhng giai php vi nhng thuc tnh khc nhau
duocdua ra, vic so snh chng thuong khng c tht nhiu nghia.
Tuy nhin, l mt nh quan l du n, ban c th phai di mt voi vn d v uoc
luong nng xut cua k su phn mn. Ban c th cn su uoc luong ny d gip dua ra chi
ph cho du n v lp lich trnh, d quyt dinh su du tu hoc d dnh gi pht trin qu
trnh v k thut thm hiu qua.
Uoc luong nng xut thuong c co so dua trn vic tnh ton cc thuc tnh cua
phn mn v chia chng cho tng su c gng yu cu cho vic pht trin. C hai loai thang
doduoc su dung:
1. Thuoc ao lin quan an kch thuoc D l su lin quan dn kch thuoc mt
s du ra tu mt s hoat dng. Ci chung nht trong thuocdo ny l cc
duong phn chia m ngun. Cc thuocdo khc c th su dung s luong
cua phn chia lnh m muc tiu hoac s luong cua cc trang cua ti liu
h thng.
2. Thuoc ao lin quan an hm D l su lin quan dn tng th cc chuc
nng trong su phn chia phn mn. Nng xut gioi han boi s luong chuc
nng hu dungduoc su dung trong thoi gian handinh. Dim hm v
dim muc tiu l diu quan trong nht trong loai thuocdo ny.
Cc duong m ngun / lp trnh vin-thng ( Lines of source code per programmer-
month LOC/pm) duoc su dung rt nhiu trong vic do nng sut phn mn. Ban c th
tnh ton LOC/pm bng cch dm tng s duong m ngun m n duoc phn chia, sau d
chia n cho tng thoi gian lm vic cua lp trnh vin trong mt thng yu cu d hon
thnh du n. Thoi gian ny v th bao gm tt ca cc hoat dng yu cu (Nhu cu, thit k,
vit m, kim tra v dn chung tu liu) cn thit trong vic pht trin phn mn.
Diud tin gndn su pht trindu tin khi hu ht cc chuong trnh duoc lp
bng FORTRAN, hop ng hoac COBOL. Sau d, cc chuong trnh nhu mt loai the, voi
mi cu lnh trn mt the. S luong cua m d dng dmduoc: N tuong ung voi s luong
cua cc the trong chuong trnh. Tuy nhin, cc chuong trnh trong cc ngn ng nhu J AVA
hoac C++bao gm cc khai bo, cc cu lnh v cc ch thch. N c th cung bao gm
cc macro lnh m n mo rng thm vi dng trong doan m. N cung c th c nhiu hon
mt cu lnh trn mt dng. V th, quan h don gian gia cc lnh chuong trnh v cc
dngo trong danh sch.
http://www.ebook.edu.vn 132
So snh nng sut thng qua ngn ng lp trnh c th cung mc cc sai lm do
cam gic v nng sut chuong trnh. Cc ngn ng lp trnh cng cao th cng kh xc dinh
nng sut. Diu khng bnh thuong ny nay sinh boi v tt ca cc hoat dng pht trin phn
mnduduoc tnh ton dn trong khi tnh ton thoi gian pht trin, nhung thang do LOC
chi p dung cho qu trnh lp trnh. V th, nu mt ngn ng yu cu nhiu dng hon cc
ci khc d b sung cng mt chuc nng, vicuoc luong nng sut se tro nn bt thuong.
V du, xem xt mt h thng ghi thoi gian thuc n c th c m trong 5000 dng
trong hop ng hoc 1500 dng trong C. Thoi gian pht trin cho cc mt khc nhau duoc
din ta trong hnh 8.2. Nguoi lp trnh hop ng c nng sut l 714 dng/thng v nguoi
lp trnh ngn ng bc cao th t hon mt nua l 300 dng/thng. Vo lc ny chi ph pht
trin cho pht trin h thng trong C l thp hon v n duoc pht biu som.
Hnh 8.2 Thoi gian pht trin h thng
Phn tch Thit k Vit m Kim tra Bo co
Hop ng
Ngn ng cp cao
3 tun
3 tun
5 tun
4 tun
8 tun
4 tun
10 tun
6 tun
2 tun
2 tun
Kch thuoc Thoi gian lm Nng sut
Hop ng
Ngn ng cp cao
5000 dng
1500 dng
28 tun
20 tun
714 dng/thng
300 dng/thng
Cch khc su dung kch c m nhu vicuoc luong thuc tnh san phm l su dung
cc tnh ton chuc nng cua m. Diu ny trnh cc bt thuong nu trn, nhu cc chuc
nng l dc lp voi ngn ng b sung. MacDonell (MacDonell, 1994) m ta ngn gon v
so snh vi tnh ton v cc hm co ban. Hiu bit tt nht v tnh ton ny l vicdm
dim-hm. N duoc trnh by boi Albrecht (Albrecht, 1979) v duoc sua lai boi Albrecht
v Gaffney (Albrecht v Gaffney, 1983). Garmus v Herron (Garmus v Herron, 2000) m
ta thuc tin su dungdim-hm trong cc du n phn mn.
Nng sut thng qua dim-hm l su b sung cua nguoi lm vic trn thng. Dim
hm khng chi l dcdim m l su tnh ton mt vi su dodac v uoc luong. Ban tnh
tng s dim-hm trong chuong trnh bng cch do hoacuoc luong cc dcdim sau cua
chuong trnh:
- Giao tip vo v ra
- Su dung tuong tc
- Giao din giao tip
- Vn ban su dung trong h thng
Hin nhin, mt s du vo v du ra, cc tuong tc, l nhng thu phuc tap v tn
nhiu thoi gian hon d b sung. Thuoc do dim-hm dua vo bo co bng cch nhn
dim-hm khoi tao voi h s-phuc tap-tc dung. Ban nn uocdinh mi trong cc dc dim
cho su phuc tap v sau d gn h s tc dung tu 3 (cho giao tipdu vo don gian) toi 15
cho cc vn ban ni b phuc tap. C th lua chon gi tri tc dungd sut boi Albrecht hoc
cc gi tri co so trong kinh nghimd su dung.
http://www.ebook.edu.vn 133
Saud ban c th tnh ton ci goi l dmdim hm khng thch ung (unadjusted
function-point count-UFC) bng cch nhn mi gi tri khoi tao voi uoc luong tc dung v
cng tng tt ca cc gi tri.
UFC =L(s luong cua cc thnh phn c kiu nht dinh)*(h s tc dung)
Ban c th thay di UFC bng cch thm vo h s phuc tap m n gn voi d
phuc tap cua ton b h thng. Diu ny dua vo bo co muc d phn b tin trnh, tng
s dng lai, hiu sut, Dmdim hm khng thch ung (UFC) duoc nhn voi h s phuc
tap du n d dua ra dim hm cho ton b h thng.
Symons (Symons, 1988) ch rng uoc luong d phuc tap bng cch dmdim-
hm trong chuong trnh phu thuc vo nguoi dua ra uoc luong. Con nguoi khc nhau se c
nhng nim khc nhau v d phuc tap. V th su da dang trong vic dmdim-hm phu
thuc vo quyt dinh cua nguoi uoc luong v kiu cua h thngduoc pht trin. Hon th
na, dim hm thuong c xu huong v h thng su l d liu m n bi chi phi boi cc
ton tu vo v ra. V tht kh d uoc luongdim hm cho cc h thng huong su kin. V
l do d, mt s nguoi nghi dim hm l khng thuc su thch hopd tnh ton nng sut
phn mn (Furey v Kitchenham, 1997; Armour, 2002). Tuy nhin, nguoi su dung dim
hm tranh lun gy gt rng d l mt cch hiu qua trong thuc tin (Banker,
1993,Garmus v Herron, 2000)
Dim muc tiu (Banker,,1994) l mt kha nng khc cuadim hm. Chng c
th duoc su dung voi cc ngn ng nhu cc ngn ng lp trnh co so d liu, ngn ng
kich ban. Dim muc tiu khng phai l lop muc tiu m n c th san xut khi tin gn
dinh huong muc tiu duoc dua lai trong su pht trin phn mn. S luong cuadim hm
trong chuong trnh l vicuoc luong tc dung cua:
1. S luong cc mn anh ring bit auoc hin thi mt mn hnh don duoc
coi nhu mt dim muc tiu, cc mn anh phuc tap vua phai duoc dm l
2, v cc mn anh rt phuc tapduocdm l 3.
2. S luong cc bin ban auoc aua ra cho mt bin bandon le dm thm 2
dim muc tiu, cho cc bin ban phuc tap vua phai l 5 v cc bin ban
rt kh d dua ra l 8.
3. S luong cc modul trong cc ngn ng lap trnh bt buc nhu Java
hoc C++ m n phai auoc pht trin a b xung cho m lap trnh co so
d liu mi trong cc modul duocdm 10 dim muc tiu.
Dim muc tiu duoc su dung trong m hnh uoc luong COCOMO II (duoc goi l
dimung dung) duoc ni dn trong cc chuong sau. Loi th cuadim muc tiu hondim
hm l n d rng hond uoc luong cho cc chi tit k thut phn mn cp cao. Dim muc
tiu thuong chi lin quan dn cc mn hnh, bin ban v cc modul trong cc ngn ng lp
trnh. N thuong khng lin quan dn cc chi tit b xung, v cc uoc luong h s phuc tap
ldon gian.
Nu dim hm hoc dim muc tiu duoc su dung, chng c th duoc uoc luong
trong giai doan som cua qu trnh pht trin truoc khi quyt dinh anh huong dn kch
thuoc chuong trnh duoc tao ra. Uoc luong cc thng s c th lm cng giao tip tuong
tc cua h thng khi duoc thit k.Trong giai doan ny, l rt kh d dua ra kch thuoc cua
chuong trnh v s dng cua m ngun.
Dim hm v dim muc tiu c th duoc su dung kt hop voi m hnh uoc luong s
dng cua m. Kch thuoc m cui cng duoc tnh ton tu s luong dim hm. Su dung
phn tch d liu lich su, s luong dng trung bnh cua m, AVC, trong cc ngn ng ring
http://www.ebook.edu.vn 134
bit d b xung cc dim hm c th uoc luongduoc. Gi tri cua AVC thay di tu 200 dn
300 LOC/FP trong hop ng, tu 2 dn 40 LOC/FP trong ngn ng lp trnh co so d liu
nhu SQL. Uoc luong kch thuoc m cho ung dung moi duoc tnh ton nhu sau:
Kch thuoc m =AVC*s luongdim hm.
Nng sut lp trnh trong lm vic c nhn trong t chuc l phu thuc vo nhiu
yu t. Mt s trong cc yu t quan trongduocdua ra trong hnh 26.3. Tuy nhin, c nhn
khc nhau trong kha nng thuong c nhiu nghia hon bt ky nhn t no. Trong su uoc
dinh som cua nng xut, Sackman (Sackman, 1968) tm thy mt s lp trnh vin m ho
c nng xut gp hon 10 ln so voi nhng nguoi khc. Kinh nghim cua ti cho thy diu
ny vndng. Nhng nhm lon thuong c kha nng ho hop kha nng v kinh nghim v
se c duoc nng sut trung bnh. Trong nhng nhm nho, tuy nhin, nng sut chung
thuong phu thuc rt nhiu vo cc kha nng v nng khiu c nhn.
Hnh 8.3 Cc nhn t anh huongdn nng sut thit k phn mn.
Nhn t M ta
Kinh nghim min
ung dung
Hiu bit v minung dung l cn thit d pht trin phn mn hiu
qua. Nhng k su d hiu v min thuong lm vic c hiu qua cao.
Cht luong qu
trnh
Su dung qu trnh pht trin c th c hiu qua dc bit trong nng
sut. Diu ny duoc ni dn trong Chuong 28
Kch thuoc du n Mt du n lon se cn nhiu thoi gian hon yu cu cho vic giao tip
trong nhm. t thoi gian c th su dung cho vic pht trin dndn
suy giam nng sut c nhn.
H tro k thut H tro k thut tt nhu cng cu CASE v h thng t chucquan l
cu hnh c th tng nng sut.
Mi truong lm
vic
Nhu d thao lun trong Chuong 25, mt mi truong lm vic yn
tinh voi vng lm vic ring gp phn nng cao nng sut.
Nng sut pht trin phn mn thay di nhanh chng gia minung dung v cc t
chuc. Voi h thng lon, phuc tap, nng sut duoc uoc luong duoi 30 LOC/pm. Voi nhng
h thngung dung d hiu, vit bng ngn ng nhu J ava, n c th cao hon 900 LOC/pm.
Khi tnh ton gioi han cuadim hm Boehm (Boehm,1995) d xut nng sut thay di tu 4
dim hm trn thng dn 50 trn thng, phu thuc vo kiu ung dung, cng cu h tro v
kha nng pht trin.
Vn d voi php do m n phu thuc vo s luong san phm trong thoi gian han
dinh l n dua vo bo co v dc dim cht luong c th duy tr v dng tin cy. Beck
(Beck, 2000) trong thao lun cua ng v lp trnh, d tao dim xut sc v su uoc luong.
Nu cch tip cn cua ban l co so cho vicdon gian m v pht trin, do d vicdn dng
trong m khng cn nhiu nghia.
Phpdo cung khng dua vo bo co kha nng su dung lai cc san phm phn mn,
su dung nhng m c sn v cc cng cu khc d tao ra phn mn.
L mt nh quan l, ban khng nn su dung vic tnh ton nng sut d c nhng
quyt dinh vi vng v kha nng cua k su trong nhm cua ban. Nu ban lm, k su c th
thoa hip v cht luong trong k hoach tro nn hiu qua hon. N c th tro thnh truong
http://www.ebook.edu.vn 135
hop m nguoi lp trnh km hiu qua dua ra m dng tin cy hon m m d dng d hiu
v c th duy tr khng tn km. V th, ban nn lun nghi v do nng sut nhu cung cp
cc thng tin khng hon chinh v nng sut cua lp trnh vin. Ban cung nn quan tm
dn cc thng tin khc v cht luong cua chuong trnh ho d lm ra.
8.3. K thut uc lung
Khng c cch don gian no tao ra uoc luong mt cch chnh xc cho h thng
pht trin phn mn. Ban c th phai tao ra uoc luong khoi tao trn nn tang cua dinh
nghia yu cu nguoi dng cp cao. Phn mn c th phai thuc thi trong cc my tnh la
hoc su dung k thut pht trin moi. Nhng nguoi trong du n v k nng cua ho c th
se khng duoc bit dn. Tt ca nhng trn l khng th uoc luong chi ph pht trin h
thng mt cch chnh xc trong giai doandu cua du n.
Hon th na, d l ci kh co ban trong vic dnh gi dng dn cua cc cch tip
cn khc nhau dn k thut uoc luong chi ph. Su uoc luong duoc dng d xc dinh ngn
sch du n, v san phm se duoc diu chinh hop l. Ti khng bit g v cc cuc th
nghimdiu khin voi vic dinh gi du n noi m uoc luong chi ph khng duoc su dung
trong th nghim. Cuc th nghimdiu khin se khng bc l duoc uoc luong chi ph cho
nguoi quan l du n. Chi ph trn thuc t se duoc so snh voi chi ph uoc luong. Tuy
nhin, nhu mt cuc th nghim l c th khng kha thi boi v bao gm chi ph cao v s
luong c th thay di l khng th diu khin.
Tuy nhin, t chuc cn phai tao ra su c gng trong phn mn v uoc luong chi ph.
D lm vic d, cc k thut duoc dua ra trong hnh 8.4 c th duoc su dung (Boehm,
1981). Tt ca cc k thut du dua trn nn tang kinh nghim quyt dinh boi nhng nguoi
quan l du n m ho su dung hiu bit cua ho d xem xt du n v uoc luong ti nguyn
yu cu cho du n. Tuy nhin, c th c nhng khc bit quan trong gia du n qu khu v
tuong lai. Rt nhiu phuong thuc v k thut pht trin moi duoc gioi thiu sau 10 nm.
Mt s th du anh huong dn co so uoc luong trong nhim vu bao gm:
1. Phn phi cc h thng muc tiu hon l h thng chung.
2. Su dung dich vu web.
3. Su dung ERP hoc cc h thng trung tm co so d liu
4. Su dung cc phn mn khng bao v hon l pht trin h thng ngun.
5. Pht trin cng voi vic su dung lai hon l pht trin moi tt ca cc thnh phn
cua h thng.
6. Pht trin su dung cc ngn ng kich ban nhu TCL hoac Perl (Ousterhout,
1998)
7. Su dung cng cu CASE v nguoi vit chuong trnh hon l pht trin h thng
khng c h tro.
Hnh 8.4 K thut uoc luong chi ph.
K thut M ta
M hnh ho
chi ph giai
thut
M hnh duoc pht trin su dung thng tin chi ph trong qu khu m n
gn voi mt s thuocdo phn mn (thuong l kch c cua n) d tnh
chi ph du n. Su uoc luong duoc tao boi thuocdo v m hnh ny cho
bit truoc cc yu cu cn thit.
http://www.ebook.edu.vn 136
Su phn quyt
cua chuyn gia
Mt s chuyn gia d xut k thut pht trin phn mn v minung
dungd tham khao. Mi nguoi c cc uoc luong chi ph du n. Chng
duocdua ra so snh v thao lun. Qu trnh uoc luongduoc nhc lai
dn khi duoc tn thnh v tro nn hop l.
Uoc luong
bng cch loai
suy
K thut ny duoc p dung khi cc du n khc c cng minung dung
d hon tt. Chi ph cua du n moi duocuoc luong bng cch loai suy
voi cc du n d hon thnh. Myers (Myers, 1989) dua ra su m ta rt
chi tit v phuong huong ny
Su dung dinh Trang thi dungdinhduoc mo rng d lpdy thoi gian c th su
dung. Chi ph duocndinh boi ti nguyn c th su dung hon l dnh
gi muc tiu. Nu phn mmduoc phn phi trong 12 thng v 5 nguoi
c th su dung, th yu cuduocuoc luong.
Dinh gi d
chin thng
Chi ph phn mmduocuoc luong cho bt ky khch hng no c th
tra tin cho du n. Chi ph cho su c gng phu thuc vo ngn sch cua
khch hng chu khng phu thuc vo chuc nng phn mn.
Nu nhng nh quan l khng lm vic v k thut, su xem xt kinh nghim c th
khng gip g duoc ho trong vic uoc luong chi ph du n phn mn. Diu ny tao ra kh
khn cho ho trong vicdua ra uoc luong chi ph v lich trnh chnh xc.
Ban c th khc phuc cc phuong huonguoc luong trong hnh 8.4 su dung hoc tu
phuong php tu trn xung hoac tu duoi ln. Phuong php tu trn xung bt du tu cp h
thng. Ban bt du voi vic khao st cc chuc nng cua san phm v lm th no cung cp
cc chuc nng ny bng cc hm con. Chi ph cua cc hoat dng cp h thng coi nhu su
su quan l tch hop, cu hnh v huong dn trong bo co.
Nguoc lai, phuong php tu duoi ln. bt du tu cp cc thnh phn. H thngduoc
phn tch thnh cc thnh phn, v banuoc luong cc yu cud pht trin cho mi thnh
phn. Sau d ban cng cc chi ph thnh phnd tnh ton yu cu cho pht trin ton b
h thng.
Su bt loi cua phuong php tu trn xung lai l su thun loi cua phuong php t
duoi ln v nguoc lai. Uoc luong tu trn xung c th dnh gi thp chi ph cua vic giai
quyt lin kt cc vnd k thut kh voi tung phn ring bit nhu l giao din cua phn
cung khnng chun. Khng c su chung minh cu th no cua php uoc luongduocdua ra.
Nguoc lai, uoc luong tu duoi ln c su chung minh v quan tm toi mi thnh phn. Tuy
nhin, phuong php ny lai c th dnh gi thp chi ph cc hoat dng cua h thng nhu su
tch hop. Uoc luong tu duoi ln cungdt hon, n phai duoc khoi tao thit k h thng d
nhn bit chi ph cua cc thnh phn.
Mi phuong php uoc luongdu c nhngdim manh v dim yu. Su dung mi
thng tin khc nhau v cc du n v cc nhm pht trin, nu ban su dung don le mt
phuong php v cc thng tin ny th se khng chnh xc, uoc luong cui cng se bi sai. V
th, cho nhng du n lon, ban nn su dung mt vi k thut uoc luong v so snh kt qua
cua chng. Nu kt qua l khc nhau v co ban, ban c th khng c du thng tin v san
phm hoac qu trnh pht trin, ban nn tip tuc qu trnh uoc luong cho dn khi cc kt
qua l dng nht.
http://www.ebook.edu.vn 137
Cc k thut uoc luongduoc p dung noi vn ban yu cu cho h thng duoc dua
ra. N nn xc dinh tt ca cc nguoi dung v yu cu h thng. Do d ban c th c nhng
uoc luong hop l v chuc nng cua h thng se duoc pht trin. Nhn chung, cc du n
thit k h thng lon se c nhng vng ban yu cu.
Tuy nhin, trong rt nhiu truong hop, chi ph cua nhiu du n phai duoc uoc
luong su dung cc yu cu nguoi dng khng thoa dng cho h thng. Diud c nghia l
su uoc luong c rt t thng tin v cng vic. Phn tch yu cu v cu th ho l dt, v
nguoi quan l trong cng ty c th cn c cc uoc luong chi ph khoi tao cho h thng
truoc khi ho c th chp nhn ngn sch d pht trin cc yu cu cu th hoac cc phin
bandu tin cua h thng.
Truong hop duoi cng, tra gi d dnh chin thng l mt chin luoc chung
thuong su dung. Ch cua vic tra gi d dnh chin thng l n duong nhu khng hop l
v khng c tnh thuong mai. Tuy nhin, n c mt s thun loi. Chi ph cua du n duoc
chp nhn trn co so mucdch trn nguyn tc chung. Su diu chinh sau d do khch hng
thit lp cc dc trung co ban cua du n. Cc chi tit phu thuc vo su chi ph chp nhn.
Nguoi mua v nguoi bn phai dng ci g l chuc nng h thng chp nhnduoc. Su yu
cu l c th thay di nhung chi ph l khng duoc vuot qu.
V du, mt cng ty tra cho mt hopdng pht trin h thng phn phi nhin liu
cho cng ty du m lich phn phi nhin liu l toi cc cham phuc vu. Khng c vn ban
yu cu cu th no cho h thng v uoc luong chi ph l $900.000 nhu l su canh tranh
ngn sch cc cng ty du. Sau su cng nhn nhu vy trong hop dng, ho dm phn cc
yu cu cu th cho h thng v cc chuc nng co banduoc phn phi, sau d ho uoc luong
thm cc chi ph cho cc yu cu khc. Cng ty du khng cn thit mt ci trn boi v n
c hopdng. Cc yu cu thm c th dung cc ngn sch trong tuong lai, v th ngn sch
cng ty du c th bi ph v boi ci gi phn mn khoi dim qu cao.
8.4. M hnh ho chi ph thut ton
M hnh ho chi ph giai thut su dung cc cng thuc ton hoc d m ta chi ph du
n trn co so uoc luong dua trn kch thuoc du n, s luong k su phn mn, v cc qu
trnh v cc h s san phn khc. M hnh chi ph giai thut c th xy dung bng cch
phn tch chi ph v thuc tnh cua cc du n d hon tt v tm kim cc cng thuc gn
nht tu kinh nghim thuc t.
Cc m hnh chi ph giai thut su dung chnh d tao cc uoc luong cua chi ph phn
mn, nhung Boehm (Boehm, 2000) thao lun v cc thu khc su dung uoc luong chi ph
giai thut, bao gmuoc luong cho nguoi du tu trong cng ty phn mn, uoc luong cho
cc chin luoc khc d gip dnh gi rui ro, v uoc luong cho khai bo cc quyt dinh v
vic su dung lai, pht trin lai hoc muon ti nguyn.
Trong dang chung nht, uoc luong chi ph giai thut cho chi ph phn mn c th
duoc coi nhu:
Su c gng =A* (kch thuoc)
B
*M
Trong d, A l hng s phu thuc vo thuc tin t chuc v loai phn mnduoc pht
trin. Kch thuoc c th l su dnh gi kch thuoc m cua phn mn hoc uoc luong chuc
nng trong cc hm hoc dim muc tiu. Gi tri cua s mu B thuongo gia 1 v 1.5. M l
s nhn qu trnh kt hop, san xut v pht trin thuc tnh, c th phu thuc yu cu cho
phn mn v kinh nghim cua nhm pht trin.
http://www.ebook.edu.vn 138
Hu ht cc m hnh uoc luong thut ton c thnh phn s mu (B trong biu thuc
trn) n kt hop voi uoc luong kch thuoc. N phan nh trn thuc t chi ph khng don
thun phu thuc tuyn tnh v kch thuoc du n. Nhu khi kch thuoc du n thay di, chi ph
chiu them l nhiu hon bnh thuong v giao tip bao trm cc nhm lon, thm cc su quan
l cu hnh phuc tap, thm cc tch hop h thng kh khn, vn vn.V th, mt h thng
lon c nghia l mt s mu lon.
Khng may l tt ca cc m hnh thut ton phu thuc chu yu vo cc kh khn
sau:
1. Thuong kh uoc luong kch thuoc o giai aoan aau cua du n khi chi c cc ac
aim k thuat l c th su dung, uoc luong dim hm v dim muc tiu l c th dua ra
som honuoc luong kch thuoc cua m nhung thuong khng chnh xc.
2. Su uoc luong cc h s ang gp B v M l mang tnh chu quan. Su uoc luong
thay di khi nguoi uoc luong thay di, phu thuc vo nn tang v kinh nghim voi kiu h
thngduoc pht trin.
S dng cua m ngun trong h thng phn phi l thuoc do co ban trong hu ht
cc m hnh chi ph giai thut. Uoc luong kch thuoc c th bao gm vic uoc luong loai
suy tu cc du n khc, uoc luong bng cch chuyndi cc dim hm, muc tiu thnh kch
thuoc m, uoc luong bng xp hang kch thuoc thnh phn h thng v cc thnh phn
tham khaod uoc luong kch thuoc thnh phn, hoc n c th don gian l cu hoi cua su
quyt dinh trong thit k.
Uoc luong kch thuoc m chnh xc l kh trong giai doan du cua du n boi v
kch thuoc m chiuanh huong boi cc quyt dinh thit k m thm ch chua c lc ny. V
du, mt ung dung m yu cu su quan l d liu phuc tap c th su dung hoc cc co su d
liu thuong mai hoc cc cng cu quan l d liu cua chnh h thng. Nu l cc co so d
liu thuong mai duoc su dung, kch thuoc m c th nho nhung su c gng cng them c
th cn c vuot qua gioi han hiu nng cua san phm thuong mai.
Ngn ng lp trnh duoc su dung trong h thng pht trin cung anh huong s dng
cua m duoc pht trin. Ngn ng nhu J ava c th phai mt nhiu dng m cn thit hon C
khi su dung. Tuy nhin, m b xung cho php thoi gian bin dich kim tra chi ph c kha
nngduoc giam. Dua chng vo cc bo co th no? Hon th na, n c th su dung lai
dc dim s luong m tu vic xem xt lai cc du n v uoc luong kch thuoc c th duoc
diu chinh d dua vo bo co.
Nu ban su dung m hnh uoc luong chi ph thut ton, ban nn pht trin vic sp
xp cc uoc luong (ti, bnh thuong v tt) hon l cc uoc luongdon v p dung cng thuc
chi ph cho tt ca. Cc uoc luong c th tro nn chnh xc khi ban hiu v loai phn mn
duoc pht trin, khi band c su kim tra m hnh chi ph su dung cc d liu cuc b, v
khi ngn ng lp trnh v phn cung duoc chon lua tu truoc.
Su chnh xc cua vic dua ra uoc luong bng m hnh thut ton phu thuc vo
thng tin h thng c th su dung. Nhu vic xut pht qu trnh phn mn, nhiu trong tin
tro nn c th su dung v su uoc luong tro nn chnh xc hon. Nu su uoc luong ban du
cho su c gng l x thng, th dy ny c th tu 0.25x dn 4x khi h thng duoc dua ra ln
du. Gioi han cua qu trnh pht trin duoc dua ra trong Hnh 8.5. Hnh ny duoc chch
dn tu bi vit cua Boehm (Boehm, 1995), phan nh kinh nghim cua s luong lon cc du
n pht trin phn mn. Tuy nhin, truoc ht n phu thuc h thng duoc phn phi, su
uoc luong rt chnh xc c th duocdua ra.
http://www.ebook.edu.vn 139
Hnh 8.5 Uoc luong khng chc chn
8.5. M hnh COCOMO
Mt s cc m hnh thut ton duoc dua ra nhu l nn tang cho vic uoc luong su
c gng, lich trnh v chi ph cho du n. Chng dua trn nhng khi nim tuong tu nhung
voi nhng gi tri tham s khc nhau. M hnh duoc thao luno dy l m hnh COCOMO.
M hnh COCOMO l m hnh theo kinh nghim nhnduoc tu vic suu tp d liu tu mt
luong lon cc du n phn mn. Cc d liu ny duoc phn tch d thu v cng thuc tt nht
ph hop voi cc quan st. Cng thuc lin kt kch thuoc cua h thng vo san phm, du n
v cc nhn t trong nhm d pht trin h thng.
Ti d chon m hnh COCOMO v mt s l do:
1. D l mt tu liu tt, c th su dung trong cc min chung v h tro boi
cc mim chung v cc cng cu thuong mai.
2. Duoc su dung rng ri d dnh gi trong dy cc t chuc.
3. C su k thua lu di tu nhng ci dt du tin vo nm 1981 (Boehm,
1981), thng qua vic chon loc nhng thu thch hop trong vic pht trin
phn mn Ada (Boehm v Royce, 1989), dn ban moi nht gn dy
COCOMO II, duocdng nm 2000 (Boehm v cng su, 2000).
M hnh COCOMO l ton din, voi luong lon cc tham s. N rt phuc tap v
khng th m ta hon ton o dy. Hon nua, ti thao lun don thun v cc dc dim cn
thit d c th gip ban hiu v m hnh chi ph thut ton.
Phim bandu tin cua m hnh COCOMO (COCOMO 81) l m hnh cp 3 l cp
tuongung voi phn tch chi tit cua vic uoc luong chi ph. Cpdu tin (co so) cung cp
uoc luong th so du tin; Cp thu 2 suadi n su dung mt s cc du n v qu trnh; v
cp chi tit nht dua ra su uoc luong cho nhiu phuong din cua du n. Hnh 8.6 th hin
cng thuc COCOMO co ban cho cc loai khc nhau cua du n. S nhn M phan nh san
phm, du n v dcdim nhm.
http://www.ebook.edu.vn 140
D phuc tap du
n
Cng thuc M ta
Don gian PM=2.4(KDSI)
1.05
*M Cc ung dung d hiu pht trin boi cc
nhm nho
Bnh thuong PM=3.0(KDSI)
1.12
*M Du n phuc tap hon noi cc thnh vin c
th c kinh nghim c gioi han trong cc
h thng gnd.
Phuc tap Pm=3.6(KDSI)
1.20
*M Du n phuc tap noi phn mn l phn
manh trong nhm phuc tap cua phn
cung, phn mn, su diu chinh v cc thu
tuc hoat dng.
COCOMO 81 gia su l phn mmduoc pht trin theo qu trnh thc nuoc ( xem
Chuong 4) su dung cc ngn ng lp trnh cn thit chun nhu C hoc FORTRAN. Tuy
nhin, n c thay di co ban cho vic pht trin phn mn tu bandu tin duocd xut. Tu
phin ban du tin v cc cai tin du dung cc m hnh qu trnh chung. Phn mn by
gio thuongduoc pht trin boi vic tp hop cc thnh phn c th dng lai duoc voi cc h
thng khng bao v v kt ni chng voi cc ngn ng kich ban. H thng d liu chuyn
su duoc pht trin su dung ngn ng lp trnh co so d liu nhu SQL v cc h thng
quan l d liu thuong mai. Cc phn mn c sn duoc thit k lai d tao cc phn mn
moi. Cng cu CASE h tro cho cc hoat dng qu trnh phn mn l c th su dungduoc.
D dua su thay di d vo trong bo co, m hnh COCOMO II thua nhn cc
phuong php khc nhau d pht trin phn mm nhu lm ra nguyn mu ngun, pht trin
bng cc thnh phn kt cu v su dung lp trnh co so d liu. COCOMO II h tro m
hnh sonc cua su pht trin (xem Chuong 4) v bao gm mt vi m hnh con m cung
cp thm cc uoc luong chi tit. N c th duoc su dung trong mt loat cc su pht trin
xonc. Hnh 8.7 th hin m hnh con COCOMO II v noi chng duoc su dung.
Cc m hnh con m l mt phn cua m hnh COCOMO II l:
1. M hnh kt cau ung dung N gia su rng h thng duoc tao tu cc thnh
phn, kich ban hoc lp trnh co so d liu c th su dung lai. N duoc
thit k d tao uoc luong cua su pht trin nguyn mu. Uoc luong kch
thuoc phn mn l co so cua dim ung dung, v cng thuc kch
thuoc/nng sut don gianduoc su dung d uoc luong yu cu su c gng.
Dimung dung l gn ging dim muc tiu duoc thao lun trong phn
8.1, nhung tn thay di d trnh su ln xn voi muc tiu trong pht trin
dinh huong muc tiu.
2. M hnh thit k som M hnh ny duoc su dung trong giai doandu cua
thit k h thng sau khi cc yu cuduoc thnh lp. Su uoc luong l co
so cuadim hm, n duoc chuyn di tu s dng cua m ngun. Cng
thuc theo dang chun duoc thao lun o trn voi tp hop duoc lm don
gian cua 7 s nhn.
3. M hnh su dung lai l m hnh su dungd tnh ton yu cud tch hop
cc thnh phn c th su dung lai v/hoc m chuong trnh duoc tu dng
http://www.ebook.edu.vn 141
tao ra bng thit k hoc chuong trnh thay di cng cu. N thuongduoc
su dung trong lin kt voi cc m hnh kin trc.
4. M hnh kin trc khi kin trc h thng duoc thit k, su chnh cc uoc
luong cua kch thuoc phn mn c th duoc tao ra. Dp lai m hnh ny
su dung cng thuc chun cho uoc luong chi ph thao lun o trn. Tuy
nhin, n bao gm nhiu mo rng tp hop 17 s nhn phan nh kha nng
nhn vin, san phm v dcdim du n.
Hnh 8.7 M hnh COCOMO II
Tt nhin, trong cc h thng lon, cc phn khc nhau c th duoc pht trin su
dung cc k thut khc nhau, v ban c th khng phai uoc luong tt ca cc phn cua h
thngo cng cpd cua su chnh xc. Trong truong hop ny, ban c th su dung cc m
hnh con thch hop cho mi phn cua h thng v kt hop kt qua thnh mt uoc luong
hn hop.
8.5.1. M hnh kt cu ng dng.
M hnh kt cuung dung duoc gioi thiu trong vo COCOMO II d h tro su uoc
luong yu cu su c gng cho vic tao nguyn mu du n v cho cc du n m phn mm
duoc pht trin boi cc thnh phn c sn. D l co so cuauoc luongdim kha nng ung
dung (dim muc tiu) chia cho uoc luuong chun cua nng sut dimung dung. Su uoc
luong sau d duoc diu chinh theo su kh khn cua vic pht trin mi dim muc tiu
(Boehm v cng su, 2000) nng sut nguoi lp trnh cung phu thuc vo kinh nghim
nguoi pht trin v kha nng nhu l kha nng cua cng cu CASE su dung h tro pht trin.
Hnh 8.8 th hin nng sut dim muc tiu d xut boi nguoi pht trin m hnh (Boehm v
cng su, 1995).
Kt cu ung dung thuong bao gm vic su dung lai phn mm, v mt s trong
tng s dimung dung trong h thng c th tro thnh cng cu voi cc thnh phn c th
su dung lai. Do d, ban phai diu chinh co so uoc luong trong tng s dimung dungd
dua vo bo co ty l cua thnh phn su dung lai. V th, cng thuc cui cng cho vic tnh
ton su n luc cho h thng nguyn mu l:
s luongdim
ung dung
M hnh kt
cuung dung
H thng nguyn mu
duoc pht trin su dung
kich ban, lp trnh co so
d liu,
Co so trn
su dung cho
s luongdim
hm
M hnh thit
k som
Khoi taouoc luong su
c gng co so trn yu
cu h thng v cc tuy
chon thit k
Co so trn
su dung cho
s luong dng
m ti su dung
hocduoc pht
sinh
M hnh ti su
dung
C gngd tch hop
thnh phn su dung lai
hoac m tu dng pht
sinh.
Co so trn
su dung cho
s luong dng
cua m ngun
M hnh kin
trc
C gng pht trin trn
co so dcdim thit k
h thng
Co so trn
su dung cho
http://www.ebook.edu.vn 142
PM=(NAP*(1- %su dung lai/100))/PROD
PM l uoc luong n luc cua con nguoi-thng. NAP l tng s cuadimung dung
trong h thng phn phi. %su dung lai l uoc luong cua tng s m su dung lai trong su
pht trin. PROD l nng sut dim muc tiu duocdua ra trong hnh 8.8. M hnh gia thit
l khng phai tn cng cho qu trnh su dung lai ti nguyn.
8.5.2. M hnh thit k sm
M hnh ny duoc su dung trong yu cu nguoi dng ddng v giai doan khoi
du cua qu trnh thit k h thng dangduoc thuc hin. Tuy nhin, ban khng cn nhng
thit k kin trc chi tit d tao su uoc luong ban du. Muc tiu cua ban trong giai doan
ny nn tao cc uoc luong gndng thch hop. Do d, ban tao nhng gia thit don gianda
dang, nhu su c gng bao gm trong vic tch hop m su dung lai l bng khng. Uoc
luong thit k som l thuongduoc su dung trong cc khao st lua chon noi ban cn so snh
cc cch khc nhau cua cc cng cu nguoi dng yu cu.
Uoc luongduoc dua ra trong giai doan ny ly co so trn cng thuc chun cho m
hnh thut ton, cu th l:
Su c gng =A*(kch thuoc)
B
*M
Trn co so trong tp hop d liu lon. Boehm d xut rng h s A nn bng 2.94.
Kch thuoc cua h thng duoc biu din bng KSLOC, m n l s luong cua hng ngn
dng trong m ngun. Ban tnh ton KSLOC bng uoc luong s luong dim hm trong
phn mn. Sau d ban su dung bang chun m n lin kt kch thuoc cua phn mn toi
dim hm cho cc ngn ng lp trnh khc nhau d tnh ton uoc luong cua kch thuoc h
thng bng KSLOC.
S mu B phan nh yu cu nay sinh thm khi kch thuoc cua du n tng. N khng
phai chung cho cc kiu khc nhau cua h thng, nhu trong COCOMO 81, nhung n c th
thay di trong khoang 1.1 toi 1.24 phu thuc vo tnh khc thuong cua du n, tnh mn deo
cua su pht trin, su lin kt trong nhm pht trin, trnh d su l thnh thao cua t chuc.
Ti thao lun v gi tri cua s mu trn duoc tnh ton su dung cc tham s duoc m ta
trong M hnh kin trc COCOMO II.
H s M trong m hnh COCOMO II ly co so trn tp hop by du n v dc tnh
su l m n anh huong toi su uoc luong. N c th gia tng hoc giam yu cu su c gng.
Dc tnh su dung trong m hnh thit k som l tch s cuad dng tin cy v phuc tap
(RCPX), yu cu su dung lai (RUSE), nn tang kh (PDIF), kha nng con nguoi (PERS),
kinh nghim con nguoi (PREX), lich trnh (SCED), v tin ngi tro gip (FCIL). Banuoc
luong gi tri cua cc thuc tnh su dung su dim muc d m 1 tuong ung voi gi tri rt
thp cho cc h s v 6 tuongung voi gi tri rt cao.
Kt qua cua su tnh ton su c gng l:
PM =2.94*(kch thuoc)
B
*M
Trong d:
M =PERS*RCPX*RUSE*PDIF*PREX*FCIL*SCED
8.5.3. M hnh su dng li
Nhu d thao lun trong cc chuong truoc, phn mn su dung lai l chung by gio,
v hu ht cc h thng lon c ty l lon cua m l duoc su dung lai tu truoc khi pht trin.
M hnh su dung lai duoc su dung d uoc luong yu cu su c gng d tch hop thnh
phn c th su dung lai hoac m tu pht.
http://www.ebook.edu.vn 143
COCOMO II quan tm dn su dung lai m trong hai loai. M hpden l m c th
su dung lai m khng cn bit v m hoc su cha n. Su c gng pht trin voi m hp
den l bng khng. M m c th thay di d tch hop n voi m moi hoc cc phn khc
su dung lai goi l m hp trng. Mt s c gng pht trin l yu cuduoc su dung lai n
v phai hiu v sua cha lai truoc th n moi c th lm vic duoc chnh xc trong h
thng.
Thm vo na, rt nhiu h thng bao gm cc m tu pht tu cc chuong trnh
chuyndi n sinh ra m tu cc h thng mu. D l dang cua su dung lai trong cc mu
chun phuc tap cua nguoi vit. Cc mu h thng duoc phn tch, v m co so cua cc mu
chun voi cc chi tit thm vo tu h thng mu duoc sinh ra. M hnh su dung lai
COCOMO II bao gm cc m hnh ring bit d uoc luong chi ph lin quan voi m tu
pht.
Cho m m duoc tu sinh ra, m hnh uoc luong s luong cua yu cu con nguoi
trong cc thng d tch hop m ny. Cng thuc cho su uoc luong ny l:
PM
Auto
=(ASLOC*AT/100)/ ATPROD // uoc luong cho m tu pht.
AT l ty l cua m thch nghi m duoc tu dng sinh ra v ATPROD l nng sut
cua cc k su trong tch hop m. Boehm v cng su (Boehm, 2000) c php do ATPROD
vo khoang 2,400 bo co ngun trn thng. V th, nu c tng s 20.000 dng trong m
hp trng su dung lai trong h thng v 30% cua chng l m tu dng sinh ra, th yu cu
c gngd tch hop m tu pht l:
(20,000*30/100)/2400 =2.5 Nguoi thng. //VD m tu pht
Cc thnh phn khc cua m hnh su dung lai khi h thng bao gm mt s m moi
v mt s su dung lai thnh phn hp trngduoc tch hop. Trong truong hop ny, m hnh
su dung lai khng duoc tnh ton ngay lp tuc. Hon na, trn co so cua s dng cua m
duoc su dung lai, n tnh ton cc dc trungduoc m ta tuong duong s dng cua m moi.
V th, nu 30.000 dng m duoc su dung, uoc luong kch thuoc moi tuong duong
c th l 6.000. Tt nhin l, su dung lai 30000 dng m l tuong duong voi vit 6000
dng m moi. Dc dim tnh ton l them s luong cua dng m moi vo su pht trin
trong m hnh kin trc COCOMO II.
Uoc luong trong m hnh su dung lai l:
ASLOC - s dng cua m trong thnh phn phai duoc thch nghi.
ESLOC - S dng tuongduong cua m ngun moi.
Cng thuc su dungd tnh ton ESLOC dua vo bo co yu cu su c gng cho
vic tm hiu phn mm, d tao su thay di cho m ti su dung v thay di h thngd tch
hop voi m d. N cung dua ra bo co s luong cua m m n tu dng sinh ra khi c gng
pht trinduoc tnh ton, nhu duoc giai thch som trong muc ny.
Cng thuc sau duoc su dung tnh ton s dng tuong duong s dng cua m ngun:
ESLOC =ASLOC*(1-AT/100)* AAM
ASLOC duoc giam tuy theo ty l cua m tu dng sinh ra. AAM l Adaptation
Adjustment Multiplier (H s diu chinh thch nghi), n dua ra bo co yu cu cho m ti
su dung. Don gian, AAM l tng cua ba thnh phn:
1. Thnh phn thch nghi (AAF) n m ta chi ph cho tao su thay di cua
m ti su dung. N bao gm cc thnh phn thit k, thay di m v tch
hop.
http://www.ebook.edu.vn 144
2. Thnh phn tm hiu (SU) m ta chi ph cua vic tm hiu m d su dung
lai v su hiu r m cua k su voi m. SU sp sp tu 50 cho cc m phi
cu trc phuc tapdn 10 cho cc ban vit tt, m c dinh huong muc tiu.
3. H s dnh gi (AA) m ta chi ph cua vic tao quyt dinh su dung lai.
Ngi l, mt s phn tch lun duoc yu cu d quyt dinh c nn su
dung lai m hay khng, v n bao gm trong chi ph AA, AA thay di tu
0dn 8 phu thuc vo s luong phn tch yu cu.
M hnh su dung lai l m hnh phi tuyn. Mt s su c gngduoc yu cu nu su
dung lai l xem st d taodnh gi c nn su dung lai hay khng. Hon th na, ngy cng
nhiu phn ti su dungduoc xem st, chi ph trn don vi m su dung lai giam nhu su hiu
bit dydu v dnh gi chi ph l d qua nhiu dng m.
8.5.4. Dng cp kin trc
Dng cp kin trc l chi tit nht cua m hnh COCOMO II. N duoc su dung mt
ln khi thit k kin trc mo du cho h thng c th su dung cho h thng con cu trc d
bit.
Su uoc luong dua ra trong dng cp kin trc ly co so trn cc cng thuc co ban
(PM=A*(kch thuoc)
B
*M) su dung trong uoc luong thit k som. Tuy nhin, uoc luong
kch thuoc cho phn mn nn chnh xc hon trong giai doan ny cua qu trnh uoc luong.
Thm na, c rt nhiu tp hop thuc tnh duoc mo rng cua san phm, qu trnh v t
chuc(17 thay v 7) duoc su dungd chon loc tnh ton ban du. C th su dung nhiu hon
cc thuc tnh trong giai doan ny v ban c nhiu thng tin v phn mnduoc pht trin
v qu trnh pht trin.
Uoc luong cua kch thuoc m trong dng cp kin trc l su dung ba thnh phn:
1. Uoc luong tng s dng m moi duoc su dungd pht trin.
2. Uoc luong tuong duong s dng cua m ngun (ESLOC) tnh ton dua trn m
hnh su dung lai.
3. Uoc luong s dng cua m phai suad ph hop voi yu cu.
Bauoc luong trn duoc cng vo d c tng kch thuoc m trong KSLOC m ban
su dung trong cng thuc tnh ton su n luc. Thnh phn cui cng cua su uoc luong -
tng s dng cua m d thay di - phan nh trn thuc t l yu cu phn mn lun thay di.
Cc chuong trnh h thng phai phan nh cc thay di d d cng thm m cho vic pht
trin. Tt nhin, uoc luong s dng cua m m n se thay di l khng d, v n se thuong
tro nn khng chc chn trong cc dcdim hon l trong uoc luong su pht trin.
S mu gioi han (B) trong cng thuc tnh ton su c gng c ba gi tri kha thi trong
COCOMO I. N c lin h toi cp cuad phuc tap du n. Nhu du n tro nn phuc tap hon,
hiu qua cua vic tng kch thuoc h thng tro nn nhiu nghia. Tuy nhin, t chuc thuc
tin v san xut tt c th diu chinh su lng ph. N duoc cng nhn trong COCOMO II,
noi m dy cc gi tri cua s mu B l lin tuc hon l roi rac. S mu trn ly co so trn nm
h s phn muc, duocdua ra trong hnh 26.9. Cc nhn t ny l ty l voi su mucdim tu
rt thpdn rt cao (5 dn 0). Ban nn thm vo ty l, chia chng cho 100 v cng vo kt
qua 1.01 d c s mu c th su dung.
D minh hoa diu ny, tuong tuong rng mt t chucdang ni v du n trong min
m c t kinh nghimdi truoc. Khch hng du n khng xc dinh qu trnh duoc su dung
v khng cho php thoi gian trong lich trnh du n cho phn tch mao him. Nhm pht
trin moi phai duadng thoi cc cng cu cua h thng. T chucd gndyddua chuong
http://www.ebook.edu.vn 145
trnh pht trin qu trnh vo v c ty l nhu trong t chuc cp 2 theo m hnh CMM ( xem
Chuong 28). Gi tri kha thi cho su dung ty l cua s mu tnh ton boi:
Hnh 8.9 H s muc su dung trong tnh ton s mu trong COCOMO II
H s muc Giai thch
C tin l Phan nh kinh nghim truoc d cua t chuc voi loai du n d.
Rt thp l khng c kinh nghim; Rt cao l t chuc l mt
nhm rt thnh cng voi minung dungd.
Su mn deo cua du n Phan nh mucd cua su mn deo trong qu trnh pht trin. Rt
thp l cc qu trnh bt buc duoc su dung. Rt cao l tp hop
khch hng chi l cc muc tiu chung.
Giai quyt kin trc/su
mao him
Phan nh su mo rng cua cc phn tch mao himduoc thuc
hin. Rt thp l t su phn tch. Rt cao l cc phn tch hon
thnh v vuot qua mao him.
Lin kt trong nhm Phan nh tai sao mt nhm hiu tung nguoi v lm vic chung
lai tt. Rt thp l rt kh tuong tc; Rt cao l c su kt hop v
hiu qua v khng c cc vnd xu trong giao tip.
Su l thun thuc Phan nh su su l thun thuc cua t chuc. Cc tnh ton cua gi
tri ny phu thuc trong Cc cu hoi v su thnh thuc CMM,
nhung su uoc luong c th hon thnh bng cch tr su l thun
thuc CMM tu cp 5.
- C tin l D l mt du n moi cho t chuc - Ty l Thp (4)
- Su mn deo cua du n khng c su bao gm khch hng - Ty l rt cao (1)
- Giai quyt kin trc/su mao him khng c cc phn tch duoc thuc hin -
Ty l rt thp (5)
- Lin kt trong nhm Nhm moi nn khng c thng tin ty l trung bnh
(3)
- Su l thuan thuc Mt s diu khin qu trnh trong nhm - ty l trung
bnh (3)
Tng cc gi tri l 16, v th tnh ton s mu bng cch thm 0.16 v 1.01, duoc
1.17.
Cc thuc tnh ( Hnh 8.10) duoc su dung trong diu chinh uoc luong ban du v
tao h s M trong m hnh kin trc duoc chia ra 4 lop:
1. Thuc tnh san phm lin quan dn dc tnh yu cu cua san phn duoc
pht trin
2. Thuc tnh my tnh l bi p dt trong phn mm boi nn tang phn cung.
3. Thuc tnh con nguoi l s nhn m n ly kinh nghim v kha nng cua
con nguoi trong cng vic trong du n d dua ra bo co.
4. Thuc tnh du n l lin quan voi cc dc tnh ring bit cua du n pht
trin phn mn
http://www.ebook.edu.vn 146
Thuc tnh Phn loai M ta
RELY San phm Yu cud tin tuong h thng
CPLX San phm D phuc tap cua cc phn h thng
DOCU San phm Bo co mo rng theo yu cu
DATA San phm Kch thuoc cua co so d liuduoc su dung.
RUSE San phm Yu cu ty l thnh phn su dung lai
TIME My tnh Su phu thuc thoi gian thuc thi.
PVOL My tnh Su khng ndinh cua nn tang pht trin
STOR My tnh B nho phu thuc vo my
ACAP My tnh Kha nng phn tch du n
PCON Con nguoi Kha nng lm vic lin tuc cua con nguoi
PCAP Con nguoi Kha nng lp trnh vin
PEXP Con nguoi Kinh nghim lp trnh vin trong min du n
AEXP Con nguoi Kinh nghim phn tch trong min du n
LTEX Con nguoi Kinh nghim ngn ng v cng cu
TOOL Du n Cng cu su dung trong phn mn
SCED Du n Nn lich trnh pht trin
SITE Du n Mo rng lm vic kt hop v giao tip chung
Hnh 8.11 th hin chi ph dinh huong nh huong dnuoc luong su c gng. Ti d
dua gi tri cua s mu l 1.17 nhu d thao lun o trn v gia su RELY, CPLX, STOR,
TOOL v SCED l nhng chi ph dinh huong chu yu trong du n. Tt ca trong chi ph
dinh huong khc c gi tri l 1, v th chng khng nh huong d su tnh ton su c gng.
Hnh 8.11 Su anh huong cua chi ph dinh huongd uoc luong
Gi tri s mu
Kch thuoc h thng (bao gm cc h s ti su dung v cc
yu cu d thay di)
Uc lung ban du COCOMO khng c chi ph d|nh
hung
1.17
128000 DSI
730 ngui-cc thng
Kha nng tin tuong Rt cao, h s=1.39
http://www.ebook.edu.vn 147
D phuc tap
Phu thuc b nho
Cng cu su dung
Lich trnh
Diu chinh uc lung COCOMO
Rt cao, h s=1.3
Cao, h s=1.21
Cao, h s=1.12
Tng nhanh, h s=1.29
2306 ngui-cc thng
Kha nng tin tuong
D phuc tap
Phu thuc b nho
Cng cu su dung
Lich trnh
Diu chinh uc lung COCOMO
Rt thp, h s=0.75
Rt thp, h s=0.75
Khng, h s=1
Rt cao, h s=0.72
Bnh thuong, h s=1
295 ngui-cc thng
Trong hnh 8.11 c gn cc gi tri lon nht v nho nht dn cc chi ph dinh huong
chnhd th hin lm th no chng anh huongdnuoc luong su c gng. Cc gi tri duoc
ly tu COCOMO II (Boehm). Ban c th thy l cc gi tri cao cho chi ph dinh huong dn
vic uoc luong chi ph l hon ba ln uoc luong ban du, nguoc lai gi tri thp giamuoc
luong chi cn mt phn ba so voi ban du. Su khc bit lon cua hai loai ny l su chuyn
giao kinh nghim gia cc minung dung.
Cng thuc d xut boi nguoi pht trin m hnh COCOMO II phan nh kinh
nghim v d liu cua ho, nhung n l m hnh rt phuc tap d hiu v su dung. C rt
nhiu thuc tnh v vn d khng chc chn d uoc luong gi tri cua n. Co ban l mi
nguoi dung cua m hnh nn kim tra kch c m hnh v gi tri thuc tnh theo d liu du
n lich su cua n, nhu n se phan nh tnh hung anh huongdn m hnh.
Trong thuc tin, tuy nhin, mt s t cc t chuc c du d liu tu cc du n qu khu
trong dang m hnh h tro. Thuc t su dung COCOMO II v th pha bt du voi cc gi tri
chung cho cc thuc tnh cua m hnh, v n l khng th cho nguoi dng d bit lm th
no lin kt chng. Diud c nghia l thuc t su dung COCOMO II l bi han ch. Cc t
chuc rt lon c th c ti nguyn dur d thch nghi v su dung m hnh COCOMO II. Tuy
nhin, phn lon cc cng ty, chi ph cho vic xc dinh v hoc tpd su dung m hnh thut
ton nhu COCOMO l rt cao m n khng th p dung.
8.6. M hnh chi ph giai thut trong k hoch d n
Mt trong cc m hnh ho chi ph giai thut lon nhn l so snh cc cch khc
nhau cua vicdu tu cho vic giam chi ph du n. D l su quan trong ring bit noi ban c
th tao chi ph phn cung/phn mn phi thuong mai v noi ban c th c cc nhn vin moi
voi kha nng dc bit. M hnh m giai thut gip bandnh gi su mao him cua mi tuy
chon. p dung m hnh chi ph d biu thi ti chnh m n kt hop voi cc quyt dinh quan
l khc nhau.
Xem st h thng phuc tap voi cc cuc th nghim. Cc cuc th nghim phai dng
tin cy v cht che. S luong cua cc ch so ho phai l nho nht. Trong gioi han cua m
hnh COCOMO, cc h s cua su phu thuc vo my tnh v d tin cy l lon hon 1.
C 3 thnh phnduocdua ra bo co trong vic chi ph du n:
1. Chi ph cua phn cung muc tiu d thuc thi h thng.
http://www.ebook.edu.vn 148
2. Chi ph cho nn tang (my tnh v phn mn) d pht trin h thng.
3. Chi ph cua yu cu c gng cho pht trin du n.
Trong hnh 8.13 th hin mt s tuy chon c th cho du n. N bao gm vic them
cc phn cung muc tiu d giam chi ph phn mnd du tu tt hon cc cng cu pht trin.
Thm chi ph phn cung c th duoc chp nhn boi v h thng l h thng chuyn
dung. Nu phn cung l phuc tap trong cc san phm tiu dung, tuy nhin, du tu trong
phn cung d giam chi ph phn mn se lm tng s don vi cua san phm, bt chp s
luongduoc bn.
Hnh 8.13 th hin phn cung, phn mn v tng chi ph cho tuy chon A-F th hin
trong hnh 8.12. p dung m hnh COCOMO II chi ph dinh huong bo truoc su c gng
l 45 nguoi- cc thng d pht trin h thng phn mn phuc tap cho ung dung. Chi ph
trung bnh cho mi nguoi-thng l $15000.
Cc h s lin quan l co so d luu tr v thuc thi phu thuc thoi gian (TIME v
STOR), kha nng su dung cua cng cu tro gip d pht trin h thng (TOOL), v kinh
nghim cua nhm pht trin (LTEX). Trong tt ca cc tuy chon, h s tin tuong duoc
(RELY) l 1.39, n cho bit nghia cua vic pht trin cc h thng tin cy.
Chi ph phn mn (SC) duoc tnh nhu sau:
SC =Uoc luong su c gng * RELY * TIME * STOR * TOOL * EXP * $15000
Tuy chon A m ta chi ph cua vic xy dung h thng voi cc tro gip v nhn vin
c sn. Nu cc m ta l co so cho so snh. Tt ca cc tuy chon khc bao gm ph tn phn
cung hoc tuyn them nhn vin. Tuy chon B th hin su cp nht phn cung l khng cn
thit giam chi ph. Cc nhn vin thiu kinh nghim voi phn cung moi se lm tng cc h
s STOR v TIME. N thuc su them chi ph hiu qua d cp nht b nh hon l cu hnh
my tnh.
Hnh 8.12: Tuy chon quan l
http://www.ebook.edu.vn 149
Hnh 8.13 Chi ph cua tuy chon quan l
Bang 8.13 Chi ph cua cc tuy chon quan l
Ty
chon
Rely Stor Time Tools Ltex Tng
cng
Chi ph
phm
mm
Chi
ph phn
cung
Tng
chi ph
A 1.39 1.06 1.11 0.86 1 63 949393 100000 1049393
B 1.39 1 1 1.12 1.22 88 1313550 120000 1402025
C 1.39 1 1.11 0.86 1 60 895653 105000 1000653
D 1.39 1.06 1.11 0.86 0.84 51 769008 100000 897490
EX 1.39 1 1 0.72 1.22 56 844425 220000 1044159
F 1.39 1 1 1.12 0.84 57 851180 120000 1002706
Ty chon D dua ra chi ph thp nht cho tt ca cc dnh gi co ban. Khng ph tn
phn cung no duoc thm vo nhung cn thu nhn vin moi cho du n. Nu cng ty c
sn diu ny th dy c th l ty chon tt nht. Nu khng, ho phai duoc thu tu bn
ngoi, mt vic cn nhiu chi ph v c nhiu rui ro. Diu ny c nghia l loi th v chi ph
cua ty chon ny khng lon nhu duoc dua ra boi bang 8.13. Ty chon C tit kim $50000
voi vic gn nhu khng c rui ro km theo. Nhng nh quan l du n bao thu c th thch
ty chon ny hon l ty chon nhiu rui ro hon D.
Cc so snh chi ra su quan trong cua kinh nghim nhn vin nhu l mt thua s.
Nu nhn luc c cht luong tt voi kinh nghim ph hop duoc thu th c th giamdi
nhiu chi ph du n. Diu ny nht qun voi thao lun v h s nng sut trong phn 26.1.
N cung bc l rngdu tu phn cung moi v cng cu c th khng hiu qua v chi ph.
Mt s ki su c th thch ty chon ny v n cho ho co hi hoc hoi h thng moi. Tuy
nhin, su mt mt kinh nghim tc dng nhiu ln chi ph h thng hon su tit kim tu vic
su dung h thng phn cung moi.
8.7. Nhn vin v khoang thi gian cua d n
Cung nhu vic uoc luong cng lao dng cn thit d pht trin h thng v chi ph
chung cua du n., nguoi quan l du n cn phai uoc luong thoi gian du n cnd pht trin
v khi no nhn vin cn lm vic cho du n. Thoi gian pht trin du n duoc goi l lich
trnh du n. Dn dn, cc t chuc se yu cu thoi gian pht trin du n ngn hon d san
phm cua ho dua ra thi truong truocdi thu.
Mi quan h gia s nhn vin dang lm vic cho du n, tng cng lao dng cn
v thoi gian pht trin du n l khng tuyn tnh. Khi s nhn vin tng, c th cn nhiu
cng lao dng hon. Nguyn nhn l ho su dung nhiu thoi gian hon d giao tip v xc
dinh giao din gia cc phn cua h thng m duoc nguoi khc pht trin. Gpdi s nhn
vin (v du) do d khng c nghia l thoi gian du n cn mt nua.
http://www.ebook.edu.vn 150
M hnh COCOMO bao gm cng thuc d uoc luong lich biu thoi gian(TDEV)
cn d hon thnh du n. Cng thuc tnh thoi gian l ging nhau cho tt ca cc cp
COCOMO:
TDEV =3 x (PM)
(0.33+0.2*(B-1.01))
PM l su uoc tnh cng lao dng v B l s mu duoc tnh, nhu d thao luno trn
(B l 1 cho m hnh nguyn mu som) Su uoc tnh ny du don lich trnh trung bnh cho
du n.
Tuy nhin, lich trnh du n duoc du don v lich trnh cn boi k hoach du n
khng nht thit ging nhau. Lich trnh duoc ln k hoach c th ngn hon hoc di hon k
hoach du n trung bnh duoc du don. Tuy nhin, r rng l c gioi han cho vic mo rng
thay di lich trnh, va m hnh COCOMO II du don diu ny:
TDV =3 x (PM)
(0.33+0.2*(B-1.01))
x SCEDPercentage/100
SCEDPercentage l phn trm tng thm hoc giamdi trong lich trnh trung bnh.
Nu cc con s duoc du don th khc nhiu so voi lich trnh duoc ln k hoach, n m chi
rng c rui ro cao trong vnd pht hnh phn mm khi duoc ln k hoach.
D minh hoa tnh ton lich trnh pht trin COCOMO, gia su rng 60 thng cng
duoc uoc luongd pht trin mt h thng phn mm. (ty chon C trong bang 8.12). Gia
su rng gi tri cua s mu B l 1.17. Tu phuong trnh lich trnh, thoi gian cnd hon thnh
du n l :
TDEV =3 x (60)
0.36
=13 thng.
Trong truong hop ny, khng c su nn hay mo rng lich trnh, v s hang cui
cng trong cng thuc khng anh huongdn vic tnh ton.
Mt hm th vi cua m hnh COCOMO l thoi gian cnd hon thnh du n l
mt hm cua tng cng lao dng cn cho du n. N khng phu thuc vo s ki su phn
mmdang lm vic. Diu ny xc nhn quan dim l khi thm nhn luc cho du n m c
lich trnh khng chc chn se gip lich trnh duoc thu hi lai. Myers(Myers, 1989) thao
lun vnd tng tc lich trnh. ng d sut rng du n c th roi vo vnd lon nu ho c
pht trin phn mm m khng duoc cho du thoi gian.
Vic chia cng lao dng cn thit cho du n boi lich trnh pht trin khng dua ra
chi dn c ch v s nguoi cn cho di du n. Ni chung, chi mt s nho nhn luco lc bt
du du n d thuc hin thit k du. Di sau d xy dung toi cao dim trong sut qu trnh
pht trin va kim thu h thng, v cui cng kch c nhm bindi khi bt du trin khai.
Vic xy dung nhanh nhn vin du n duoc dua ra d tuong quan voi vic lich trnh du n
khng dng thoi han. Nguoi quan l du n do d nn trnh som thm qu nhiu nhn vin
vo du n trong chu k sng cua n.
Vic xy dung ngun luc lao dng c th duoc m hnh ha bng ci goi l duong
cong Rayleigh (Londeix, 1987) v m hnh uoc luong cua Putnam (Putnam, 1978) ci m
http://www.ebook.edu.vn 151
kt hop m hnh cua b tr nhn vin du n dua vo cc duong cong ny. M hnh Putnam
cung bao gm thoi gian pht trin nhu l nhn t cha kha. Khi thoi gian du n duoc giam
xung, cng lao dng cnd pht trin h thng tng theo hm mu.
Nhng dim chnh:
o Khng c mi quan h tt yu gia gi cn tra cho mt h thng v chi ph
pht trin cua n. Nhn t t chuc c th mun gi phai tra tngd b cho
rui ro, hoc tngd c loi th canh tranh.
o Nhng nhn t tc dng ln nng sut phn mm bao gm thi d c nhn
(nhn t ni tri), kinh nghim min, qu trnh pht trin, quy m cua du
n, cng cu h tro v mi truong lm vic.
o Phn mm thuong duoc dinh gi d thu duoc hopdng, v chuc nng cua
h thng sau dduocdiu chinhd ph hop voi gi duocuoc luong.
o C nhiu ki thut uoc luong chi ph phn mm khc nhau. Trong vic
chun bi dnh gi, mt vi ki thut khc nhau nn duoc su dung. Nu cc
dnh gi chnh nhau nhiu, th c nghia l c cc thng tin dnh gi khng
tuong xung.
o M hnh chi ph COCOMO II l m hnh chi ph thut ton duoc pht trin
tt m tnh dn cc thuc tnh du n, san phm, phn cung v c nhn khi
cng thuc ha mt uoc luong chi ph. N cung bao gm phuong tin uoc
luong lich trnh pht trin.
o M hnh chi ph thut ton c th duoc suu dung d h tro phn tch dinh
luong tuy chon. Chng cho php cc ty chon khc nhau cua chi ph duoc
tnh ton v, thm ch voi li, cc ty chon c th duoc so snh dua trn
mucdch.
o Thoi gian cn d hon thnh mt du n khng don gian chi l ti l voi s
nguoi dang lm vic cho du n. Vic thm nguoi vo du n mun co th
tng thay v giam thoi gian cnd kt thc du n.
Dc thm:
Ten unmyths of project estimation Mt bi bo thuc dung thao lun cc kh khn
thuc t cuauoc luong du n v thch thuc mt vi gia thit co ban trong linh vuc ny. (P.
Armour, Comm. ACM, 45(11), November)
Software Cost Estimation with COCOMO II. Dy l mt cun sch r rng v m
hnh COCOMO II. N cung cp m ta dy du v m hnh voi nhiu v du v bao gm cc
phn mm thuc hin m hnh. N thuc su chi tit v khng d doc. Bi bo cua Boehm o
duoi, theo quan dim cua ti, l mt su gioi thiu d hon. (B.Boehm, et al, 2000, Prentice
Hall)
Software Project Management:Reading and Cases. Mt b suu tp cc bi bo v
truong hop nghin cuu v quan l du n m ni ring l manh trong trong m hnh ha chi
ph giai thut. (C.F.Kemerer (ed.) 1997, Irwin)
http://www.ebook.edu.vn 152
Cost models for future software life cycle processes : COCOMO II. Gioi thiu m
hnhuoc luong chi ph COCOMO II , bao gm co so cho cc cng thuc duoc su dung. D
doc hon quyn sch cui cng.( B. Boehm et al. Annals of software Engineering, 1 Balzer
Science Publisher, 1995)
Bi tp.
3. Duoi han canh no mt cng ty c th di gi cao hon cho h thng phn mm so
voi gi tnh boi uoc luong chi ph cng thm li sut bnh thuong.
4. M ta hai d do m duoc su dungd do nng sut lp trnh vin. Bnh lun ngn gon
v thun loi v bt loi cua tungd do.
5. Trong pht su pht trin cua cc h thng nhng lon, d sut nm nhn t m c th
c tc dng londn nng sut cuadi pht trin phn mm.
6. Uoc luong chi phi vn c sn rui ro bt k ki thut uoc luong no duoc su dung. D
sut bn cch lm giam rui ro trong uoc luong chi ph.
7. Tai sao nn su dung vi ki thut uoc luong d uoc luong chi ph cua h thng phn
mm lon, phuc tap.
8. Dua ra 3 nguyn nhn tai sao cc uoc luong chi ph giai thut duoc chun bi trong cc
t chuc khc nhau khng th so snh truc tip.
9. Giai thch lm th no cch tip cn thut ton voi uoc luong chi ph c th duoc su
dung boi nhng nguoi quan l du n d phn tch ty chon. D sut mt tnh hung
m nguoi quan l c th chon cch tip cn m khng dua trn chi ph du n thp
nht.
10. Mt s du n phn mm rt lon bao gm vic vit hng triu dng m. D sut cc
m hnh uoc luong chi ph hu dung cho cc du n nhu th nhu th no. Tai sao cc
gia thit chng dua trn c th khng dng voi cc h thng phn mm rt lon.
11. C hop l khng vic cng ty dua ra gi thp cho hopdng phn mm bit rng cc
yu cu l nhp nhng v ho c th tnh gi cao cho nhng thay di v sau duoc d
nghi boi khch hng.
Nhng nguoi quan l c nn su dung nng sut duocdo trong sut tin trnh dnh gi nhn
vin khng? Nhng yu t an ton no cn thit d dam bao cht luong khng bi anh
huong boi diu ny ?
http://www.ebook.edu.vn 153
CHUONG 9: QUAN L CHT LUONG PHAN MEM
Muc tiu:
Cc muc ach cua chuong ny l gioi thiu quan l chat luong phan mm v a ao
phan mm. Trong chuong ny ban s:
Tm hiu v qu trnh quan l chat luong v cc hoat ang qu trnh trung tm
cua su aam bao cua chat luong, lap k hoach chat luong v kim sot chat
luong.
Tm hiu su quan trong cua cc chuan muc trong qu trnh quan l chat luong.
Hiu a ao phan mm l g v su khc bit gia a ao tin nghim v a ao
aiu khin.
Tm hiu cch ao c th hu ch trong vic anh gi cc thuc tnh chat luong
san pham.
C hiu bit v cc gioi han hin tai v a ao phan mm.
9.1. Cht lung qu trnh v cht lung san phm:
Cht luong cua phn mm pht trin manh me tu 15 nm v truoc. Mt trong cc
l do cho su pht trin ny l do cc cng ty d p dung cc ki thut v cng ngh moi, v
du nhu vic su dung cc pht trin huong di tuong v su kt hop cung cung cp cng
ngh phn mm voi su h tro cua my tnh. Thm vo d th c nhng kin thuc nhiu hon
v tm quan trong cua vic quan l cht luong san phm v vic p dung cc k thut quan
l cht luong tu cc nh san xut trong cng nghip pn mm.
Tuy nhin, cht luong phn mm l mt khi nim phuc tap, n khng th so snh
mt cch truc tip voi cht luong trong san xut.Trong san xut, khi nim cua cht luong
duoc dua ra l: san phm pht trin phai ph hop voi dc ta cua n ( Crosby, 1979). Nhn
chung, dinh nghia ny duoc p dung cho tt ca cc san phm, tuy nhin di voi h thng
phn mm, nay sinh mt s vnd voi dinh nghia ny:
1. Dc ta phai duoc dinh huong toi cc dc trung cua san phm m khch hng mong
mun. Tuy nhin, t chuc pht trin c th cung c cc yu cu ( nhu cc yu cu
v tnh bao tr) m khng duoc k dn trong cc dc ta.
2. Chng ta khng bit lm cch no dinh r cc dc trung cht luong ( v du nhu tnh
bao tr duoc) mt cch r rng.
3. Nhu ta d ni o phn I, n bao gm cc yu cu v k thut, vic vit duocdy du
ccdc ta phn mm l mt cng vic rt kh khn. V vy, mc d san phm phn
mm c th ph hop voi cc dc ta cua n, nhung nguoi su dung c th khng coi
d l san phm cht luong cao boi v n khng ph hop voi nhng mong doi cua
ho.
Ban phai nhn ra nhng vnd do su tn tai cc thng s phn mm, v vy vic
tao ra cc thit k cht luong khng chi phu thuc vo vic c mt dc ta hon hao. Ni
ring, cc thuc tnh phn mm nhu kha nng bao tr duoc, tnh bao mt hay tnh hiu qua
khng th duoc dinh r. Tuy nhin, chng c tc dng to londn cht luong cua h thng.
Ta se bn dn cc thuc tnh ny o trong phn 9.3.
http://www.ebook.edu.vn 154
Mt s nguoi nghi rng cht luong c th dat duoc bng cch dinh nghia cc
chun, v cc thu tuc cht luong c tnh t chucd kim tra nhng chun ny c duoc tun
theo boi cc di pht trin phn mm. Nhng tranh ci cua ho l vic cc chunduoc tm
luoc thi quen tt hay khng, vic tun theo cc thi quen d chc chn dn dt dn cc
san phm cht luong cao. Trong thuc t, tuy nhin, ti nghi rng cn nhiu su quan l cht
luong hon l cc chun v duoc kt hop voi cng vic phuc tap d dam bao rng nhng
chun ny duoc tun theo.
Cc nh quan l cht luong tt c muc tiu l pht trin mt vn ho cht luong
noi m trch nhim cua moi cam kt cho su pht trin san phmd dat toi mucd cao cua
cht luong san phm. Ho khuyn khch cc nhm chiu trch nhim cho cht luong cng
vic cua mnh v d pht trin cc cch tipd cai tin cht luong. Khi m cc chun v
cc thu tuc l phn co ban cua quan l cht luong, kinh nghim cua nguoi quan l cht
luong cho thy c nhng mong doi khng th nhn thy duoc v cht luong phn mm (
tnh bt mt, tnh d doc, ) m khng th duoc th hin mt cch r rng theo cc chun.
Chng phuc vu cho nhng nguoi quan tm dn nhng kha canh khng nhn thy duoc cua
cht luong v khuyn khch cch cu xu chuyn nghip trong tt ca cc thnh vin cua
nhm.
Hnh 9.2: Quan l cht luong v quan l phn mm
Vic vic quan l cht luongdduoc chnh thuc ho ni ring l rt quan trongdi
voi cc nhm c nhim vu pht trin cc h thng lon v phuc tap. Ti liu v cht luong
l mt ban ghi v nhng vic d lm boi mi nhm nho trong mt du n. N tro gip con
nguoi kim tra nhng nhim vu quan trong khng duoc php qun, hay mt phn cua
nhm tao ra cc gia dinh v nhng g m cc nhm khc d lm. Ti liu ghi cht luong
cung c nghia v vic trao di trong khoang thoi gian tn tai cua h thng. N cho php
cc nhm chiu trch nhim cho su pht trin cua h thng th hin nhung g m m nhm
pht trind thuc hin.
Di voi nhng h thng nho, quan l cht luong vn rt quan trong, nhung voi mt
cch tip cndon gian honduoc p dung. Khng cn thit nhiu cng vic giy to boi v
mt nhm pht trin nho c th trao di truc tip. Vnd then cht cht luong cho su pht
trin cc h thng nho l vic thit lp mt vn ho cht luong v bao dam rng tt ca
cc thnh vin nhm c tip cn mt cch tch cuc voi cht luong phn mm.
Qu trnh pht trin
phn mm
Qu trnh quan l
cht luong
D
1
D
2
D
3
D
4
D
5
Cc chun v
cc thu tuc
K hoch
Cht luong
Bo co r sot cht luong
http://www.ebook.edu.vn 155
Quan l cht luong phn mm cho cc h thng lon c th duoc chia vo 3 hoat
dng chnh.
1. Su aam bao chat luong: su thit lp cua mt khung cua t chuc cc thu tuc v cc
chund huongdn san phm cht luong cao.
2. Lap k hoach chat luong: Vic chon lua cc thu tuc v cc chun thch hop tu
khung ny, duoc sua cha cho cc du n phn mm ring bit.
3. Kim sot chat luong: Dinh nghia v dua ra cc qu trnh d dam bao rngdi pht
trin phn mm phai tun theo cc thu tuc v cc chun cht luong du n.
Quan l cht luong cung cp mt kim tra dc lp trong qu trnh pht trin phn
mm. Qu trnh quan l cht luong kim tra muc d thuc hin du n d dam bao rng
chng ph hop voi cc chun v muc tiu cua t chuc. ( Hnh 9.1). Di dam bao cht luong
dc lp voi di pht trin, v vy ho c th tao ra cc cch nhn nhn khc nhau v phn
mm. Ho bo co cc vnd v kh khn toi nguoi quan l c thm quyn trong t chuc.
Hnh 9.2 Cht luongduoc dua trn qu trnh.
Mt di dc lp chiu trch nhimdi voi vic quan l cht luong v se bo co toi
nguoi quan l du n o cp cao hon. Di quan l cht luong khng duoc lin kt voi bt cu
nhm pht trin ring bit no nhung nhn trch nhim cho vic quan l cht luong. L do
cho vic ny l nguoi quan l du n phai duy tr ngn sch du n v lp lich du n. Nu
vnd xut hin, ho c th bi li cun vo vic thoa hip cht luong san phm, v vy ho
phai lp lich. Mt di quan l cht luongdc lp baodam rng muc tiu t chuc cua cht
luong khng bi thoa hip boi ngn sch ngn han v chi ph lp lich.
9.2. Cht lung qu trnh v cht lung san phm:
Mt gia dinh co ban cua quan l cht luong l cht luong cua qu trnh pht trin
anh huong truc tipdn cht luong cua cc san phm. Su gia dinh ny do h thng cc nh
san xut, noi m cht luong san phm lin h mt cch mt thit toi qu trnh san xut.
Trong h thng san xut tu dng, qu trnh ny bao gm , cu hnh, ci dt, v thao tc
my pht trin trong qu trnh. Mt khi cc my thao tc mt cch chnh xc, cht luong
san phm tu nhin se tun theo. Ban c th do cht luong cua san phm v thay di qu
trnh cho dn khi ban dat duoc muc d cht luong nhu mong mun. Hnh 9.2 cung cp
cch tip cn qu trnh co band dat duoc cht luong san phm.
Dinh nghia
qu trnh
Pht trin
san phm
Dnh gi cht
luong san phm
Chun ho
qu trnh
Cai tin
qu trnh
Cht
luong ?
Khng
C
http://www.ebook.edu.vn 156
C su lin kt r rng gia cht luong cua qu trnh v cht luong cua san phm
trong san xut, boi v qu trnh chun ho v gim st tuong di d. Mt khi h thng san
xut duoc kim tra, chng c th duoc chay lai nhiu ln cho du ra l cc san phm c
cht luong cao. Tuy nhin, phn mm khng phai l san xut, nhung duoc thit k. Pht
trin phn mm l mt su sng tao hon l mt qu trnh my mc, v vy su anh huong cua
cc ki nng v kinh nghim ring l rt dng k. Nhn t bn ngoi, nhu tnh moi la cua
ung dung hay suc p cua thuong mai cho mt san phm moi, cung anh huong dn cht
luong san phm bt chp qu trnh duoc su dung.
Trong su pht trin phn mm, mi quan h gia cht luong qu trnh v cht
luong san phm l phuc tap hon. Vic do cc thuc tnh cht luong phn mm l rt kh
khn, nhu kha nng bao tr duoc, ngay ca sau khi su dung phn mm trong mt thoi gian
di. Do d, rt kh d ni xem cc dc trung qu trnh anh huong nhu th no dn cc
thuc tnh. Hon th na, boi v cc quy dinh cua thit k v sng tao trong qu trnh phn
mm, ta khng th du don qu trnh thay di nhu th no se anh huong dn cht cua
phm. Tuy nhin, nhiu chuyn gia chi ra rng qu trnh cht luong c anh huongdng k
dn cht luong cua phn mm. Quan l v pht trin cht luong qu trnh v vic cai tin
th tt yu dndn c t khim khuyt hon trong san phm phn mmduoc pht hnh.
Quan l qu trnh cht luong bao gm:
1. Dinh nghia cc chun qu trnh nhu bng cch no v khi no nhng r sot duoc
chi dao.
2. Gim st qu trnh pht trind dam bao rng cc chunduoc tun theo.
3. Bo co qu trnh phn mmdn quan l du n v nguoi mua phn mm.
Mt vn d voi su dam bao cht luong dua trn qu trnh do l di dam bao cht
luong (QA- Quanlity Asurrance) c th bt buc yu cu qu trnh chun phai duoc su
dung bt chp kiu loai phn mmdang duoc pht trin. V du, cc chun cua cht luong
qu trnh cho h thng quan trong c th chi ra rng cc dc ta phai duoc hon thnh v
duoc thng qua truoc khi vic thuc thi bt du. Tuy nhin di voi mt s h thng quan
trong c th yu cu nguyn mu, khi d cc chuong trnh duoc thuc thi m khng cndc
ta dy du. Ti d c kinh nghim trong nhng truong hop ny khi m di quan l cht
luong khuyn rng mu ny khng duoc tin hnh boi v cht luong ban mu khng th
kim sot duoc. Trong mt s truong hop, nguoi quan l cp cao phai can thip d bao
dam rng qu trnh cht luong tro gip nhiu hon l gy can tro cho su pht trin san
phm.
9.3. Dam bao cht lung v cc chun cht lung.
Dam bao cht luong l qu trnh cua vic dinh r lm cch no d cht luong san
phm c th dat duoc v lm th no d cho t chuc pht trin bit phn mm c yu cu
cht luongo cpd no. Dam bao cht luong tin trnh c lin quan du tin dn vicdinh
ra hoc chon lua cc chun se duoc p dung cho qu trnh pht trin phn mm hay san
phm phn mm. Nhu l mt phn cua qu trnh dam bao cht luong, ban c th chon lua
hoc tao ra cc cng cu v cc phuong php d phuc vu cho cc chun ny.
C 2 loai chun c th duoc p dung nhu l mt phn cua qu trnh dam bao cht
luong l:
http://www.ebook.edu.vn 157
1. Cc chuan san pham: Nhng chun ny p dung cho san phm phn mm pht
trin. Chng bao gm cc dinh nghia cuadc ta, nhu l cu trc cua ti liu yu
cu; cc chun ti liu, nhu cc tiu d giai thch chun cho dinh nghia lop di
tuong; v cc chun m d dinh r lm cch no ngn ng lp trnh c th duoc su
dung.
2. Cc chuan qu trnh: Nhng chun ny dinh ra qu trnh nn duoc tun theo trong
qu trnh pht trin phn mm. Chng c th bao gm cc vic xc dinh cc dc ta.
Qu trnh thit k v kimdinh qu trnh v mt ban m ta cc ti liu nn duoc ghi
lai trong giai doan cua nhng qu trnh ny.
Nhu ti d ni o muc 27.1, c mt su lin h rt gn gia cc chun san phm v
chun qu trnh. Cc chun san phm p dung cho du ra cua qu trnh phn mm v trong
nhiu truong hop, cc chun qu trnh bao gm cc cc hoat dng qu trnh ring bit m
dam bao rng cc chun san phmduoc tun theo.
Cc chun phn mm l rt quan trong v nhng l do sau:
1. Cc chun phn mm dua trn hiu bit v nhng thuc tin thch hop nht cho cng
ty. Kinh nghim ny thuong chi dat duoc sau rt nhiu ln thu nghim v li. B
xung n vo cc chun gip cho cng ty trnh su lp lai sai lm trong qu khu. Cc
chun chuadung cc kinh nghim tung trai ny rt c gi tri cho t chuc.
2. Cc chun phn mm cung cp mt ci khung cho vic thuc thi qu trnh dam bao
cht luong. Dua ra cc chun tng kt thuc tin, dam bao cht luong bao gm vic
baodam rng cc chunduoc tun theo mt cch cht che.
3. Cc chun phn mm tro gip tnh lin tuc khi m mt nguoi tip tuc cng vic cua
nguoi khc d bo do. Cc chun dam bao rng tt cc k su trong t chuc chp
nhn cng thi quen. Do vy cng suc nghin cuu khi bt du cng vic moi se
giam xung.
Su pht trin cua cc chun du n k thut phn mm l qu trnh rt kh khn v
tn thoi gian. Cc t chuc quc gia, quc t nhu US DoD, ANSI, BSI, NATO v IEEE chu
dng tao ra cc chun. Nhng chun ny l chun chung m c th duoc p dung o pham
vi cua cc du n. Cc t chuc nhu NATO v cc cc t chuc bao v c th yu cu cc
chun cua ho duoc tun the trong cc hopdng phn mm.
Cc chun quc gia v quc t d pht trin bao gm ca cng ngh k thut phn
mm, ngn ng lp trnh nhu J ava, v C++, cc k hiu nhu l biu tuong band, cc thu
tuc cho cc yu cu nhn v vit phn mm, cc thu tucdam bao cht luong, kim tra phn
mm v qu trnh thng qua (IEEE, 2003).
Cc nhm dam bao cht luong m dang pht trin cc chun cho cng ty thuong
dua trn chun quc gia v quc t. Su dung nhng chun ny nhu l dim bt du, nhm
dam bao cht luong phai thao ra mt ti liu tm tt chun. Ti liu ny phai dinh ra nhng
tiu chunduoc yu cu boi t chuc cua ho. V du v nhng tiu chun m c th k dn
trong ti liu sch tm tt trong bang 27.3.
http://www.ebook.edu.vn 158
Cc chun san phm Cc chun qu trnh
Mu r sot thit k Spdt r sot thit k
Cu trc tu liu yu cu Su d trnh tu liudn CM (???)
Phuong php dinh dang tiu d Qu trnh pht hnh phin ban
Kiu lp trnh J ava Qu trnh thng qua k hoach du n
Dinh dang k hoach du n Qu trnh kim sot thay di
Mu yu cu thay di Qu trnh ghi nhn kim tra.
Bang 9.3: Cc chun qu trnh v chun san phm.
Cc k su phn mmdi khi coi cc chun l phuc tap v khng thch hopdi voi
hoat dng cng ngh cua vic pht trin phn mm. Cc chun yu cu chon dy cc mu
di dng v phai ghi lai cng vic. Mc d cc k su phn mm thuong dng v cc yu
cu chung cho cc tiu chun, cc k su thuong tm nhiu l do tai sao cc chun khng
thuc su thch hop voi du n ring cua ho. D trnh nhng vnd ny, nhng nguoi quan l
cht luong thit lp nhng tiu chun cn thit l nhng ti nguyn tuong xung, v nn
tun theo cc buoc sau:
1. Bao gm cc k thut phn mm trong vic chon lua cc chun san phm. Ho nn
hiu tai sao cc tiu chunduoc thit k v cam kt tun theo chun ny. Ti liu
chun khng chi l don gian l ni r chunduoc tun theo m n phai bao gm l
do cn ban tai sao cc tiu chun ring bit duoc chon.
2. Kim tra v thay di cc tiu chun mt cch du nhau phan nh cc cng ngh
thay di. Mt khi cc tiu chunduoc pht trin, chng c xu huongduoc luu tr
trong ti liu tm tt cc tiu chun cua cng ty, v vic quan l thuong kh c th
thay di chng. Mt ti liu tm tt tiu chun l rt cn thit nhung n nn mo ra
vic phan nh cc tnh hung thay di v cng ngh thay di.
3. Cung cp cc cng ngh phn mmd phuc vu cc tiu chun bt k khi no c
th. Cc tiu chun vn phng l nguyn nhn cua nhiu than phin boi v cng
vic qu di dng d thuc hin chng. Nu cng cu phuc vu l c hiu luc, ban
khng cn c gng thm d tun theo cc chun pht trin phn mm.
Cc chun qu trnh c th gy ra nhiu kh khn nu mt qu trnh khng c tnh
thuc t duoc p dt cho nhm pht trin. Cc kiu khc nhau cua phn mm cn cc qu
trnh pht trin khc nhau. Khng nht thit phai quy dinh cch lm vic nu n khng
thch hop cho mt du n hay di du n. Mi nguoi quan l du n phai c quyn thay di
cc chun qu trnh theo nhng truong hop ring. Tuy nhin, cc chun m lin quan dn
cht luong san phm v qu trnh gui- pht phai chi duoc thay di sau khi c su cn nhc
cn thn.
http://www.ebook.edu.vn 159
Nguoi quan l du n v nguoi quan l cht luong c th trnh nhiu vnd v cc
chun khng hop l bng cch lp k hoach cht luong chu do som trong du n. Ho phai
quyt dinh nhng chundua vo trong ti liu, m nhng chun khng thay di duoc ghi
vo ti liu, cn nhng chun no c th duoc chinh sua v nhng chun no c th duoc
bo qua. Nhng chun moi c th phai duoc tao ra d dpung nhng yu cu ring bit cua
tung du n. V du, tiu chun cho cc dc ta hnh thuc c th duoc yu cu nu nhng dc
ta ny khng duoc su dung trong cc du n truoc. Khi m di c thm kinh nghim voi
chng, ban nn lp k hoach chinh sua v dua ra nhng chun moi.
Trch nhim quan l H thng cht luong
Kim sot cc san phm khng quy tc Kim sot thit k
Giai quyt, luu tr, dng gi v phn pht (?? Suc mua)
Cc san phm nguoi mua smdu vo Du vt v cn cuoc cua san phm
Kim sot qu trnh Kim tra v thu nghim
Trang bi kim tra v thu nghim Trang thi kim tra v thu nghim
R sot lai hopdng Hoat dng chinh sua
Kim sot tu liu Ban ghi cht luong.
Kim ton cht luong ni b Do tao
Dich vu K thut thng k
9.3.1. ISO 9000
Mt tp hop cc tiu chun quc t m c th duoc su dung trong vic pht trin
cua h thng quan l cht luong trong tt ca ngnh cng nghipduoc goi l ISO 9000. Cc
chun ISO 9000 c th duoc p dung cho nhiu t chuc tu san xut cho dn cng nghip
dich vu. ISO 9001 l nhng ci chung nht cua nhng chun ny v p dung cho nhng t
chuc trong cc qu trnh cht luong dng d thit k, pht trin v bao tr san phm. Mt
ti liu phuc vu (ISO 9000-3) hiu l ISO 9001 cho pht trin phn mm. Mt vi quyn
sch m ta chun ISO 9000 l c gi tri ( J ohnson, 1993; Oskarsson v Glass, 1995;
Peach, 1996; Bamford v Deibler, 2003).
Chun ISO khng tp trung cu th vo vic pht trin phn mm nhung n thit lp
nguyn l chung m c th ung dung vo phn mm. Chun ISO 9000 m ta nhiu dang
bn ngoi khc nhau cua qu trnh cht luong v b cuc cc chun t chuc v cc thu tuc t
chuc m mt cng ty phai dinh ra. Nhng chun ny duoc ghi lai trong mt ti liu chi dn
cht luong cua t chuc. Dinh nghia qu trnh phai bao gm vic m ta cc ti liuduoc yu
cud th hin nhng qu trnh duoc dinh ra duoc tun theo trong qu trnh pht trin san
phm.
Chun ISO 9001 khng dinh nghia qu trnh cht luong no nn duoc su dung.
Trn thuc t, n khng rng buc cc qu trnh su dung vo trong bt ky t chuc theo bt
http://www.ebook.edu.vn 160
ky cch no. Diu no cho php su mm deo trong cc b phn cng nghip v diu ny c
nghia rng cc cng ty nho c th c nhng qu trnh khng phuc tap v vn tun theo
chun ISO 9000. Tuy nhin, su linh hoat ny c nghia l ban khng th tao ra bt ky gia
dinh no v su tuong tu hay khc nhau gia qu trnh trong cc cng ty ung dung ISO
9000.
Bang 9.4 th hin cc linh vuc bao trm trong ISO 9001. Ti khng du khng gian
o dy d thao lun chun ny su hon naduoc. Ince (Ince, 1994) v Oskarrson v Glass
(Oskarrson and Glass, 1995) dua ban m ta chi tit hon v vic lm th no chun c th
duoc su dung d pht trin cc qu trnh quan l cht luong phn mm. Cc mi lin quan
gia ISO 9000, ti liu chi dn v cht luong v cc k hoach cht luong du n ring bit
duoc th hin trong hnh 27.5.1. Ti d ly hnh ve ny tu mt m hnh duoc dua ra trong
quyn sch cua Ince (Ince, 1994).
Hnh 9.5: ISO 9000 v quan l cht luong
Cc thu tuc dam bao cht luong trong t chuc duoc ti liu ho trong ti liu chi
dn cht luong, ti liu ny dinh ra qu trnh cht luong. Trong mt s quc gia, giy
chung nhn quyn so hu chung nhn rng qu trnh cht luong tun theo chun ISO 9001.
Ngy cng nhiu khch hng xem giy chung nhn ISO 9000 o nh phuc vu nhu l cch
chung minh tnh dng dn cht luong san phm cua nh cung cp.
Mt s nguoi nghi rng giy chung nhn ISO 9000 c nghia rng cht luong cua
phn mmduoc tao ra boi cc cng ty dduoc chung thuc se tt hon l cc cng ty m
chuaduoc chung thuc. Diu ny khng phai thuc su nhu vy. Chun ISO 9000 thuong l
lin quan dndinh nghia cua cc qu trnh duoc su dung trong cng ty v ti liuduoc lin
kt lai nhu cc qu trnh kim sot m c th th hin mt cch d dng nhng qu trnh
duoc tun theo. N khng lin quan dn vic dam bao rng nhng qu trnh ny phan nh
thuc t tt nht, hay cht luong san phm.
K hoach cht luong
Du n 1
K hoach cht luong
Du n 2
K hoach cht luong
Du n 2
Quan l cht
luong du n
Ti liu huong dn
cht luong t chuc
M hnh cht
luong ISO 9000
Qu trnh cht
luong t chuc
Duoc su dung
d pht trin
Th du nhu
Th du nhu
Tu liu
Cung cp
http://www.ebook.edu.vn 161
V vy, mt cng ty c th dinh ra cc thu tuc kim tra san phm m dndn vic
kim tra phn mm chua hon thnh. Trong mt thoi gian di nhng thu tuc ny duoc tun
theo v duoc ti liu ho, cng ty nn tun theo chun ISO 9001. Trong khi, truong hop
ny l chua chc chn,c mt s chun cng ty l khng thuyt phuc v dng gp t vo
cht luong phn mm thuc.
9.3.2. Cc chun ti liu:
Cc chun ti liu trong mt du n phn mm l quan trong boi v cc ti liu l
cch xc thucd th hin phn mm v qu trnh phn mm. Cc ti liu tiu chun ho c
b ngoi, cu trc v cht luong khng thay di, boi vy n d doc v d hiu hon.
C ba kiu chun ti liu:
1. Cc chuan qu trnh ti liu Nhng chun ny dinh ra qu trnh m se duoc tun
theo di voi vic tao ra ti liu.
2. Cc chuan ti liu Nhng chun ny chi phi cu trc v cch th hin cua cc ti
liu.
3. Cc chuan trao ai ti liu Nhng chun ny dam bao rng tt ca cc ban sao din
tu cua cc ti liu l tuong thch.
Cc chun ti liu qu trnh dinh ra qu trnh m duoc su dung cho vic tao ra cc
ti liu. Diu ny c nghia rng ban spdt cc thu tuc, bao gm vic pht trin ti liu v
cc thit bi phn mmduoc su dung cho vic tao ra ti liu. Ban cung c th dinh ra vic
kim tra v cai tin cc thu tucd dam bao rng cc ti liu c cht luong cao duoc tao ra.
Cc chun ti liu cht luong qu trnh phai linh hoat v c th thch ung voi nhiu
loai ti liu. Di voi cng vic trn giy to hay s ghi nho din tu, khng cn thit phai
kim tra cht luong mt cch r rng. Tuy nhin, di voi cc ti liu chnh thuc se duoc su
dung cho vic pht trin sau ny hay chuyn giao cho khch hng, th ban nn su dung qu
trnh cht luong chnh qui. Hnh 27.6 l mt m hnh cua qua trnh li liu c th thuc hin
duoc.
Vic phc thao, kim tra, phc thao lai v bin tp lai l mt qu trnh lpdi lp lai.
N nn tip din cho dn khi mt ti liu cht luong c th chp nhn duoc duoc tao ra.
Muc d cht luong yu cu cn tuy thuc vo kiu cua ti liu v kha nng cua nguoi doc
ti liu.
Cc chun ti liu phai p dung cho tt ca cc ti liuduoc tao ra trong mt du n
pht trin phn mm. Cc ti liu phai c mt kiu cch v b ngoi ndinh. Cc ti liu
cua cng mt kiu cung phai c cu trc nhu nhau. Mc d cc chun ti liu c th thch
ung voi cc yu cu cua du n ring bit, trong thuc t d l quy lut nhu nhau duoc su
dung trong tt ca cc ti liuduoc san xut boi t chuc.
Cc v du cua cc chun ti liu c th duoc pht trin l:
1. Cc chuan nhan dang ti liu Khi m nhng du n pht trin h thng lon c th
tao ra hng nghn cc ti liu, mi ti liu phai duoc nhn bit duy nht. Di voi
cc ti liu chnh quy, nhn dang ny c th l nhn dang chnh quy duoc dinh ra
boi nguoi quan l cu hnh. Di voi cc ti liu khng chnh quy, nguoi quan l du
n c th dinh ra mu cua ti liu.
http://www.ebook.edu.vn 162
2. Cc chuan cau trc ti liu Mi lop cua ti liuduoc tao ra trong du n phn mm
phai theo mt s cu trc chun. Cc chun cu trc phai dinh ra cc muc duoc
thm vo v phai dinh r cc quy uoc duoc su dung cho dnh s trang, thng tin
tiu d trang, v dnh s muc v muc con.
3. Cc chuan trnh din ti liu Cc chun trnh din ti liudinh ra quy lut cho cc
ti liu v dng gp dng k cho tnh kin dinh cua ti liu. Chng bao gm vic
dinh r cua cc c ch v kiu ch duoc su dung trong ti liu, cch su dung logo
v cc tn cng ty, cch su dung mu sc lm cho ni bt cu trc ti liu,
Hnh 9.6 Mt qu trnh san xut ti liu bao gm vic kim tra cht luong
4. Cc chuan cap nhat ti liu Khi m mt ti liu pht trin phan nh cc thay di
trong h thng, chi thi ph hop cho nhng thay di ti liu se duoc su dung. Ban c
th su dung mu sc d biu thi phin ban cua vn ban v cc thanh thay di trong
muc canh l d biu thi mt s doanduoc thay di hay duoc thm vo. Tuy nhin
ti khuyn khng nn su dung su thay di tu hiu chinh khi duoc phuc vu trong
mt s b xu l vn ban thuong duoc su dung. Nu c nhiu tc gia, su tu hiu
chinhdem lai nhiu su kh khn hon l hu dung.
Cc chun trao di ti liu l rt quan trong khi m cc ban sao din tu cua cc ti
liuduoc trao di. Su dung cc chun trao di cho php cc ti liuduoc truyndi bng tn
hiudin v duoc ti tao lai duoi dang nguyn gc.
Thua nhn rng su dung cc cng cu chunduocdt trong cc qu trnh chun, cc
chun trao di dinh ra cc quy uoc cho vic su dung nhng cng cu ny. Cc v du v cc
chun trao di bao gm cch su dung mt bang tnh kiu chun nu mt b xu l vn ban
duoc su dung hay cc gioi han trong vic su dung cc macro ti liud trnh nhim virus.
Tao ban phc
thao ban du
R sot ban
phc thao
Kt hop cc
bnh lun r
sot
Tu liu ti
phc thao
Doc v sua
ban phc thao
Tao ra ban phc
thao cui cng
Kim tra ban
phc thao cui
B cuc trnh
by vn ban
Xt duyt b
cuc
San xut in
chuyn nghip
In ban
du phng
Giai don 1
To ra
Giai don 2
Lm m|n
Giai don 3
San xut
Tu liuduoc thng qua
Tu liuduoc thng qua
http://www.ebook.edu.vn 163
Cc chun trao di cung c th gioi han cc c ch v cc kiu vn banduoc su dung boi
v my in khc nhau v kha nng hin thi cung khc nhau.
9.4. Lp k hoch cht lung.
Lp k hoach cht luong l qu trnh cua su pht trin mt k hoach cht luong cho
mt du n. K hoach cht luong phai thit lp cc cht luong phn mmduoc yu cu v
m ta lm cch no nhng cht luong ny c th duoc quyt dinh. Boi vy n dinh ra phn
mm cht luong cao thuc su c nghia nhu th no. Nu khng c su dinh truoc ny cc
k su c th tao ra cc gia dinh khc nhau v di khi l xung dt voi nhau v cc thuc tnh
san phm se duoc ti uu ho.
K hoach cht luong se chon nhng chun t chuc m n thch hop voi mt san
phm ring bit v qu trnh pht trin. Nhng chun moi c th phai duoc dinh nghia nu
du n su dung cc phuong php v cng cu moi. Humphrey (Humphrey, 1989) trong cun
sch kinh din v quan l phn mm, goi rng mt cu trc phn cp cho k hoach cht
luong. Diu ny bao gm:
1. Su gioi thiu san pham Mt m ta v san phm, m ta dinh huong thi truong du
dinh v cc mong doi cht luong cho san phm.
2. Cc k hoach san pham K han pht hnh v cc trch nhim san phm cng voi
cc du n cho vic phn phi v dich vu san phm.
3. Cc m ta qu trnh Cc qu trnh pht trin v dich vu se duoc su dung cho quan
l v pht trin san phm.
4. Cc muc tiu chat luong Cc muc tiu v k hoach cht luong cho san phm bao
gm vic xc dinh v diu chinh cc thuc tnh cht luong quan trong cua san
phm.
5. Rui ro v quan l rui ro Cc rui ro chnh m c th anh huongdn cht luong v
cc hoat dng san phm.
Cc k hoach cht luong thuc su khc bit trong chi tit phu thuc vo kch thuoc
v kiu cua h thng m dang duoc pht trin. Tuy nhin, khi vit cc k hoach cht luong,
ban nn c gng gi cho chng ngn nht c th. Nu nhu ti liu qu di, moi nguoi se
khng th doc n, diu ny se ph huy mucdinh cua vic tao ra k hoach cht luong.
C mt pham vi rng cua cc thuc tnh cht luong phn mm tim nng ( Bang
9.7) m ban nn xem xt trong qu trnh lp k hoach cht luong. Nhn chng ta khng th
ti uu ho cho tt cc thuc tnh di voi bt ky h thng no. V vy trong k hoach cht
luong, ban phai dinh ra nhng thuc tnh cht luong quan trong nht cho phn mmdang
duoc pht trin. Diu ny c th l c hiu qua l quan trong v cc nhn t khc duoc bo
quad dat duoc cht luong. Nu band pht biudiu ny trong k hoach cht luong, cc
k su pht trin c th hop tc d dat duoc diu ny. K hoach phai bao gm vic dinh r
qu trnh dnh gi cht luong. Diu ny nn l mt cch chun cua vic dnh gi mt s
cht luong, nhu kha nng bao tr hay tnh bn vngduoc hin din trong san phm.
http://www.ebook.edu.vn 164
Tnh an ton Tnh c th hiuduoc Tnh di dng
Tnh bao mt Tnh c th kim tra Tnh tin dung
Tnh tin cy Tnh thch khi Tnh ti su dung
??Tnh mm deo Tnh m dun Tnh hiu qua
Tnh bn vng Tnh phuc tap Tnh d hoc.
Bang 9.7 Cc thuc tnh cht luong phn mm.
9.5. Kim sot cht lung
Kim sot cht luong bao gm vic kim tra qu trnh pht trin phn mmd dam
bao rng cc thu tuc v cc chundam bao cht luongduoc tun theo. Nhu ti d thao lun
o chuong truoc (hnh 27.1), muc d thuc hin qu trnh phn mmduoc kim tra lai cc
chun du n dduocdinh ra trong qu trnh kim sot cht luong.
C hai cch tip cn b xung cho nhau m c th duoc su dung d kim tra cht
luong cua mucd thuc hin cua du n.
1. Vic r sot lai cht luong noi m phn mm, ti liu cua n v cc qu trnh d su
dungd tao ra m phn mmduoc r sot boi mt nhm nguoi. Vic r sot chiu
trch nhim vic kim tra cc chun du n duoc tun theo v phn mm v cc ti
liu lm cho ph hop voi nhng chun ny. Su lch khoi cc chun ny d ch v
nguoi quan l du n duoc canh bao toi chng.
2. Dnh gi phn mm tu dng l noi phn mm v cc ti liuduoc se duoc tao ra xu
l boi mt s chuong trnh v duoc so snh voi cc chun p dung cho du n pht
trin ring bit. Dnh gi tu dng ny c th bao gm vic do mt s thuc tnh
phn mm v so snh nhng d do voi mt s muc d mong mun. Ti se thao
lund do phn mm trong muc 27.5.
9.5.1. R sot cht lung
R sot l phuong thuc duoc su dung rng ri nht trong vic r sot cht luong
cua mt qu trnh hay san phm. Vic r sot bao gm mt nhm nguoi kim tra mt phn
hay tt ca mt qu trnh phn mm, h thng hay cc ti liu lin quan voi cc vnd tim
tng pht hin. Cc kt lun cua vic r sot duoc ghi lai v thng qua mt cch chnh thuc
toi tc gia hay bt ky nguoi no chiu trch nhim vic sua lai nhng vnd duoc pht hin.
Hnh 9.8 m ta ngn gon mt vi loai r sot, bao gm cc r sot di voi quan l
cht luong.
http://www.ebook.edu.vn 165
Kiu r sot Mc dch chu yu
Kim tra thit k hay
chuong trnh
Pht hin cc li chi tit trong cc yu cu, thit k hay m.
Danh sch kim tra cc li c th se dn dt vic r sot.
R sot tind. Cung cp thng tin cho vic quan l tind cua du n. Dy
cung vua l qu trnh v vua l r sot san phm n c lin
quandn chi ph, k hoach, lp lich.
R sot cht luong Tin hnh cc phn tch cng ngh cua cc thnh phn san
phm hay tu liud tm ra ch khng tuong xung giadc
ta v thit k thnh phn, m hay tu liu v dam bao rng
cc chun cht luongdduocdua ra duoc tun theo.
Vnd cuadi r sot l d tm ra cc li v cc mu thun v chuyn giao chng
cho nguoi thit k hay tc gia cua ti liu. Cc vic r sot duoc dua trn ti liu nhung n
khng gioi han toi cc dc ta, cc thit k hay m. Cc ti liu nhu cc m hnh qu trnh,
k hoach kim tra, cc thu tuc quan l cu hnh, cc chun qu trnh v ti liu chi dn
nguoi dng c th tt ca duoc r sot lai.
Di r sot nn c hat nhn l ba hay bn nguoi m duoc chon nhu l nguoi r sot
chu yu. Mt thnh vin nn l nguoi thit k lu nm nguoi m c th chiu trch nhim
cho vic ra quyt dinh cng ngh quan trong. Nhng nguoi xt duyt quan trong c th
moi cc thnh vin du n khc. Ho c th khng phai xt duyt ton b ti liu. Hon na,
ho tp trung vo mt s phn m anh huong dn cng vic cua ho. Di r sot c th
chuyn ti liu dduoc r sot v yu cu cho cc loi ch giai tu hnh anh rng cua cc
thnh vin du n.
Cc ti liu duoc r sot phai duoc phn phi tt truoc khi xt duyt d cho php
nhng nguoi r sot c th doc v hiu chng. Mc d su tr ny c th ph v qu trnh
pht trin, vic r sot l khng hiu qua nudi xt duyt khng hiu mt cch dng dn
cc ti liu truoc khi vic r sot din ra.
Vic t r sot nn l tuong di ngn (hu ht l hai gi). Tc gia cua ti liu duc r
sot nn lm chu to vic r sot v mt s khc ghi li tt ca cc quyt d|nh r sot
cc hnh dng duc xay ra. Trong sut qu trnh r sot, ngui chu to ch|u trch
nhim vic dam bao rang tt ca cc li ph bnh duc ghi chp du duc xem xt. V|
chu to r sot nn ghi vo ban ghi nhn cc li ph bnh v cc hot dng duc dng
trong qa trnh r sot. Ban ghi nhn ny sao d duc xem nhu l mt phn cua ti
liu d n chnh thc. Nu m cc vn d th yu duc pht hin, mt cuc xt duyt
sau d c th l khng cn thit. Ngui chu to ch|u trch nhim di vi vic dam bao
rang cc thay di duc yu cu duc quyt d|nh. Nu nhng thay di chnh yu l
cn thit, mt cuc r sot sau d c th duc xp xp.
9.6. CMM/CMMi
9.6.1. CMM v CMMi l g?
CMM v CMMi l chun quan l quy trnh cht lung cua cc san
phm phn mm duc p dng cho tng loi hnh cng ty khc nhau. Hay ni cch
khc dy l cc phuong php pht trin hay san xut ra cc san phm phm mm.
http://www.ebook.edu.vn 166
Thng 8/ 2006, SEI (Software Engineering Institute Vin Cng Ngh Phn Mm
M) - t chc pht trin m hnh CMM/CMMI d chnh thc thng bo v phin ban
mi CMMI 1.2. Nhu vy l sau gn 6 nam ban hnh v su dng thay th cho CMM
(t thng 12/2001), CMMI phin ban 1.1 (CMMI 1.1) d duc chnh thc thng bo
vi l trnh thi gian chuyn tip ln phin ban mi CMMI 1.2.
Mc d s lung cc cng ty phn mm ti Vit Nam dt duc CMM/CMMI dn nay
vn chua nhiu, nhung vi s khoi sc trong linh vc gia cng v san xut phn mm
vi nam tro li dy, s cnh tranh cng nhu yu cu ngy cng cao cua khch hng,
d thc dy cc cng ty xy dng h thng quan l cht lung theo cc m hnh quc
t.
C nhng khc bit dng k gia CMMI 1.1 v CMMI 1.2, trong khun kh mt bi
vit chng ti c gng nu nhng nt co ban nht, nham gip bn dc c ci nhn
tng qut, t d d dng d|nh hung cho vic nghin cu chi tit hon v CMMI 1.2.
CMM v CMMi l mt b khung (framework)nhng chun d ra cho mt tin trnh
san xut phn mm hiu qua, m nu nhu cc t chc p dng n s mang li s kha
dng v mt chi ph, thi gian biu, chc nang v cht lung san phm phn mm.
M hnh CMM v m ta cc nguyn tc v cc thc tin nam bn trong tnh thnh
thc qu trnh phn mm v chu gip d cc cng ty phn mm hon thin kha
nang thun thc qu trnh san xut phn mm, di t t pht, hn dn ti cc qu
trnh phn mm thnh thc, c ky lut.
Bang vic thuc hin CMM cc cng ty thu duc nhng li ch xc thc, giam duc
rui ro trong pht trin phn mm v tang duc tnh kha bo - do d tro thnh di tc
hay mt nh cung ng hp dn hon di vi cc khch hng trn ton th gii. Tuy
nhin, CMM khng phai khng di hoi chi ph. Nhng ngun lc dng k cua cng ty
phai duc dnh cho vic hung ti cc vng tin trnh then cht, cn thit d ln tng
bc thang cua chng nhn CMM. CMM dua ra mt lot cc mc d d biu th| mc
d thnh thc d dt duc. Mc 1 ng vi mc d thnh thc thp nht v mc 5
ng vi mc d thnh thc cao nht. Gn dy, SEI d xc tin CMMi, mt m hnh
k tha CMM v CMMi hin nay cc cng ty cng dang bt du trin khai vic su
dng m hnh ny
9.6.2. Cu trc cua CMM
9.6.2.1. Cc level cua CMM
CMM bao gm 5 levels v 18 KPAs(Key Process Area)
5 levels cua CMM nhu sau:
- 1: Initial, 2: Repeatable,3: Defined,4: Managed, 5: Optimising
Ni cch khc mi mt level du tun theo mt chun o mc d cao hon. Mun dt
duc chun cao hon th cc chun cua cc level truc phai thoa mn. Mi level du c
dc dim ch quan trng cua n cn cc doanh nghip phai dp ng duc
Level 1 th khng c KPAs no ca
Level 2 : c 6 KPAs
Level 3: c 7 KPAs
http://www.ebook.edu.vn 167
Level 4: c 2 KPAs
Level 5: c 3 KPAs
18 KPAs cua CMM duc du c 5 thuc tnh(chc nang) chung trong d c cc qui
d|nh v key pratice l nhng hung dn v cc thu tc(procedure), qui tc(polities),
v hot dng (activites)cua tng KPA.
Du tin ta c cu trc cua mt KPA vi 5 dim dc chung(common feature) nhu
sau:
-------
KPA Goals
-------------------
||
||
1 2 3 4 5
Trong d d thc hin KPA ny ta cn phai thc hin theo nhng qui tc sau d bao
dam dt duc KPA d:
(1) Commitment to Perform ( Tm d|ch l cam kt thc hin)
(2) Ability to Perform (Kh nang thc hin)
(3) Activities Peformed (Cc hot dng lu di)
(4) Measurement and Analysis (Khun kh v phn tch)
(5) Verifiying and Implementation
Cpd 3
Duocdinh ra
Cpd 2
Duocquan l
Cpd 1
Bandu
Cpd 4
Duoc quan l
dinh luong
Cpd 5
Ti uu
http://www.ebook.edu.vn 168
9.6.2.2. Cc level cua CMM
Level 1
Level 1 l buc khoi du cua CMM, mi doanh nghip, cng ty phn mm, c nhm,
c nhn du c th dt duc. O lever ny CMM chua yu cu bt ky tnh nang no.
V d: khng yu cu quy trnh, khng yu cu con ngui, min l c nhn, nhm,
doanh nghip du lm v phm mm du c th dt ti CMM ny.
Dc dim cua mc 1:
Hnh chnh: Cc hot dng cua lc lung lao dng duc quan tm hng du nhung
duc thc hin mt cch vi v hp tp
Khng thng nht: Do to quan l nhn lc nho le chu yu da vo kinh nghip c
nhn
Quy trch nhim: Ngui quan l mong b phn nhn s diu hnh v kim sat cc
hot dng cua lc lung lao dng
Quan liu: Cc hot dng cua lc lung lao dng duc dp ng ngay m khng cn
phn tch anh huong
Doanh s thung xuyn thay di: Nhn vin khng trung thnh vi t chc
Level 2
C 6 KPA n bao gm nhu sau
- Requirement Management ( Ly yu cu khch hng, quan l cc yu cu
d)
- Software Project Planning ( Lp cc k hoach cho du n)
- Software Project Tracking (Theo di kim tra tind du n)
- Software SubContract Managent ( Quan tri hopdng phu phn mm)
- Software Quality Assurance (Dam bao cht luong san phm)
- Software Configuration Management (Quan tri cu hnh san phm=>
dng yu cu cua khch hng khng)
Khi ta p dng Level 2, KPA 2(Software Project Planning), ta s c nhng common
feature(dc dim dc trung) nhu sau:
Mc tiu(Goal): cc hot dng v nhng d xut cua mt d n phn mm phai duc
ln k hoch v vit ti liu dy du
D xut/ Xem xt (Commitment): d n phai tun thu theo cc qui tc cua t chc
khi hoch d|nh
Kha nang(Ability): Vic thc hin lp k hoch cho d n phn mm phai l buc
thc hin t rt sm khi d n duc bt du
Do lung(Measument): S do lung lun duc thc thi v su dng chng ta lun c
th xc d|nh v kim sot duc tnh trng cc hot dng trong tin trnh thc hin d
n
http://www.ebook.edu.vn 169
Kim chng(Verification): Cc hot dng khi lp k hoch d n phai duc s
reviewed cua cp senior manager
Cu hoi duc dt ra o dy l vy th vai tr cua QA s nhu th no trong vic thc
hin project plan, ti khng d cp dn vai tr Project Manager v anh ta phai bit v
cc nguyn tc v estimates project theo Function Point, Line of Code v.v...
Ni dn software quality, t hn cc bn QA khng th khng bit dn tam gic qui
"Quality Triangle" (Cost,Functionality,Schedule) => dng chc nang , dng chi ph,
v dng thi hn. De ra ci gi l cht lung phn mm, th phai c ngui review v
kim chng n. Chng ti dt ra cc tiu chun cua qui trnh m t d chng ti san
xut duc phn mm tt nht, chng ti thc hin v chng ti c nhng ngui kim
chng v theo st cc hot dng cua nhm thc hin project sao cho dng qui trnh.
Vng d l QA Engineer, lu nay vai tr cua ngui QA trong cc cng ty phn mm
b| dng ho vi vai tr cua mt tester hay cn gi l QC - Quality Control.
D dt duc Level 2 th ngui quan l phai thit lp duc cc nguyn tc co ban v
quan l cc hot dng din ra. H c trch nhim quan l di ng cua mnh
Cc KPA( Key Process Areas) cua n ch trong toi cc thnh phn sau :
+Ch d di ng
+Do tao
+Quan l thnh tch
+Phn cng lao dng
+Thng tin giao tip
+Mi truong lm vic
S c ngui hoi d t level1 tin ti level 2 cn c nhng g:
Tra li:
Truoc tin n phai thoa mn cc diu kino level1
Tip theo l phai ch trong toi cc phn sau
1. Mi truong lm vic:
- Dam baodiu kin lm vic
- Tao hung th trong cng vic
- Khng bi anh huong, mt tp trung boi cc nhn t khc
2. Thng tin:
Xy dung co ch truyn tin thng sut tu trn xung duoi v nguoc lai nhm gip
c nhn trong t chuc chia se thng tin, kin thuc, kinh nghim, cc k nng giao tip phi
hop v lm vic hiu qua
3. Xy dungdi ngu nhn vin:
Ngay tu khu tuyn dung, lua chon k cng v dinh huong, th ch ha quy trnh
tuyn dung
4. Quan l thnh tch:
Dy manh thnh tch, cng nhn nng luc, thnh tch bng cch thit lp cc tiu
ch khch quan d dnh gi v lin tuc khuyn khch kha nng lm vic, tp trung pht
trin su nghip, xy dung cc muc tiu tip theo.
5. Do tao:
Khng chi do tao cc kin thuc chuyn mn phuc vu cho du n m cn mo rng
do tao cc k nng then cht, cn thit nhu k nng lm vic di, nhm, k nng quan
l nhm tao co hi cho nguoi lao dng pht huy kha nng, co hi hoc hoi v pht trin
ban thn.
http://www.ebook.edu.vn 170
6. Ch d di ng:
Hoach dinh chin luoc di ng, thu thp kin luc luong lao dng v cng b
cng khai. Ch d di ng cn tp trung vo vic tra luong cho cng nhn vin dua vo
vai tr, vi tr cua ho (Position), Con nguoi (Person) thi d v tc phong lm vic v
Thnh tch (Performance) m ho dat duoc, cng hin cho t chuc. Dua ra duoc chnh sch
luong, thuong, phu cp cc cc quyn loi khc d khuyn khch cc c nhn dua trn su
dng gp cua ho v cpd pht trin cua ton t chuc.
Level 3
Cc vng tin trnh chu cht o mc 3 nham vo ca hai vn d v d n v t chc, v
mt t chc (cng ty) to nn cu trc h tng th ch cc qu trnh quan l v san
xut phn mm hiu qua qua tt ca cc d n. Chng gm c Tp trung Tin trnh
T chc (Organization Process Focus), Phn d|nh Tin trnh T chc (Organization
Process Definition), Chuong trnh Do to (Training Program), Quan tr| Phn mm
Tch hp (Integrated Software Management), San xut San phm Phn mm
(Software Product Engineering), Phi hp nhm (Intergroup Coordination), v Xt
duyt ngang hng (Peer Reviews).
D dt duc level 3 th ngui quan l phai bin di cai tin cc hot dng dang din
ra, cai tin mi trung lm vic.
Luc luong lao dng so hu nhng kin thuc, k nng ct li
KPA ch trong toi cc yu t sau :
+Vn ha c th
+Cng vic dua vo k nng
+Pht trin su nghip
+ Hoachdinh nhn su
+ Phn tch kin thuc v k nng
T Level 2 ln Level 3: Cc KPA cn thc hin
1. Phn tch kin thc v k nang:
Xc d|nh nhng k nang v kin thc cn thit d lm nn tang cho hot dng nhn
s. Linh vc phn tch ny bao gm: xc d|nh quy trnh cn thit d duy tr nang lc
t chc, pht trin v duy tr cc k nang v kin thc phc v cng vic, d bo nhu
cu kin thc v k nang trong tuong lai.
2. Hoach dinh ngun nhn luc:
Dy l linh vc phi hp hot dng nhn s vi nhu cu hin ti v trong tuong lai o
ca cc cp v ton t chc. Hoch d|nh ngun nhn lc c tnh chin luc cng vi
quy trnh theo di cht ch vic tuyn dng v cc hot dng pht trin k nang s
to nn thnh cng trong vic hnh thnh di ng.
3. Pht trin su nghip:
To diu kin cho mi c nhn pht trin ngh nghip v c co hi thang tin trong
ngh nghip, n bao gm: thao lun v la chn ngh nghip vi mi c nhn, xc
d|nh cc co hi, theo di s tin b trong cng vic, duc dng vin, khuyn khch dt
http://www.ebook.edu.vn 171
mc tiu cng vic, giao quyn v khuyn khch thc hin nhng mc tiu trong cng
vic.
4. Cc hoat dng dua trn nng luc:
Ngoi cc k nang, kin thc ct li cn c hoch d|nh nhn lc, tuyn dng da vo
kha nang lm vic, dnh gi hiu qua qua mi cng vic v v| tr, xy dng ch d
phc li, di ng da trn hiu qua gip bao dam rang mi hot dng cua t chc
du xut pht t mc dch phc v cho pht trin ngun nhn lc
5. Vn ha c th:
To lp duc co ch lin lc thng sut, knh thng tin hiu qua o mi cp d trong
t chc, phi hp duc kinh nghim, kin thc cua mi ngui d h tr ln nhau,
gip nhau cng tin b. Trao quyn thc dy nhn vin tham gia kin, ra quyt
d|nh
Level 4
Cc vng tin trnh chu yu o mc 4 tp trung vo thit lp hiu bit d|nh lung cua
ca qu trnh san xut phn mm v cc san phm phn mm dang duc xy dng. D
l Quan l qu trnh d|nh lung (Quantitative Process Management) v Quan l cht
lung phn mm (Software Quality Management)
Lc lung lao dng lm vic theo di, nhm v duc quan l mt cch d|nh lung.
Cc KPA cua level 4 ch trong toi:
+ Chun ha thnh tch trong t chuc
+ Quan l nng luc t chuc
+ Cng vic dua vo cch lm vic theo nhm
+ Xy dung di ngu chuyn nghip
+ C vn
D dt duc level 4 th phai do lung v chun ha. Do lung hiu qua dp ng cng
vic, chun hac pht trin cc k nang, nang lc ct li
Level 4 ny s ch trng vo nhng ngui dng du cua mt cng ty, h c kha nang
quan l cc cng vic nhu th no
Level 5
Cc vng tin trnh chu yu o mc 5 bao trm cc vn m ca t chc v d n phai
nhm ti d thc hin hon thin qu trnh san xut phn mm lin tc, do dm
duc. D l Phng nga li (Defect Prevention), Quan tr| thay di cng ngh
(Technology Change Management), v Quan tr| thay di qu trnh (Process Change
Management) D dt duc level 4 th phai do lung v chun ha. Do lung hiu qua
dp ng cng vic, chun hac pht trin cc k nang, nang lc ct li
D dt duc Level 5 th doanh nghip d phai lin tc cai tin hot dng t chc, tm
kim cc phuong php di mi d nng cao nang lc lm vic cua lc lung lao dng
trong t chc, h tr cc nhn pht trin so trung chuyn mn.
Ch trng vo vic quan l, pht trin nang lc cua nhn vin
http://www.ebook.edu.vn 172
Hun luyn nhn vin tro thnh cc chuyn gia
9.6.3. So snh gia CMM v CMMi
Han nhng ai quan tm ti CMM, cng d tng nghe hoc bit qua CMMI . V khi
d nghe qua, ti don khng t ngui thm thc mc, hoc t hoi rang khng bit
CMM vi CMMI n khc nhau ra sao nhi ???
Nu dc ta mt cc trc quan th ta thy CMM v CMMI chi khc nhau c mt ch
I (Integration). Nhung mt ch I d thi cng to ra s khc bit dng k gia
CMM v CMMI ri.
Truc tin hy xem qua ngun gc cua hai th ny mt t . Nu ni rang CMM ra di
truc CMMI th cng dng nhung m ni CMMI c truc t khi CMM ra di cng
chng sai. Tht ra khi CMM duc chnh thc cng b vo cui nam 1990 th CMMI
d duc manh mng duc nhc dn t nhiu nam truc d (chnh xc hon l t
1979- Crosbys maturity grid (Quality is Free)) thng qua cu trc Continuous &
Staged. C th ni CMMI l mt phin ban cai thin tt yu cua CMM.
Trong khi CMM duc hon thin v pht trin boi vin SEI cua M, th CMMI l
san phm cua s cng tc gia vin ny v chnh phu M. T khi CMM duc cng
nhn v p dng trn th gii th tm quan trng cua n d vut qua gii hn cua
mt vin khoa hc. Vi tc d pht trin khng ngng v di hoi s cai thin lin tc
trong ngnh cng ngh thng tin, vic chnh phu M cng vi vin SEI kt hp d
hon thin CMM v cho ra di phin CMMI l mt h qua tt yu.
M hnh CMM truc dy gm c 5 mc: khoi du, lp li duc, duc d|nh nghia,
duc quan l v ti uu. Mt dim dc bit l mi doanh nghip c th p dng m
hnh CMM o bt ky mc no m khng cn tun theo bt ky mt qui d|nh no,
khng cn phai dt mc thp truc ri mi c th dt mc cao (c th di thng ln
mc cao, hoc cng c th t h xung mc thp hon). V nguyn tc, SEI khng
chnh thc dng ra cng nhn CMM m thng qua cc t chc tu vn, cc dnh gi
truong duc SEI uy quyn v tha nhn.
T cui 2005, SEI khng t chc hun luyn SW-CMM v chi tha nhn cc dnh
gi theo m hnh CMMi mi t thng 12/2005. CMMi duc tch hp t nhiu m
hnh khc nhau, ph hp cho ca nhng doanh nghip phn cng v tch hp h
thng, ch khng chi don thun p dng cho doanh nghip san xut phn mm nhu
CMM truc dy. C 4 m hnh p dng CMMi l CMMi-SW (dnh cho cng ngh
phn mm), CMMi-SE/SW (dnh cho cng ngh h thng v phn mm), CMMi-
SE/SW/IPPD (dnh cho cng ngh h thng + cng ngh phn mm vi vic pht
trin san phm v quy trnh tch hp), CMMi-SE/SW/IPPD/SS (dnh cho cng ngh
h thng + cng ngh phn mm vi vic pht trin san phm v quy trnh tch hp
c su dng thu ph). C 2 cch din dt v su dng CMMi: Staged (ph hp cho t
chc c trn 100 ngui) v Continuos (ph hp cho t chc dui 40 ngui). CMMi
cng bao gm 5 mc nhu CMM: khoi du, lp li duc, duc d|nh nghia, duc quan
l v ti uu.
CMMI dua ra c th cc m hnh khc nhau cho tng mc dch su dng c dc ring
bao gm :
- CMMI-SW m hnh chi dnh ring cho phn mm.
http://www.ebook.edu.vn 173
- CMMI-SE/SW m hnh tch hop dnh cho cc h thng v k su phn mm.
- CMMI-SE/SW/IPPD m hnh dnh cho cc h thng, k su phn mm v vic
tch hop san phm cng qu trnh pht trin n.
Nhu vy cc dc dim khc nhau quan trng nht gia CMM v CMMI l g?
Thu ngha qua xem trong CMMI hin nay c g khc vi thang anh sinh ra truc n
(CMM):
- CMMI dua ra cu th hon 2 khi nimdi ung stageds VS continuous
- Chu ky pht trin cua CMMI duoc pht trin som hon.
- Nhiu kha nng tch hop (Integration) hon
- Su do luong, dinh luong duoc dinh nghia hn l mt Process area (vng tin
trnh). Chu khng hn chi l mt dc trung co ban.
- Bao hm nhiu Process Areas hon.
- Dat duoc thnh qua d dng hon voi mi Process area.
9.6.4. Li ch cua CMM dem li cho doanh nghip
1. Vin canh m CMM mang lai
- nghia cua vic p dung nhng nguyn tc:
+Quan l cht luong tng th
+Quan l ngun nhn luc
+Pht trin t chuc
+Tnh cng dng
+Pham vi anh huong rng: tu cc nghnh cng nghipdn chnh phu
+Hon ton c th xem xt v mo rng tmanh huong voi bn ngoi
+Chuong trnh lm vic nhm cai tin, nng cao hoat dng cuadi ngu lao dng
+Dnh gi ni b
+Cc hoat dng cuadi ngu lao dngduoc cai tin
+Cc chuong trnh nhm nng cao nng luc, hiu qua cng vic lun duoc t chuc
2. Muc tiu chin luoc
- Cai tin nng luc cua cc t chuc phn mm bng cch nng cao kin thuc v k nng
cua luc luong lao dng
- Dam bao rng nng luc pht trin phn mm l thuc tnh cua t chuc khng phai cua
mt vi c th
- Huong cc dng luc cua c nhn voi muc tiu t chuc
- Duy tr ti san con nguoi, duy tr ngun nhn luc chu cht trong t chuc
3. Loi ch CMM mang lai cho Doanh nghip gi gon trong 4 tu: Attract, Develop,
Motivate v Organize
4. Loi ch CMM mang lai cho nguoi lao dng:
- Mi truong lm vic, vn ha lm vic tt hon
- Vach r vai tr v trch nhim cua tung vi tr cng vic
- Dnh gi dng nng luc, cng nhn thnh tch
- Chin luoc, chnh sch di ng lun duoc quan tm
- C co hi thng tin
- Lin tuc pht trin cc k nng ct yu.
http://www.ebook.edu.vn 174
CHUONG 10: QUAN L CU HNH
Mc dch
Muc ach cua chuong ny l gioi thiu v qu trnh quan l m v ti liu cua mt h
thng phan mm mo rng. Khi ban ban aoc xong chuong ny ban s:
hiu tai sao quan tri cau hnh phan mm lai auoc ai hoi cho nhng h thng
phan mm phuc tap;
auoc gioi thiu toi bn hoat ang quan tri cau hnh co ban- k hoach quan l,
quan l thay ai, quan l phin ban v ban pht hnh, v xy dung h thng.
hiu cng cu CASE auoc su dung nhu th no a h tro cho qu trnh quan l.
10.1. Gii thiu
Quan tri cu hnh(CM ) l su mo rng v su dung cua nhng tiu chun v thu tuc cho
quan l mt h thng phn mm mo rng. Nhu d cp o chuong 7, nhng di hoi cua h
thng lun lun thay di trong sut qu trnh pht trin v su dung, v ban phai t chuc st
nhp nhng yu cu ny vo trong nhng phin ban moi cua h thng. Ban cn quan l vic
mo rng h thng boi v rt d sai lm khi theo di nhng thay di no d duoc dua vo
phin ban no cua h thng. Nhng phin ban hop nhngd xut d thay di, su chnh xc v
tuong thch cho nhng phn cung v h diu hnh khc nhau. C th mt vi phin banduoc
mo rng v su dung trong cng mt thoi gian. Nu ban khng c mt cch thuc quan l cu
hnh hiu qua trong truong hop ny ban se phai tn rt nhiu n luc cho vic sua cha nhng
phin ban li cua h thng, hay phn phi nhng phin ban ny toi nguoi dng hoc mt
kim sot noi m m phn mmduoc luu tr.
Thu tuc quan tri cu hnh cho bit lm th no d ghi chp v gim st nhng thay di cua
h thngduocd xut, lm sao d lin h nhng diu ny toi nhng thnh phn cua h thng
v nhng phuong php duoc su dung d chi ra nhng phin ban khc nhau cua h thng.
Nhng cng cu quan tri cu hnh duoc su dungd luu tr nhng phin ban cua thnh phn h
thng, xy dung h thng tu nhng thnh phn ny v theo di vic phn phi cc phin ban
toi khch hng.
Quan tri cu hnh di khi duoc xem nhu l mt phn cua qu trnh quan l cht luong
phn mm (chuong 27), v cng vic quan l cht luong v trch nhim quan l. Phn mm
banduduocdua ra boi nguoi pht trin voi su baodam v cht luong. Cn QA th kim tra
vic cht luong cua h thng c chp nhnduoc hay khng. N tro thnh mt h thngdiu
khin, diud c nghia rng su thay di cua h thng phai duoc chp nhn v ghi lai truoc
khi n duoc thuc thi. Diu khin h thngdi khi duoc goi l auong co ban(baselines) v n
ldim bt du cho mt cuc cch mang xa hon.
C rt nhiu nguyn nhn giai thch tai sao nhng h thng lai tn tai trong nhng cu
hnh khc nhau. Cc cu hnh c th duoc dua ra cho nhng my tnh khc nhau, cho nhng
h diu hnh khc nhau, hay cho vic kt hop nhng chuc nng ring cua khch hng(hnh
9.1) Nhng nh quan tri cu hnh c trch nhim trong vic gim st su khc nhau gia cc
http://www.ebook.edu.vn 175
phin ban phn mm, dam bao rng nhng phin ban moi duoc pht hnh trong tm kim
sot v dua toi dng khch hng tai dng thoi dim.

Hnh 29.1-Quan h cc h thng
Vicdinh nghia v su dung nhng tiu chun quan tri cu hnh l cn thit voi vic chung
nhn cht luong trong ca hai tiu chunISO9000 v CMM v CMMI. Mt v du v mt tiu
chun l IEEE 828-1998, l mt chun cho chin luoc quan tri cu hnh. Trong mt cng ty,
nhng tiu chun ny c th duoc dua vo s tay huong dn cht luong hay sch chi dn
quan tri cu hnh. Tt nhin, nhng tiu chun mo rng ni chung c th duoc su dung nhu
mt nn tang cho nhng chunduoc t chuc chi tit hon.
Mt qu trnh pht trin phn mm thng thuong dua trn m hnh thc nuoc (waterfall),
phn mmduocdua toi di ngu nh quan tri cu hnh sau khi vic mo rng hon tt v nhng
thnh phn khc nhau dduoc kim tra. Di ngu ny sau d se tip quan trch nhim cho
vic xy dung h thng hon thin v quan l kim tra h thng. Nhng li duoc pht hin
qu trnh kim tra h thng se duoc gui lai di ngu nh mo rngd sua cha. Sau khi li d
duoc sua mt phin ban moi cua thnh phnduoc sua chaduoc gui toi nh bao dam cht
luong. Nu cht luong l chp nhnduoc th n c th tro thnh mt con duong co ban moi
di toi vic pht trin h thng xa hon.
Trong m hnh ny, vic nhng CM diu khin mo rng h thng v kim tra cc qu
trnhd c anh huong toi vic pht trin cc tiu chun quan tri cu hnh. Hu ht cc chun
CM du c nhng tin d duoc nhng vo ci m m hnh thc nuoc se duoc su dung cho
vic pht trin h thng. Diu d c nghia l nhng tiu chun phai duoc cp nht thuong
xuyn d tuong thch voi nhng thay di v nhng tin b moi cua h thng. Hass
(Hass,2003) cho rng nhng su tuong thch cho qu trnh mo rng h thng phn mm din
ra rt nhanh chng.
D tng truong loi nhun, mt s t chuc d mo rng cch tip cn toi quan tri cu hnh
d h tro vic pht trin v kim tra h thng hin hnh. Cch tip cn ny dua trn tn sut
xy dung rt cao ton b h thng tu nhng thnh phn cua n:
H thng
du tin
Ban
chomy HP
Ban
chomyPC
Ban
chomySun
Ban cho
WindowXP
Ban cho
Linux
Ban cho
Myd bn
Ban cho
My chu
http://www.ebook.edu.vn 176
1. Cc t chuc pht trin thuong xp xp phn phi thoi gian cho cc thnh
phn cua h thng nhm theo di hoat dng cua n. Nu nhng nguoi pht
trin c nhng phin ban moi cua cc thnh phn ny th ho se thu nghim
ngay trong khoang thoi gian ny. Cc thnh phn c th khng duoc hon
thnh nhung n c th cung cp nhng chuc nng co band c th duoc
kim tra.
2. Mt phin ban moi cua h thngduoc xy dung tu nhng thnh phn ny
bng cch bin tp v lin kt chng lai.
3. H thng ny se duoc dua toi nhng nguoi kim tra (tester), noi m se thi
hnh mt loat cc cc cuc kim tra duoc xc dinh truoc. Trong cng thoi
gian ny nhng nguoi pht trin vn lm vic voi nhng phn vic cua ho,
nhu l thm cc tnh nng moi v sua li duoc tm ra o ky kim tra truoc.
4. Nhng li duoc tm thy khi kim tra se l nhng tu liu v duoc dua tro
lai nguoi pht trin. Ho sua nhng li ny o nhng phin ban sau cua cc
thnh phn.
Nhng tin loi cua vic xy dung phn mm hng ngy theo kiu ny cho php tm ra cc
vnd nay sinh trong tuong tc gia cc thnh phn mt cch d dng khi m muc d xu l
ngy cng tng.Hon th na, Vic ny cn khuyn khch vic kim tra ti mi cc thnh phn.
V mt tm l, cc nh mo rng cn bi d nng duoi p luc cua vickhng auoc ph v h
thng v mi thnh phn c th lm hong ton b h thng.
Su su dung thnh cng vic xy dung h thng lin tuc di hoi mt tin trnh quan l
nghim ngt d theo di cc vnd dduoc pht hin v sua cha. Quan l cu hnh tt l
cn thit d di toi thnh cng.
Quan l cu hnh voi nhng cch thuc tip cn linh hoat v mm deo khng th dua trn
nhng nh san xut cung nhc v trn cng vic giy to. Trong khi diu ny l cn thit cho
nhng du n lon v phuc tap, n lai lm chm tin trnh mo rng. Vic theo di st sao l cn
thit cho nhng h thng lon v phuc tapduoc mo rng thng qua cc thng s, nhung khng
cn thit cho nhng du n nho. Trong nhng du n ny ton b thnh vin cua nhm lm vic
voi nhau trong cng mt phng, v vic nng cp c lin quan dn vic theo di lm chm
tin trnh mo rng. Tuy nhin, diud khng hon ton c nghia l CM nnduoc tu bo khi
m vic mo rng linh hoat duoc yu cu. Dng hon l, nhng qu trnh linh hoat su dung
nhng cng cu CM don gian, ging nhu l mt m hnh quan l v cng cu xy dung h
thng. Tt ca cc thnh vin phai hoc su dung cc cng cu ny v thch nghi voi nhng ki
lut m ho phai tun hnh.
10.2. K hoch quan tr| cu hnh
Mt k hoach quan tri cu hnh m ta nhng tiu chun v thu tuc l nhng ci c th
duoc su dung cho quan tri cu hnh. Dim bt du cho vic mo rng k hoach c th l mt
tp cc tiu chun quan tri cu hnh, v nhng ci ny c th tuong thch cho ph hop voi
nhng yu cu v suc p cua mi du n. K hoach quan l c th duoc phn theo cc muc
sau:
1. Dinh nghia nhng ci g duoc quan l v chin luoc ban su dungd chi ra
cc thuc th ny.
http://www.ebook.edu.vn 177
2. Dua ra nguoi no c trch nhim cho nhng thu tuc quan tri cu hnh v
cho vicdua ra nhng thuc th toi nhng nguoi quan tri cu hnh.
3. Dinh nghia nhng duong li quan l ci m ton di phai su dungd thay
di vicdiu khin v cc m hnh quan l.
4. Chi ra nhng cng cu ban c th su dung cho quan tri cu hnh v nhng
tin trnh su dung nhng cng cu ny.
5. M ta kin trc cua cu hnh co so d liuduoc dng d thng bo thng
tin v cu hnh nhng thng tin c th duoc luu tr trong co so d liu.
Ban cung c th tnh dn nhng vnd khc trong k hoach quan tri nhu l vic quan l
phn mm tu nhng ngun mo rng v thu tuc kim ton cho tin trnh quan l.
Mt phn quan trong cua k hoach quan tri (KHQT) l vic dinh nghia trch nhim. K
hoach c th dua ra nguoi c trch nhim cho vic phn phi cc ti liu hoc phn mmd
baodam cht luong. C nhn c trch nhim cho vic phn phi ti liu cn khng trng voi
nguoi c trch nhim cho san xut ti liu. D lm don gian mt ny, nguoi quan l du n
hocdi ngu dungdu phai c trch nhim cho tt ca ti liuduoc ho dua ra.
11.1.1. Xc minh cc cu hnh
Trong mt h thng phn mm lon, c th c hng nghn mdun m ngun, tp lnh kim
tra, ti liu thit k v nhiu thu khc. Chng duoc dua ra boi nhng nguoi khc nhau v khi
tao ra, c th duoc gn ging nhau hoc l trng tn. D theo di tt ca nhng thng tin ny
th cc file cn phai duoc tm thy khi cn thit, ban cn c mt chin luoc xc minh nht
qun cho moi chi muc trong h thng quan tri cu hnh.
Trong sut tin trnh lp k hoach quan tri cu hnh, ban quyt dinh chnh xc muc
no(hoc lop muc no) duoc diu khin. Nhng ti liu hoc cc nhm ti liu gn nhau khi
duoc xc lp l nhng ti liu trang trong r rng. Nhng k hoac cua du n, ban m ta, ban
thit k, chuong trnh v kim tra d liu thch hop duoc duy tr thuong xuyn nhu l mt
loai cua cu hnh. Tt ca cc ti liu m c th c ch cho cuc cch mang h thng trong
tuong lai du c th duocdiu hnh boi h thng quan tri cu hnh.
Tuy nhin, diud khng c nghia l moi ti liu hay tp lnh duoc dua ra du chiu su
gim st cuadiu hnh cu hnh. Nhng ti liu ki thut, nhng pht gp g trao di, nhng
ban phc thao, nhngd xut c th khng c lin quan hoc khng cn thit cho su duy
tr h thng trong tuong lai.
K hoach xc minh cc chi muc cho cu hnh cnduoc gn lin voi mt tn duy nht cho
moi ti liu duoi su gim st cua vic diu hnh cu hnh. Ci tn ny c th phan nh loai
muc, phn cua h thng m n m chi toi. Trong vic dnh tn k hoach cua ban, ban c th
mong rng mong phan nh mi quan h gia cc chi muc bng vic dam bao rng nhng ti
liu c lin quan voi nhau c mt gc chung voi tn cua chng. Tu d ban c th dinh nghia
mt lop cc tn duoc phn cp nhu:
PCL-TOOLS/EDIT/FORMS/DISPLAY/AST-INTERFACE/CODE
PCL-TOOLS/EDIT/HELP/QUERY/HELPFRAMES/FR-1

http://www.ebook.edu.vn 178

Hnh 10.2-Phn cp cu hnh
Phndu cua tn l tn du n, PCL-TOOLS.Trong du n ny, c mt s luong cc cng
cu dang duoc mo rng, do d tn cng cu (EDIT) duoc su dung nhu phn tip theo cua tn.
Mi cng cu bao gm nhiu mdun tn khc nhau m tn cua n tao nn thnh phn tip theo
cua chi muc xc minh (FORMS, HELP). Qu trnh phn tch ny cn tip tuc cho toi ti liu
chnh thuc cp co ban l nhng tham chiu (hnh 29.2). Vic phn cp ti liu se dua ra
nhng chi muc cu hnh chnh thuc. Hnh 9.2 chi ra ba chi muc duoc yu cu cho mi thnh
phn: mt di tuong m ta (OBJECTS), m ngun cua phn tu (CODE) v mt tp cc cuc
kim tra cho cc phn tu (TESTS). Cc chi muc nhu nhng frame tro gip cungduoc quan l
v c nhiu tn khc nhau (FR-1)
Chin luoc phn cpdnh du tn rt don gian v d hiu, v di khi n cn chi ra cu
trc thu muc thuong l noi chua file cua du n. Tuy nhin n phan nh cu trc cua du n m
phn mmdduoc pht trin. Tn cua cc chi muc cu hnh lin kt cc thnh phn voi du n
thuc t v c th lm giam vic su dung tro lai. C th rt kh tm thy cc thnh phn c lin
quan toi nhau (chng han, moi thnh phnduduoc mo rng cng mt lp trnh vin) do d
mi quan h khng duoc phan nh trong chin luocdnh tn cc chi muc.
11.1.2. Co so d liu cua cu hnh
Co so d liu cu hnh duoc su dung d thng bo cc thng tin c lin quan v cu hnh
h thng v cc chi muc. Ban su dung co so d liuCM d gip truy cp vo nhng thay di
cua h thng v dua ra nhng thng bo v tin trnh quan l. Nhu mt phn cua tin trnh k
hoach ha CM, ban nn dua ra giand co so d liu quan l, dinh hnh vic thu thp thng
tindua vo trong co so d liu, tu d gip thng bo v truy xut thng tin v du n.
Cng cu PCL
Bin tp Kt ni Soan thao Tao ban tin
Khun dang Kin trc Tro gip
Hin thi Truy vn
Di tuong
Khun dang-Specs Giao din_AST Khun dang_IO
M Kim tra
http://www.ebook.edu.vn 179
Mt co so d liu cu hnh khng bao gm thng tin v cc chi muc cu hnh. N c th
thng bo cc thng tin v nhng nguoi su dung cua cc thnh phn, h thng khch hng,
nn tang thuc thi, nhng d xut cho thay di. N c th cung cp nhng giai dp cho rt
nhiu cu hoi khc nhau v cu hnh h thng. Nhng thc mcdin hnh nhu l:
1. Khch hng no vua moi duoc phn phi mt phin ban ring bit cua h
thng?
2. Cu hnh phn cung v h diu hnh cndi hoi nhu th no d chay phin
band cua h thng?
3. C bao nhiu phin bandduoc tao ra v ngy tao ra chng?
4. Phin ban no c th c hiu qua nu mt thnh phn ring bit bi thay
di?
5. C bao nhiu di hoi thay di l ni bt trn mt phin ban thuc t?
6. C bao nhiu trch li duoc thng bo tn tai trn mt phin ban thuc t?
Nu l l tuong, co so d liu cu hnh nn duoc tch hop cng voi phin ban cua h
thng quan l noi m duoc su dung d luu tr v quan l cc ti liu chnh thuc cua du n.
Cch lm ny, duoc h tro boi mt s cng cu CASE, tao cho chng c kha nng lin kt
truc tip cc ti liu v thnh phn c hiu qua. Lin kt gia cc ti liu (nhu ti liu thit
k) v m chuong trnh c th duoc duy tr d ban c th tm thy duoc moi thu m ban cn
phai chinh sua lai khi m mt su thay di duocd xut.
Tuy nhin, cc cng cu tch hopCASE cho quan tri cu hnh l rt dt. Rt nhiu cng ty
khng su dung chng nhung lai duy tr co so d liu cu hnh tch roi voi h thng quan l
cu hnh cua ho. Ho luu tr cc chi muc cu hnh nhu l nhng file trong cu trc thu muc
hoc trong h thng quan l phin ban nhu CVS.
Co so d liu cu hnh luu tr thng tin v cc chi muc cu hnh v tham chiudn tn
cua chng trong h thng quan l phin ban hoc file luu tr. Trong khi d l mt cch lm re
tin v mm deo th vnd dt ra voi n l cc chi muc cu hnh c th bi thay di m khng
thng qua co so d liu cu hnh. Tu d, ban khng th chc chn rng co so d liu cu hnh
l mt h duoc cp nht hng ngy cc trang thi cua h thng.
11.2. Quan l vic thay di
Thay di l mt thuc t cuadoi sng cua nhng h thng phn mm lon. Nhu dd cp
dn o cc chuong truoc, vic t chuc cn v di hoi thay di trong sut qu trnh sng cua
mt h thng.
Diu d c nghia l ban cn tao ra nhng su thay di cho ph hop voi h thng phn
mm. D chc chn rng su thay di l duoc cp nht vo h thng theo dngduong li c
kim sot, ban cn c mt tp cc cng cu h tro, cc thu tuc quan l thay di.
Cc thu tuc quan l thay di duoc lin h voi vic phn tch gi tri v loi ch cua vic thay
di theo d xut. Tin trnh quan l thay di (hnh 29.3) c th duoc hnh thnh c hiu qua
khi phn mm hay ti liu lin quan duoc vach ra boi di ngu nhng nguoi quan tri cu hnh.
http://www.ebook.edu.vn 180
Chng du tin trong tin trnh quan l l hon tt hnh thnh yu cu vic m ta (Change
Request Form-CRF) su thay di m h thngdi hoi. CRF dua ra thng bo dn luu dn
su thay di, gi tri uoc luong cua su thay di v ngy khi m su thay di duoc yu cu, tn
thnh, thuc thi v c hiu luc. CRF c th bao gm mt phn phn tch bn ngoi vic thay
di duoc thuc thi th no.
Mt v du cua vic hnh thnh yu cu thay di duoc chi ra trong hnh 29.4. CRF duoc
xc dinh trong sut qu trnh lp k hoach quan tri cu hnh. Mt v du CRF l c th duoc
su dung trong mt du n cho mt h thng lon v phuc tap. Di voi nhng du n nho, chng
ti cho rng yu cu thay di c th duoc thng bo chnh thuc, nhung CRF nn tp trung
vo vic m ta yu
Hnh 10.3 Tin trnh quan l su thay di
cu thay di. Ki su thit k su thay di quyt dinh vic lm cch no d thuc thi su thay di
d trong mt tnh hung cu th.
Mt CRF dduoc xem xt, th n nn duoc dng nhp vo trong co so d liu cu hnh.
Sau d vic yu cu thay di duoc phn tch d kim tra rng yu cu thay di l cn thit.
Mt s yu cu c th bi hiu lm,voi li h thng v su thay di cua h thng l khng cn
thit. Mt s khc c th tham chiu toi nhng li d duoc bit dn. Nu nguoi phn tch
khm ph ra rng yu cu thay di l khng c nghia, duoc m phong hay l dduoc xem
xt, th su thay di se bi bc bo. Ban nn ni voi nguoi d trnh vic yu cu thay di rng tai
sao n bi tu chi.
Di voi su thay di c nghia, chng tip theo cua qu trnh l dnh gi v suy st gi tri
su thay di. Tc dng cua su thay di ln h thng phai duoc kim tra. Diud lin quan dn
vic chi ra moi thnh phn chiu su tc dng cua su thay di c su dung thng tin o co so d
liu cu hnh v m ngun cua phn mm. Nu vic tao nn su thay di lai xa hon nhng g
h thng cn th r rng ci gi cua vic thuc thi su thay di phai tng ln. Tip theo, yu cu
thay di toi h thng se duoc dnh gi. Cui cng, ci gi cua vic thay di se duoc uoc
luong, gui toi ti khoan gi tri cua vic thay di cc thnh phn lin quan.
Yu cu thay di bng vic hon tt mt hnh thuc yu cu thay di
Phn tch yu cu thay di
Nu vic thay di l c nghiath
Uoc luong vic thay di c th duoc thuc thi nhu th no
Uoc luong gi tri cua vic thay di
Ghi lai yu cu thay di vo trong co so d liu
Dua ra yu cu thay di toi ban diu hnh vic thay di
Nu vic thay di duoc chp nhnth
Lp li
Tao nn su thay di toi phn mm
Ghi lai su thay di v lin kt toi nhng yu cu thay di c lin quan
Xem xt phn mmdduoc thay di v cht luong chp nhnduoc
Cho ti khi cht luong phn mm chp nhnduoc
Tao phin ban moi cua h thng
Nguc li
Tu chi yu cu thay di
Nguc li
Tu chi yu cu thay di
http://www.ebook.edu.vn 181
Mt ban quan l thay di (Change Control Board_CCB) nn xem xt v ph chun moi
yu cu thay di nu nhng su thay di khng chi don gian lin quan toi vic chnh xc
nhng li nho trn nhng mn hnh hin thi, nhng trang Web hay trong nhng ti liu. Ban
CCB xem xt ki tc dng cua mt su thay di c chin luoc v t chuc hon l so voi mt
quan dim v ki thut. Nhng ban ny nn quyt dinh xem su thay di l xc dng v mt
kinh t hay khng v nn dnh uu tin cho nhng su thay di dduoc chp nhn.
Ban CCB ( Change Control Board ) bao hm nghi v mt di ngu lon nhng nh dua
ra nhng quyt dinh thay di. Nhu cu trc thng thuong cuaCCB, bao gm nhng khch
hng lu
Hnh 10.4 Hnh thuc yu cu thay di duoc hon thnh
nm, nhng nguoi quan l truc tip (contractor staff) l nhng yu cu cho mt du n
nghim ngt. Tuy nhin, voi nhng du n c kch c nho v vua, CCB c th don gian chi
bao gm mt nguoi quan l du n cng voi mt hoc hai ki su nhng nguoi khng truc tip
lin quan dn vic pht trin phn mm. Trong mt s truong hop, CCB c th l mt nguoi
theo di thay di don le nguoi dua ra loi khuyn v su thay di l xc dng hay khng.
Quan l thay di cho nhng san phm phn mm chung duoc dng gi so voi nhng h
thng duoc lm ring cho nhng khch hng cu th phai duoc diu khin trong nhng
phuong thuc khc nhau. Trong nhng h thng ny, khch hng khng lin quan truc tip toi
dod su thay di tuongung toi vic kinh doanh cua khch hng khng phai l mt san phm.
Yu cu thay di trong nhng san phm ny thuongduoc gn voi nhng li trong h thng
dduoc khm ph trong sut qu trnh kim tra hay boi nhng khch hng sau khi phn mm
dduoc pht hnh. Cc khch hng c th su dung mt trang Web hoc e_mail d thng bo
li. Mt di ngu nhng nguoi quan l li se kim tra thng bo li l c hiu luc v chuyn
chng toi h thng yu cu thay di chnh thuc. Nhu voi cc loai h thng khc, thay di phai
duoc uu tin cho vic thuc thi v li c th khng duoc khc phuc nu nhu gi thnh khc
phuc qu cao.
D n: Proteus/Cng cu_PCL S:23/02
Ngui yu cu thay di: I.Sommerville Ngy:1/12/02
Yu cu thay di:Khi mt thnh phnduoc chon tu cu trc, hin thi tn cua file chua thnh phnd
Ngui phn tch thay di: G.Dean Ngy phn tch:10/12/02
Thnh phn b| tc dng: Hin thi Icon.Select, Hin thi Icon.Display
Thnh phn lin kt: FileTable
Dnh gi s thay di: Tuongdi don giand thuc thi nhu l voi mt file c tn Table c hiu luc. Yu cu c
su thit k v thuc thi di voi truong hin thi. Khng c su thay di no toi cc thnh phn lin quan duoc yu
cu.
Mc uu tin thay di: Thp
Thc thi s thay di:
Dnh gi n lc:0.5 ngy
Ngy ti CCB: 15/12/02 Ngy quyt d|nh cua CCB: 1/2/03
Quyt d|nh cua CCB: Chp nhn thay di, Thay di se duoc thuc thi trong phin ban 2.1
Ngui thc thi: Ngy thay di:
Ngy d trnh ti QA: Quyt d|nh cua QA:
Ngy d trnh ti CM:
Ch giai
Hnh thuc yu cu thay di
http://www.ebook.edu.vn 182
Trong sut qu trnh pht trin, khi nhng phin ban moi cua h thngduoc tao ra thng
qua vic xy dung h thng hng ngy, mt tin trnh quan l thay di don gian hon se duoc
su dung. Nhng vnd v thay di vn phai duoc thng bo, nhung nhng thay di m chi
anh huong toi cc thnh phn v module khc nhau khng cn thit phai duoc dnh gi dc
lp. Chng duoc dua truc tip toi h thng nhng nguoi pht trin. H thng nhng nguoi
pht trin hoc l chp nhn chng hoc l dua ra l do tai sao chng khng duoc yu cu.
Nhng thay di anh huong nhng module h thng duoc dua ra boi nhng di ngu nguoi
pht trin khc nhau, tuy nhin, nn duoc dnh gi boi mt chuyn gia quan l thay di,
nguoi dt quynuu tin v thuc thi cho chng.
Trong mt s phuong php mm deo, nhu lp trnh xa, cc khch hng duoc lin quan
truc tip toi vic quyt dinh vic thay di c nn duoc thuc thi hay khng. Khi ho d xut
mt su thay di toi nhng yu cu cua h thng, ho se lm vic voi di ngu nhng nguoi lm
vic d dnh gi tc dng cua su thay di d v quyt dinh su thay di c nn duoc gi o
nhng thnh phndduoc lp k hoach cho su pht trin tip theo cua h thng. Tuy nhin,
nhng thay di lin quan toi phn mmduoc nng cpduoc xem xt thn trongo nhng lp
trnh vin dang lm vic voi h thng. Dua tro lai nh cung cp, noi phn mm tip tuc duoc
cai thin, khng duoc xem nhu l mt ln nng cp nhung lai duoc xem nhu mt phn cn
thit cua qu trnh pht trin.
Voi nhng thnh phn cua phn mmduoc thay di, mt ban ghi cua nhng su thay di
duoc tao ra toi mi thnh phn nn duoc luu tr. N di khi duoc goi l qu trnh hnh thnh
(derivation history) cua mt thnh phn. Mt con duong tt d luu tr qu trnh hnh thnh
lo trong mt ch giai dduoc chun ha tai dim bt du cua m ngun thnh phn (hnh
10.5 ). Ch giai ny nn tham chiu toi yu cu thay di ci d tc dngdn su thay di cua
phn mm. Sau d ban c th vit mt vn ban bao qut ton b cc thnh phn v tin trnh
d dua ra nhng ban ghi v su thay di cua thnh phn. Mt cch tip cn tuong tu c th
duoc su dung cho nhng trang Web. Voi nhng ti liudduoc xut ban, nhng ban ghi v
thay di duoc lin kt trong mi phin ban thuongduoc luu tr trong mt trang ring tai mt
truoc cua cc ti liu.
Hnh 10.5 Thng tin cc thnh phndu tin
// Du n BANKSEC (IST 6087)
//
//Cng cu BANKSEC/AUTH/RBAC/USER_ROLE
//
//Di tuong: Role hin thoi
//Tc gia: N.Perwaiz
//Ngy tao ra: 10
th
November 2002
//
//(c) Lancaster University 2002
//
//Qu trnh chinh sua
//Phin ban Nguoi chinh sua Ngy Thay di L do
// 1.0 J .J ones 1/12/2002 Add header D trnh toi CM
// 1.1 N.Perwaiz 9/4/2003 New field Thay di req. R07/02
http://www.ebook.edu.vn 183
11.3. Quan l phin ban v ban pht hnh
Nhng tin trnh duoc bao hm trong quan l phin ban v ban pht hnh duoc lin kt
voi vic chi dinh v theo di cc phin ban cua h thng.Nhng nguoi quan l phin bandua
ra cc thu tuc d chc chn rng phin ban cua mt h thng c th duoc truy xut khi duoc
yu cu v khng phai duoc thay di ngu nhin boi nhng nguoi pht trin. Voi nhng san
phm, nhng nguoi quan l phin ban lm vic voi nhn vin marketing v, voi nhng h
thng quen thuc voi cc khch hng, d lp k hoach khi nhng ban pht hnh moi cua h
thng nn duoc tao ra v phn phi cho su trin khai.
Mt phin ban cua h thng l mt mt cua h thng, v theo mt cch no d, d phn
bit voi cc b mt khc.Nhng phin ban cua h thng c th c nhiu chuc nng khc nhau,
tnh thuc thi duoc nng cao hay nhng li phn mmdduoc khc phuc. Mt s phin ban
c th c chuc nng tuongduong nhung m lai duoc thit k cho nhng cu hnh phn mm
hay phn cung khc nhau. Nhng phin ban m su khc nhau l nho th di khi duoc goi l
nhngbin th (variant).
Mt ban pht hnh cua h thng l mt phin ban duoc phn phi toi khch hng. Mi
ban pht hnh cua h thng nn chuadung mt tnh nng moi hoc nn duoc huong toi cho
mt nn tang phn cung khc. Thng thuong th mt h thng c nhiu phin ban hon l
nhng ban pht hnh. Cc phin ban duoc tao ra bn trong t chuc d huong toi mo rng
hoc l kim tra ni b v khng duoc huong toi vic phn phi toi khch hng.
Nhu se thao lun trong muc 10.5,cng cu CASE gio dy lun lun duoc su dungd h
tro cho vic quan l phin ban. Nhng cng cu ny quan l vic luu tr mi phin ban cua
phn mm v diu khin truy cp toi cc thnh phn cua h thng. Cc thnh phn phai duoc
kim tra tu h thngd hiu chinh. Ghi lai thnh phn tao ra mt phin ban moi, v mt su
xc minh duoc chi dinh voi h thng quan l phin ban. Trong khi r rng cc cng cu l
khc nhau dng k trong cc nt ring v trong cc giao din nguoi su dung cua chng,
nguyn l chung cua quan l phin bano dy bao gm nhng nt co ban cho moi cng cu h
tro.
11.3.1. Xc minh phin ban
D tao ra mt phin ban thuc t cua mt h thng, ban phai dinh ra nhng phin ban cua
cc thnh phn cua h thngduoc bao gm bn trong n. Trong mt h thng phn mm lon
th c hng trm cc thnh phn cua phn mm, mi mt trong chng c th tn tai trong mt
vi cc phin ban khc nhau. Do d c th c mt cch r rng d xc minh mi phin ban
thnh phnd chc chn rng thnh phn chnh xc duoc bao hm bn trong h thng. Tuy
nhin, ban khng th su dung tn cua chi muc cu hnh cho vic xc minh phin ban boi v c
th c vi phin ban cua mi chi muc cu hnh duoc xc minh.
Thay v d, ba ki thut co banduoc su dung cho vic xc minh phin ban thnh phn l:
1. nh s phin ban Thnh phn duoc dnh du boi mt s phin ban r
rng v don nht. D l chin luoc xc minh duoc su dung chung nht.
2. Xc minh thuc tnh co ban Mi thnh phn c mt tn ( nhu tn chi muc
cu hnh, nhng ci khng don nht qua cc phin ban ) v mt tp cc
thuc tnh c lin quan voi nhau cho mi phin ban (Estublier v Casallas,
1994). Tu d cc thnh phnduoc xc minh bng vic chi ra tn cua chng
v cc gi tri thuc tnh.
http://www.ebook.edu.vn 184
3. Xc minh huong thay ai Mi thnh phn duoc dnh tn nhu trong xc
minh cc thuc tnh co ban nhung diu d cung lin quan voi mt hoc
nhiu yu cu thay di (Munch, et al., 1993). Do d n duoc thua nhn
rng mi phin ban cua thnh phndduoc tao ra trong su tc dng tu mt
hoc nhiu hon nhng yu cu thay di. Phin ban cua thnh phn duoc
xc minh boi tp cc yu cu thay di duocdua toi thnh phn.
11.3.2. Dnh s phin ban
Trong mt chin luocdnh s phin bandon gian, mt s cua phin banduoc gn voi tn
cua thnh phn hoc l h thng. Tu d, ban c th tham khao toi Solari 4.3 (phin ban 4.3
cua Solaris system ) v phin ban 1.4 cua thnh phngetToken. Nu phin bandu tin duoc
goi l 1.0 th theo trnh tu sau cc phin ban se l 1.1, 1.2, v vn vn. Tai mt s chng, mt
ban pht hnh moi duoc tao ra (ban 2.0) v tin trnh lai bt du tu phin ban 2.1. Chin luoc
ny l tuyn tnh, co ban dua trn gia dinh rng cc phin ban cua h thngduoc tao ra tun
tu. Phn lon cc cng cu quan l phin ban ( trong muc 9.5) nhu RCS (Tichy, 1985) v CVS
(Berliner, 1990) h tro cc tip cn ny cho vic xc minh phin ban.
Ti minh hoa cch tip cn ny v su hnh thnh cua mt s cc phin ban h cua thng o
trnhnh 10.6 . Mui tn ngang trong so d ny bt ngun tu phin ban gc toi phin banduoc
tao ra tu phin ban gc. Ch rng su hnh thnh cua cc phin ban khng nht thit phai l
tuyn tnh v cc phin ban voi cc s phin ban lin tip nhau c th duoc dua ra tu nhng
duong ni khc nhau. Chng han, trong hnh 29.6 phin ban 2.2 duoc tao ra tu phin ban 1.2
chu khng phai tu phin ban2.1.V mt nguyn tc, bt cu phin bandang tn tai no c th
duoc su dung nhu mt dim bt du cho mt phin ban moi cua h thng.
Hnh 29.6 Cu trc su hnh thnh cc phin ban
Chin luoc ny l don gian, nhung ban cn luu tr luu tr mt luong lon cc thng tin mo
rngd theo di su khc nhau gia cc phin ban v mi quan h gia cc d xut thay di
h thng v cc phin ban. Chng handi voi phin ban 1.1 v 1.2 cua mt h thng c th
khc nhau boi v phin ban 1.2 dduoc san xut boi vic su dung mt thu vind hoa khc.
Ci tn khng ni cho ban bit v phin band hoc tai sao n duoc tao ra. Do d ban cn
theo di cc ban ghi trong co so d liu cu hnh noi d m ta mi phin ban tai sao n duoc
V1.0 V2.1 V2.0 V1.2 V1.1
V1.1b
V1.1a
V1.1.1
V2.2
http://www.ebook.edu.vn 185
tao ra. Ban cung c th cn lin kt r rng nhng yu cu thay di toi nhng phin ban khc
nhau cua mi thnh phn.
11.3.3. Xc minh thuc tnh co ban
Mt vnd co ban di voi chin luoc dnh tn r rng cc phin ban l n khng phan
nh rt nhiu thuc tnh m n c th duoc su dungd xc minh cc phin ban. Chng han
nhng thuc tnh duoc xc minh l:
- Khch hng
- Ngn ng pht trin
- Tnh trang pht trin
- Nn tang phn cung
- Ngy tao ra
Nu mi phin banduoc xc minh boi mt tp cc thuc tnh don nht, th d dng thm
phin ban moi duoc tm thy o bt cu phin ban no dang tn tai. Chng duoc xc minh c
su dung mt tp cc gi tri thuc tnh don nht. Chng chia se phn lon nhng gi tri ny voi
phin ban cha me cua chng tu d cc mi quan h gia cc phin ban se duoc duy tr. Ban
c th nhnduoc nhng phin banduoc chi dinh bng vic chi ra gi tri thuc tnh duoc yu
cu. Nhng chuc nng cua thuc tnh h tro cc thc mc nhu l phin ban gan ay nhat
auoc tao ra hoc l phin ban auoc tao ra gia cc ngy a cho .
Chng han, phin ban cua h thng phn mmAC3D duoc pht trin trn J ava cho
Window XP trong thng ging nm 2003 c th duoc xc minh:
AC3D (ngn ng =J ava, nn =XP, ngy =J an2003)
D su dung mt cch chi dinh tng quan cc thnh phn trong AC3D, cng cu quan l
phin ban se lua chon nhng phin ban cua nhng thnh phn c thuc tnh J ava, XP v
J an2003.
Xc minh thuc tnh co ban c th duoc thuc thi truc tip boi h thng quan l phin ban,
voi cc thuc tnh cua cc thnh phnduoc luu tr trong co so d liu h thng. Nhu mt su
lua chon, h thng xc minh thuc tnh c th duoc xy dung nhu mt lop hng du cua mt
chin luoc dnh s phin banduoc n du. Co so d liu cu hnh se luu tr cc mi lin kt
gia cc thuc tnh xc minh v h thng bn trong v cc phin ban thnh phn.
11.3.4. Xc minh hung thay di
Vic xc minh cc thuc tnh co ban cua cc phin ban h thngd giai toa mt s vnd
mc phai cua phuong thuc dnh s phin ban don gian. Tuy nhin, d truy xut duoc mt
phin ban ban vn phai bit cc thuc tnh lin quan cua n. Hon th na, ban vn cn su
dung mt h thng quan l thay di ring d tm ra mi quan h gia cc phin ban v su
thay di.
http://www.ebook.edu.vn 186
Xc minh huong thay di thuong duoc su dungd xc dinh cc phin ban cua h thng
hon l cc thnh phn. Nhng cng cu xc minh phin ban cua nhng thnh phn ring le
duoc n dudi voi nguoi su dung cua h thngCM. Mi su thay di cua h thngdduoc
thuc thi c mt tp cc su kin thay di, n m ta nhng thay di duoc yu cu toi nhng
thnh phn h thng khc nhau. Tp thay di ny c th duoc dt theo trnh tu hay l t nht
trong nguyn l, phin ban c th kt hop voi mt tp cc thay di bt ky. Chng han, tp cc
thay di cua h thngduoc tao nn d lm cho n thch hop voi Linux hon l so voi Solaris
c th duoc ung dung, tip buoc boi nhng thay di duoc yu cu v vic kt hop mt co so
d liu moi. Cung tuong tu nhu vy, su thay di cua Linux/Solaris c th duoc lm tip theo
boi nhng thay di di hoi chuyn giao din nguoi su dung tu ting Anh sang ting Italia.
Trn thuc t, tt nhin, khng phai l c th yu cu mt tp cc thay di ty toi h
thng. Nhng tp thay di c th l khng thch hop dn ni chng han tp thay di A tip
theo tp thay di D c th tao ra h thng khng c gi tri. Hon th na, nhng tp thay di
c th xung dt voi nhau trong d nhng thay di khc nhau tc dng toi cng mt m cua h
thng. Nu m d bi thay di boi tp thay di A, th tp thay di D c th khng lm vic
na. D dnh du nhng kh khn ny, cc cng cu quan l phin ban h tro vic xc minh
huong thay di cho php thuc hin nhng nguyn tc cht che cua h thng nhm xc minh.
Nhngdiu ny han ch cc cch kt hop cc tp thay di.
11.4. Quan l ban pht hnh
Mt ban pht hnh cua h thng l mt phin ban cua h thng dduoc phn phi toi cc
khch hng. Nhng nguoi quan l ban pht hnh cua h thng c trch nhim trong vic
quyt dinh khi no h thng c th duoc phn phi toi khch hng, trong quan l qu trnh
tao ra ban pht hnh v phuong tin truyn thng cho phn phi, v vic ti liu ha cc ban
pht hnh d chc chn rng n c th duoc tao lai chnh xc nhu dduoc phn phi nudiu
d l cn thit.
Mt ban pht hnh khng phai chnh l nhng m c th thuc hin cua h thng. Nhng
ban ny c th bao gm:
1. Cc file cau hnh dinh nghia ban pht hnh nn duoc dinh dang nhu th
no cho vic ci dt thuc t.
2. Cc file d liu cn thit cho h diu hnh thnh cng
3. Mt chuong trnh ci at duoc su dung nhm ci dt h thng ln phn
cung chi ra
4. Ti liu giay v ti liu ain tu m ta h thng
5. ng gi v lin kt quang co dduoc thit k cho vic pht hnh.
Nhng nguoi quan l ban pht hnh khng thua nhn rng khch hng lun lun ci dt
nhng ban moi. Mt s nguoi su dung h thng c th thch voi nhng h thng hin hnh.
Ho c th xem vic thay di o mt h thng moi l khng c gi tri. Nhng ban pht hnh
moi cua h thng khng th dua trn vic ci dt cua ban truoc. D minh hoa vnd ny ta
xem xt cc muc sau:
http://www.ebook.edu.vn 187
1. Ban 1 cua h thngduoc phn phi v dua vo su dung
2. Ban 2 di hoi vic ci dt cua nhng file d liu moi, nhung mt s khch
hng khng cn nhng tin ch cua ban 2 khi trai qua voi ban 1.
3. Ban 3 di hoi nhng file d liudduoc ci dt o ban 2 v n lai khng c
file d liu moi
Nguoi pht hnh phn mm khng th thua nhn rng nhng file duoc yu cu cho ban 3
dduoc ci dt trong moi truong hop. Mt s truong hop c th mang truc tip tu ban 1 toi
ban 3, bo qua ban 2. Mt s c th duoc chinh sua file d liu lin kt voi ban 2 nhm phan
nh cc su kin ring. Tu d, cc file d liu phai duoc pht hnh v ci dt voi ban 3 cua h
thng.
Ra quyt d|nh pht hnh
Chun bi v phn phi mt ban pht hnh cua h thng l mt qu trnh dt, thuc t l cho
nhng san phm phn mm mang tnh thi truong. Nu nhng ban pht hnh duoc dua ra qu
thuong xuyn, cc khch hng c th khng nng cp ln phin ban moi, dc bit l nu n
khng free. Nu cc ban pht hnh h thng khng duoc dua ra thuong xuyn, thi phn c
th bi mt khi m khch hng chuyn huong toi nhng h thng khc. Tt nhin, diu d
khng dng cho phn mm quen thuc duoc mo rng dc bit cho mt t chuc. Di voi
nhng phn mm truyn thng, nhng ban pht hnh khng thuong xuyn c th lm tng su
khc bit gia phn mm v cc tin trnh thuong mai m n duoc thit k d h tro.
Nhng nhn t ki thut v t chuc khc nhau m bandua vo trong danh muc khi quyt
dinh tao mt ban pht hnh moi cua h thngduoc chi ra trn hnh 10.7.
To ban pht hnh
Tao ban pht hnh l qu trnh thu thp cc file v nhng ti liu bao gm tt ca cc thnh
phn cua ban pht hnh cua h thng. M thuc hin hoc l nhng chuong trnh v cc file d
liu lin quan phai duoc thu thp v xc minh. Vic m ta cu hnh c th phai duoc vit cho
nhng phn cung v h diu hnh khc nhau dng thoi m ta thng qua cc chi dndduoc
chun bi cho nhng khch hng cn thit lp cu hnh cho chnh h thng cua ho. Nu nhng
my docduoc thu
http://www.ebook.edu.vn 188
Hnh 10.7 Nhng nhn t anh huong toi ban pht hnh cua h thng
Phuong tin phn phi thng thuong cho nhng ban pht hnh cua h thng ngy nay
thuong l dia quang (CD-ROM hoc l DVD) l nhngdia c kha nng chua tu 600 Mbyte
dn 6Gbyte d liu. Trong truong hop khc phn mm c th duoc phn phi truc tuyn, cho
php khch hng download n tu Internet, mc d nhiu nguoi thy n qu lu di voi nhng
file lon v ho thch cch phn phi bngdia CD hon.
C nhng chi ph rt cao cho vic marketing v dng gi lin quan dn vic phn phi
cc san phm phn mm moi, do d nh cung cp san phm thuong tao ra nhng ban moi chi
khi no dnh cho nhng phn mm nn moi hay l d thm vo mt s chuc nng dc bit.
Ri ho tnh gi toi nguoi su dung. Khi c nhng vnd duoc khm ph o mt ban hin hnh,
nh san xut thuongdua ra nhng cch chp v trn website v khch hng c th download
d sua cha phn mm.
Mt phn tu chi ph cho vic tm kim v download cc ban pht hnh moi, vn d l
nhiu khch hng c th khng bao gio khm ph ra su tn tai cua nhng cch sua cha ny
hoc l khng c su hiu bit ki thut d ci dt chng.Tu d ho c th tip tuc su dung h
thng li m ho dang c nhung voi mt mucd rui ro tt yudi voi cng vic cua ho. Trong
mt s truong hop, noi m ming v duoc thit k d sua cha nhng l vng an ninh, su
mao him khi ci dt ming v c th c nghia l cng vic rt d bi tn cng tu bn ngoi.
Ti liu ban pht hnh
Khi mt ban pht hnh cua h thng duoc san xut, n phai duoc ti liu ha d chc
chn rng n c th duoc tao lai chnh xc nhu th trong tuong lai. D l diu rt quan trong
cho nhng h thng nhung c thoi gian sng lu v duoc tao ra theo yu cu cua khch hng
nhu vicdiu khin nhng my mc phuc tap. Khch hng c th su dung mt ban pht hnh
ring le cua nhng h thng ny lu di sau khi ban gcduoc pht hnh.
Cht lung cua
h thng
Nhng thay di v nn
D|nh lut Ledman
th nam
Cnh tranh
Yu cu marketing
D xut thay di cua
khch hng
Nhn t M ta
Nu nhng li nghim trong cua h thngduoc thng bo c tc dng toi cch su
dung cua nhiu khch hng, n c th cn thit d dua ra bandduoc sua cha li.
Tuy nhin, voi nhng li h thng nho c th duoc sua cha bng vicdua ra nhng
cch chp v (thuong duoc cung cp qua Iternet) c th duoc p dung cho ban hin
hnh cua h thng.
Ban c th phai tao ra mt ban moi cua phn mmung dung khi mt phin ban moi
cua h diu hnh nnduoc pht hnh.
Diu ny goi rng vic tng cuong chuc nngo mi ban pht hnh uoc chung l
mt hng s.Tu d, mt ban pht hnh moi cua h thng voi chuc nng quan trong c
th duoc tao ra tip theo vic khc phuc mt ban truoc.
Mt ban pht hnh moi cua h thng c th l cn thit v mt san phm canh tranh
B phn marketing cua mt t chuc c th tn tuy voi cc ban pht hnh tai mt thoi
dim cu th.
Voi nhng h thng theo yu cu, khch hng c th dua ra mt tp nhng d xut
cho thay di h thng, v ho mong doi mt ban pht hnh cua h thng ngay sau khi
diudduoc thuc thi.
http://www.ebook.edu.vn 189
D ti liu ha mt ban pht hnh, ban phai ghi lai phin ban chi ra cua thnh phn m
ngunduoc su dungd tao ra m thuc thi. Ban phai gi ban sao cua ngun v m thuc thi,
moi d liu v cc file cu hnh. Ban cung nn ghi lai cc phin ban cua h diu hnh, cc thu
vin, chuong trnh dich, v cc cng cu khc duoc su dung d xy dung h thng. Nhng
diu ny c th duoc yu cud xy dung chnh xc h thng nhu th ny sau mt thoi gian.
Diud c nghia l ban phai luu tr nhng ban sao cua phn mm nn v cc cng cu duoc
su dung d tao ra h thng trong h thng quan l phin ban cng voi m ngun cua h
thng.
11.5. Xy dng h thng
Xy dung h thng l mt qu trnh bin tp v lin kt cc thnh phn phn mm vo
mt chuong trnh d thuc thi trn mt cu hnh muc tiu thuc t dduoc xc dinh. Khi ban
xy dung mt h thng tu cc thnh phn cua n, ban phai luu nhng cu hoi sau dy:
1. Tt ca cc thnh phn tao nn h thngdduoc bao hm trong cc chi thi
xy dung hay chua?
2. Cc phin ban tuong thch cua mi thnh phn yu cudduoc bao hm
trong cc chi thi xy dung hay chua?
3. Tt ca cc file d liu yu cu l d sn sng hay khng?
4. Nu cc file d liu l duoc thao chiu bn trong mt thnh phn, th tn
dduoc su dung c ging voi tn cua file d liu bn trn chic my muc
tiu hay khng.
5. Cc phin ban tuong thch cua trnh bin dich v cc cng cu yu cu khc
l c hiu luc hay khng? Phin ban hin hnh cua cc cng cu phn mm
c th khng tuong thch voi nhng phin ban cu duoc su dung d pht
trin h thng.
Hnh 10.8 Xy dung h thng
Ngy nay, nhng cng cu quan tri cu hnh phn mm hoc l mi truong lp trnh duoc
su dung d tu dng ha cc tin trnh xy dung h thng. Nhm CM vit mt tp lnh xy
H thng
quan l
phin ban
Cng cu xy
dung h thng
Trnh bin
dich
Trnh lin
kt
Tp lnh
xy dung
Cc phin ban thnh
phn m ngun
Cc thnh phn
m di tuong
H thng
thuc thi
http://www.ebook.edu.vn 190
dungd dinh nghia su phu thuc gia cc thnh phn h thng. Tp lnh ny cungdinh nghia
cc cng cu d bin tp v lin kt cc thnh phn h thng. Cng cu xy dung h thng
thng dich nhng tp lnh xy dung ny v goi nhng chuong trnh khc duoc yu cu d
xy dung h thng thuc thi tu cc thnh phn cua n. Diu ny duoc minh hoa trn hnh 10.8.
Trong mt s mi truong lp trnh ( nhu l mi truong J ava mo rng), cc tp lnh xy dung
duoc tao ra tu dng bng vic phn tch m ngun v nhn ra cc thnh phnduoc goi. Tt
nhin, trong truong hop ny, tn cua thnh phn duoc luu tr phai trng voi tn cua thnh
phn chuong trnh.
Su phu thuc gia cc thnh phn duoc xc dinh trong cc tp lnh xy dung. N cung
cp thng tin m cng cu xy dung h thng c th quyt dinh khi no m ngun cua cc
thnh phn phai duoc bin dich lai v khi m di tuong hin hnh c th duoc ti su dung.
Trong rt nhiu cng cu, nhng tp lnh phu thuc ny thuongduoc xem nhu su phu thuc
gia cc file vt l trong d m ngun v cc thnh phn m di tuong duoc luu tr. Tuy
nhin, khi dy l nhng file da m ngun biu din nhiu thnh phn cua phin ban, c th
rt kh d ni file ngun no d duoc su dung d nhn ly cc thnh phn m di tuong.
Nhng rc ri ny ging tuong duong nhu khi gia ngun v nhng file m di tuong c
cng mt tn nhung khc dui. Vnd ny c th chi duoc giai quyt khi vic quan l phin
ban v cc cng cu xy dung h thngduoc tch hop.
11.6. Cc cng c CASE cho quan tr| cu hnh
Nhng tin trnh quan tri cu hnh thuongduoc chun ha v lin quan dnung dung cua
nhng thu tucdduoc xc dinh truoc. Chng di hoi su quan tri cn mt mt s luong rt lon
d liu v huong toi nhng chi tit chu yu. Khi mt h thngdangduoc xy dung tu nhng
phin ban thnh phn, mt li don gian trong quan tri cu hnh c th c nghia l phn mm
se khng hoat dng dng. Tu d, vic h tro cng cu CASE l thit yu cho quan tri cu
hnh, v tu nhng nm 70 nhiu cng cu phn mm bao gm nhiu pham vi khc nhau cua
quan tri cu hnh dduocdua ra.
Nhng cng cu ny c th duoc kt hop d tao mt m hnh lm vic cua quan tri cu
hnhd h tro moi hoat dng quan tri cu hnh. C hai loai cua m hnh lm vicCM:
1. M hnh lm vic mo Cc cng cu cho mi chng cua qu trnh quan tri
cu hnh duoc tch hop qua nhng thu tuc duoc t chuc chun cho vic su
dung nhng cng cu ny. C rt nhiu cng cu CM ngun mo v mang
tnh thuong mai c gi tri cho nhng muc dch duoc chi ra. Vic quan l
thay di c th duoc h tro nhng cng cu theo di li nhu l Bugzilla,
quan l phin ban bng vic su dung nhng cng cu nhu l make (
Feldman, 1979; Oram v Talbott, 1991) hoc imake (Dubois, 1996).
Chngdu l nhng cng cu ngun mo v du c gi tri min ph.
2. M hnh lm vic tch hop Nhng m hnh ny cung cp nhng kha nng
tch hop cho quan l phin ban, xy dung h thng v kim tra thay di.
Chng han, qu trnh Rations Unified Change Management dua trn mt
m hnh lm vicCM tch hop kt hop voi ClearCASE (White, 2000) cho
xy dung h thng v quan l phin ban v ClearQuest cho theo di thay
di. Su tin loi cua m hnh lm vic CM tch hop l nhng thay di d
liu don gian, v m hnh ny bao gm co so d liu CM tch hop. M
hnh SCM tch hop d duoc nhn ly tu nhng h thng som hon nhu
http://www.ebook.edu.vn 191
Lifespan (Whitgift, 1991) cho quan l thay di v DSEE (Leblang v
Chase, 1987) cho quan l phin ban v xy dung h thng. Tuy nhin, m
hnhCM tch hop rt phuc tap v dt, nn nhiu t chuc vn thch su dung
nhng cng cu h tro re tin v don gian khc hon.
Rt nhiu h thng londuoc pht trino nhng noi khc nhau, v chng cn nhng cng
cu SCM h tro cho lm vic da vi tr voi nhiu noi luu tr d liu cho cc chi muc cu hnh.
Trong khi phn lon cc cng cu SCM duoc thit k cho lm vic don vi tr, mt s cng cu,
nhu CVS, c nhng chuc nng cho h tro da vi tr (Vesperman, 2003).
11.6.1. H tr cho quan l thay di
Mi c nhn lin quan trong qu trnh quan l thay di c trch nhim cho mt s hoat
dng. Ho hon thnh hoat dng ny, v dua nhng m hnh chi muc cu hnh lin quan toi
mt s nguoi khc. Thu tuc tu nhin cua qu trnh ny c nghia l mt m hnh v qu trnh
thay di c th duoc thit k v tch hop voi mt h thng quan l phin ban. M hnh ny c
th duoc thng dich ra nhng ti liud dua toi dng nguoi tai dng thoi dim.
C mt vi cng cu quan l thay di c hiu luc, tu nhng cng cu ngun mo tuongdi
don gian nhu Bugzilla dn nhng h thng tch hop ton din nhu Rational ClearQuest.
Nhng cng cu ny cung cp mt s hoc l tt ca nhng chuc nng sau d h tro tin trnh.
1. Mt dang bin tap cho php nhng dang d xut thay di duoc tao ra v
hon thnh boi nhng nguoi dua ra yu cu thay di.
2. Mt h thng dng lm vic cho php nhm CM dinh nghia nguoi phai
soan thao dang yu cu thay di v trnh tu cua tin trnh. H thng ny se
tu dng dua khung dang ny toi dng nguoi tai dng thoi dim v thng
bo toi nhng nhm thnh vin cua qu trnh di ln cua thay di. Thu din
tu duoc su dungd cung cp nhng su nng cp cho nhngdiu lin quan
ny bn trong qu trnh.
3. Mt co so d liu thay ai duoc su dungd quan l moi d xut thay di
v c th duoc lin kt toi mt h thng quan l phin ban. Nhng chuc
nng truy vn d liu cho php nhm CM tm ra nhng d xut thay di
duoc chi dinh.
4. Mt h thng thng bo thay ai diu hnh nhng ghi chp quan l trn
trang thi cua nhng yu cu thay di dduocd trnh.
11.6.2. H tr cho quan l phin ban
Quan l phin ban lin quan toi quan l mt luong lon thng tin v chc chn rng nhng
thay di cua h thng l duoc ghi lai v theo di. Nhng cng cu quan l phin bandiu hnh
mt noi chua nhng chi muc cu hnh noi m ni dung cua n l khng thay di. D lm vic
trn mt chi muc cu hnh ban phai ly n ra tu noi chua v d n vo mt thu muc lm vic.
Sau khi tao su thay di toi phn mm, bandua n tro lai vo trong muc chua v mt phin
ban moi duoc tu dng tao thnh.
Moi h thng quan l phin bandu cung cp mt tp cc kha nng co ban c th so snh
mc d mt s c nhng chuc nng phuc tap hon nhng thu khc. V du v nhng chuc nng
ny nhu l:
http://www.ebook.edu.vn 192
1. Xc minh phin ban v ban pht hnh Phin ban duoc quan l duoc gn
voi vic xc minh khi chng duoc xem xt toi h thng. Nhng h thng
khc nhau h tro nhng cch xc minh phin ban khc nhau nhu dduoc
xem xt o muc 29.3.1
2. Quan l luu tr D giam khng gian luu tr di hoi boi nhiu phin ban,
h thng quan l cung cp nhng chuc nng quan l khng gian m o d
cc phin ban duoc m ta boi su khc nhau cua chng voi mt s phin
ban chnh. Su khc nhau gia cc phin banduoc biu din nhu delta, ci
duoc tm luoc trong nhng chi thi duoc yu cud ti tao phin ban cua
h thng lin quan. Diu ny duoc minh hoa trn hnh 10.9, n chi ra lm
th no vic khi phuc delta c th duoc xem xt phin ban gn nht cua
toi vic ti tao nhng phin ban som hon cua h thng. Phin ban gn nht
l 1.3. D tao phin ban 1.2 ban xem xt vic thay di delta d ti tao lai
phin band.
Hnh 10.9 Dnh du phin ban
3. Thng bo qu trnh thay ai Moi thay di tc dng toi m cua h thng
hoc l cc thnh phnduoc ghi lai v dua vo s sch. Trong mt s h
thng, nhng thay di ny c th duoc su dung d chon mt phin ban
thuc t cua h thng.
4. Pht trin ac lap Nhiu phin ban cua h thng c th duoc pht trin
song song v mi phin ban c th duoc thay di dc lp. Chng han, ban
pht hnh1 c th duoc chinh sua sau khi pht trin ban 2 bng vic cng
thm mt cp d deltas. H thng quan l phin ban theo di cc thnh
phndduoc kim tra cho vic diu chinh v chc chn rng nhng thay
di tc dng toi cng mt thnh phn boi nhng nguoi pht trin khc
nhau khng xung dt. Mt s h thng cho php chi mt mu cua mt
thnh phn duoc kim tra cho vic chinh sua; mt s khc giai quyt
nhng xung dt timn khi nhng thnh phnd chinh suaduoc dua tro
lai h thng.
Phin ban
1.2
Phin ban
1.1
Phin ban
1.3
Phin ban
1.0
D1 D2 D3
Thoi dim tao
http://www.ebook.edu.vn 193
5. H tro du n H thng c th h tro nhiu du n nhu l nhiu file. Trong
h thng h tro du n, nhu CVS, c th kim tra g ri moi file lin quan
voi mt du n hon l mt file tai mt thoi dim.
11.6.3. H tr xy dng h thng
Xy dung h thng l mt tin trnh chuyn su my tnh. Vic bin tp v lin kt tt ca
moi thnh phn cua mt h thng lon c th mt vi gio dng h. C th c hng trm file
lin quan, voi voi nhng kha nng theo d l li cua con nguoi nu chng duoc bin tp v
lin kt thu cng. Nhng cng cu xy dung h thng tu dng xy dung tin trnh giam nhng
li tim tng do con nguoi gy ra, v ti thiu ha thoi gian di hoi xy dung h thng.
Cc cng cu xy dung h thng c th dung dc lp, nhu vic hnh thnh Unix dua ra
nhng tin ch (Oram v Talbott, 1991), hoc c th duoc kt hop voi nhng cng cu quan l
phin ban. Cc chuc nng cung cp boi nhng cng cu xy dung h thng CASE c th l :
Hnh 10.10 Cc thnh phn phu thuc
1. Mt ngn ng c su phu thuc c hiu qua v trnh thng dich tuong ung.
Nhng thnh phn phu thuc vo nhau c th duoc m ta v ti thiu vic
bin dich lai. Ti se giai thch diu ny chi tit hon sau dy.
2. Cng cu h tro vic ci at v lua chon Trnh bin dich v nhng cng cu
soan thao khc duoc su dung d xu l nhng file m ngun c th duoc
chi dinh v khoi tao nhu yu cu.
3. Su bin dich auoc phn b Mt s cng cu xy dung h thng, dc bit
chng l mt phn cua h thngCM tch hop, h tro bin dichduoc phn
phi trong mang my tnh. So voi moi su bin dich dua trn vic thuc thi
trn mt my don, nhng cng cu xy dung h thng tm kim nhng b
xu l nhn ri trong mang v truyn sao chp mt s cc trnh bin dich
cgen.c
scan.o cgen.o
sem.c
sem.o
syn.c
syn.o
scan.c
defs.h
Comp
http://www.ebook.edu.vn 194
song song. Diu ny rt quan trong trong vic giam thoi gian di hoi d
xy dung h thng.
4. Quan l ai tuong dan xuat Nhngdi tuong dn xut l nhngdi tuong
duoc tao ra tu nhngdi tuong ngun khc. Quan l di tuong dn xut se
lin kt m ngun v di tuong dn xut v dn xut lai chi mt di tuong
khi n duoc yu cu boi vic thay di m ngun.
Quan l di tuong dn xut v ti thiu ha vic bin dich lai duoc giai thch tt nht
bng vic su dung mt v du don gian. Xem xt mt trnh bin dich duoc goi l Comp duoc
tao ra hon bn module di tuong c tn l scan.o, syn.o, sem.o, v cgen.o. Mi module di
tuong duoc tao ra tu mt module m ngun voi tn tuong ung (scan.c, syn.c, sem.c v
cgen.c). Mt file cua bin v nhng khai bo hngduoc goi l defs.h duoc chia se boi scan.c,
syn.c, sem.c (hnh 10.10). Trong hnh 10.10, mui tn c nghia l phu thuc vo_thuc th tai
dui mui tn phu thuc v thuc th tai du mui tn. Tu d, Comp phu thuc vo scan.o,
syn.o, sem.o v cgen.o, scan.o phu thuc vo scan.c ... vn vn.
Nu scan.c thay di, cng cu xy dung h thng, cng cu xy dung h thng c th pht
hin thy rngdi tuong dn xut scan.o cnduoc tao lai. N lm diu ny bng vic so snh
thoi dim hiu chinh cua scan.o v scan.c v nhn thy rng scan.c duoc hiu chinh sau
scan.o. Sau d n se goi trnh bin dich C d bin dich scan.c d tao mt di tuong dn xut
moi l scan.o.
Cng cu xy dung sau d se su dung nhng lin kt phu thuc giaComp v scan.o d
nhn thy rngComp cung cnduoc ti tao bng vic lin kt scan.o, syn.o, sem.o v cgen.o.
H thng c th nhn ra rng nhng thnh phn m di tuong khc l khng thay di, do d
vic bin dich lai m ngun cua chng l khng cn thit.
Phn lon cc cng cu xy dung h thng su dung file ngy chinh sua nhu mt kha thuc
tnh trong vic quyt dinh khi no vic bin dich lai duoc yu cu. Nu mt file m ngun
duoc chinh sua sau file m di tuong tuong ung, th file m di tuong d phai duoc ti tao.
V co ban, c th chi c mt phin ban cua m di tuong tuong ung voi thnh phn m
ngunduoc thay di gnday nht. Khi mt phin ban moi cua thnh phn m ngunduoc ti
tao, m di tuong cua phin ban truoc se bi mt.
Tuy nhin, mt s cng cu su dung mt cc tip cn tinh vi hon cho vic quan l di
tuong dn xut. Ho dnh the dia chi di tuong dn xut voi phin banduoc xc minh cua m
ngunduoc su dungd tao ra di tuong. Trong gioi han cua dung luong luu tr, ho luu gi
moi di tuong dn xut. Boi th, n thuong c kha nng khm ph ra m di tuong cua moi
phin ban cua cc thnh phn m ngun m khng cn bin dich lai.
Nhng dim quan trng
Quan tri cu hnh l vic quan l nhng thay di cua h thng. Khi mt h
thngduoc luu gi, vai tr cua nhm CM l dam bao rng nhng thay di l
duoc phi hop trong pham vi c kim sot.
Trong nhng du n lon, mt k hoach dnh tn ti liu chnh thuc nn duoc
thit lp v su dung nhu mt diu co ban cho vic theo di nhng phin ban
cua moi ti liu du n.
http://www.ebook.edu.vn 195
Nhm CM nn duoc h tro boi mt co so d liu cu hnh c ghi chp thng
tin v nhng thay di cua h thng v nhng yu cu thay di. Du n nn c
mt s diu kin chnh thuc cua yu cu thay di h thng.
Khi spdt mt chin luoc quan tri cu hnh, mt chin luoc xc minh phin
ban thch ung nn duoc thit lp. Cc phin ban c th duoc xc dinh boi s,
boi mt tp cc thuc tnh lin quan hoc boi nhng thay di h thngduocd
xut m n thuc thi.
Nhng ban pht hnh cua h thng bao gm m thuc thi, file d liu, file cu
hnh v cc ti liu. Quan l ban pht hnh bao gm ra quyt dinh ngy pht
hnh, chun bi moi thng tin cho phn phi v ti liu ha mi ban pht hnh
cua h thng.
Xy dung h thng l mt qu trnh kt hop cc thnh phn cua h thng vo
trong chuong trnh thuc thi d chay trn mt s h thng my tnh muc tiu.
Nhng cng cu CASE c gi tri cho vic h tro moi hoat dng quan tri cu
hnh. Chng bao gm nhng cng cu nhu CVS d quan l phin ban h thng,
nhng cng cu cho quan l thay di v nhng cng cu cho vic xy dung h
thng.
Nhng cng cu CASE cho CM c th l nhng cng cu dc lp h tro quan l
thay di, quan l phin ban v xy dung h thng, hoc c th l nhng m
hnh lm vic duoc tch hop nhm cung cp mt giao din chung cho moi h
tro cho CM.
Bi tp
1. Giai thch tai sao ban khng nn su dung tiu d cua mt ti liud xc dinh
cc ti liu trong h thng quan tri cu hnh. Goi rng mt tiu chun cho
chin luoc xc dinh ti liu c th duoc su dung cho moi du n trong mt t
chuc.
2. Su dung mt cch tip cn huongdi tuong (trong chuong 8), thit k mt m
hnh co so d liu cu hnh c ghi lai thng tin v cc thnh phn h thng,
cc phin ban, cc ban pht hnh v su thay di. Mt s yu cu cho m hnh
ny nhu sau:
- N c kha nng truy xut moi phin ban hoc l mt phin ban don
duoc chi ra cua mt thnh phn.
- N c kha nng truy xut toi phin ban gn nht cua thnh phn
- N c kha nng tm kim nhng yu cu thay di no dduoc thuc thi
boi mt phin ban thuc t cua h thng.
- N c kha nng khm ph ra phin ban no cua cc thnh phn duoc
bao gm trong mt phin ban cua h thng duoc chi dinh.
- N c kha nng truy xut toi mt ban pht hnh thuc t cua h thng
dua theo ngy hoc l theo khch hng duoc phn phi.
3. Su dung mt so d lung d liu, m ta mt thu tuc quan l thay di c th
duoc su dung trong mt t chuc lon c lin quan voi vic pht trin phn mm
http://www.ebook.edu.vn 196
cho nhng khch hng mo rng. Nhng thay di c th duoc d xut hoc l
tu bn ngoi hoc l tu bn trong.
4. Tai sao mt h thng quan tri cu hnh du n co so nhu CVS lai lm don gian
ha tin trnh quan l phin ban.
5. Giai thch tai sao mt h thng xc minh phin ban dua trn cc thuc tnh co
ban lm cho n d dng pht hin ra moi thnh phn tao nn phin band cua
h thng.
6. M ta nhng kh khn c th tng ln khi xy dung mt h thng tu nhng
thnh phn cua n. Vnd thuc t g c th say ra khi mt h thng duoc xy
dung trn mt my tnh chu cho mt s my mc muc tiu khc.
7. Voi tham chiu toi vic xy dung h thng, giai thch tai sao ban c th di
khi phai luu tr nhng my tnh cu trn d nhng h thng phn mmdduoc
mo rng.
8. Mt vn d chung voi xy dung h thng nay sinh khi tn nhng file vt l
duoc kt hop trong m h thng v cu trc file ngu nhng tn ny phn bit
voi n o my mc muc tiu. Vit mt tp huong dn cho nguoi lp trnh trnh
khoi vnd ny v nhng vnd xy dung h thng khc m ban nghi c th
say ra.
9. M ta nm nhn t nn duoc dem vo trong ti khoan boi nhng ki su trong
sut qu trnh xy dung mt ban pht hnh cua h thng phn mm lon.
10. M ta hai cch trong d nhng cng cu xy dung h thng c th trng mong
vo qu trnh xy dung mt phin ban cua h thng tu nhng thnh phn cua
n.
http://www.ebook.edu.vn 197
PHJ LJC- CC CU HOI N TAP
1. Cht lung v dam bao cht lung phn mm
1.1. Khi nim v dam bao cht lung
1. Cht luong cua mt san phmduoc san xut l g? Di voi phn mm, dinh nghiad
cdng khng? Lm th no d p dung dinh nghiad?
2. Ci g duoc dng lm co so d kimdinh cht luong phn mm?
3. D lm co so cho vic kimdinh cht luong, dc ta yu cu phn mm cn thoa mn
aiu kin g? Nu mt vi v du v diu kindua ra?
4. Cc nhn t anh huong ln cht luong phn mm c my muc d? Nhng loai nhn
t no anh huong dn cht luong?
5. Nu cc dc trung anh huong ln cht luong cua mi loai nhn t (ac trung chuc
nng, kha nng thch nghi voi thay ai, kha nng thch nghi voi mi truong) ?
6. C th do truc tip cht luong phn mm khng? Tai sao? Vy phai do bng cch no?
7. K ra cc d dodc trung cht luong chnh cua McCall v giai thch ni dung cua n?
8. Giai thch ni dung cc thuc tnh cht luong phn mm sau dy v nu ra cc d do
lin quan duoc su dungd do thuc tnh d:
Tnh ang an, Tnh tin cay auoc, Tnh hiu qua, Tnh ton ven, Tnh kha dung, Tnh
bao tr auoc, Tnh mm deo, Tnh thu nghim auoc, Tnh kha chuyn, Tnh lin tc
auoc?
9. Nu cc dc trung cht luong theo Hawlett? Giai thch ni dung mi loai?
1.2. Tin ha cua hot dng dam bao cht lung
10. Dam bao cht luong phn mm xut pht tu du? Tin trin cua n nhu th no?
11. Tai sao cn dam bao cht luong phn mm? N dng vai tr g trong mt doanh
nghip pht trin phn mm?
12. Khi no cn thuc hin cc hoat dng dam bao cht luong phn mm?
13. Trong mt t chuc, nhng ai tham gia vo hoat dngdam bao cht luong? Vai tr v
trch nhim cua mi di tuong d l g?
14. Muc tiu cua SQA l g? Cc hoat dng chnh dam bao cht luong phn mm l nhng
hoat dng no?
15. Giai thch ni dung tm tt cua mi hoat dng chnh dam bao cht luong?
1.3. R sot phn mm
16. R sot phn mmduoc hiu l g (Khi nim, muc tiu, cch thuc p dung)? Nu cc
loi ch cua vic r sot? Nu khng thuc hin r sot th sao?
17. Cc hnh thuc cua hoat dng r sot? Trnh by khi nim, muc tiu cua r sot k
thut chnh thuc?
http://www.ebook.edu.vn 198
18. Ve so d tin trnh cua hoat dng r sot v giai thch so b ni dung mi buoc?
19. Trnh by ni dung co ban mt cuc hop r sot: thnh phan, thoi gian, cng vic can
lm, phuong chm ?
20. Cc san phm cua cuc hop r sot l g? Ni dung, vi tr cua mi san phmd?
21. Khi no tin hnh ra sot? cn ra sot nhng san phm g?
22. Trnh by ni dung, danh muc r sot cua
a. r sot k ngh h thng?
b. r sot vic lp k hoach?
c. r sot phn tch yu cu phn mm ?
e. r sot thit k phn mm ?
f. r sot khu lp m phn mm?
g. r sot kim thu phn mm ?
2. Cc d do dc trung cht lung phn mm
2.1. Cc d do chi s cht lung chuong trnh
23. Nu cc k hiu v giai thch ni dung, nghia cc dai luong : s1,s2,s3,s4,s5,s6,s7 v
cc d do trung gian: D1=1&0, (D2=1-s2/s1), (D3=1-s3/s1), (D4=1-s5/s4), (D5=1-
s6/s4), (D6=1-s7/s1)?
24. Su dung cng thuc Ew
i
D
i
voi Ew
i
=1 nhu th no v d lm g?
25. Giai thch ni dung cc thnh phn v nghia cuad do
SMI = v cch su dung n?
26. S dod phuc tap cua McCabe dua trn ci g v nhngdai luong cu th no?
27. Dam bao cht luong phn mm dua trn thng k nghia l g? N gm nhng cng
vic g? K t nht 5 nguyn nhn cua nhng khim khuyt trong phn mm?
28. Nu cng thuc tnh khim khuyt cua san phmo mt pha pht trin? v cng thuc
tnh khim khuyt cua san phm cui cng? Giai thch nghia cua n?
29. Tip cn hnh thuc cho SQA nghia l g? Qu trnh phng sach l g? Phuong chm
cua k thut ny l g?
2.2. Cc d do v s tin cy v an ton
30. D tin cy cua phn mm hiu l ci g? Dod tin cy dua trn nhng d liu no?
31. Th no l tht bai cua phn mm? C my thang bc? l nhng thang bc no?
32. Nu chi tiu d tnh d tin cy? Nu cng thuc tnh d sn sng? Giai thch nghia
cua chng?
33. C nhng m hnh d tin cy no? N dua trn tham bin no v trn gia thit no?
M hnh d tin cy gieo hat dua trn tuong no? Muc tiu d lm g?
MT Fa Fc -Fd
MT
http://www.ebook.edu.vn 199
34. D an ton phn mm l ci g? C nhng phuong php no d phn tch d an ton?
35. Khao st nhu cu SQA gm nhng ni dung g? nhm tra loi cho cu hoi g? Nu c
nhu cu th lm g?
36. C nhng vnd g dt ra khi trin khai SQA? Loi ch cua SQA l g? Nguyn tc chi
ph hiu qua cua SQA l g?
3. Kim thu phn mm
3.1. Khi nim v kim thu
37. Tai sao phai kim thu phn mm? Muc tiu kim thu l g? Tu d c nhng quan
nim sai g v kim thu phn mm?
38. Th no l mt ca kim thu tt? ca kim thu thnh cng? Loi ch phu cua kim thu l
g?
39. Biud dng thng tin kim thu m ta ci g? ve biud cua n?
40. Nu cc di tuong, cc phuong php kim thu phn mm? chng thuong duoc su
dung vo giai doan no cua qu trnh pht trin?
41. Mt ca kim thu l ci g? Muc tiu thit k ca kim thu? cc buoc d thit k mt ca
kim thu?
42. Kim thu hp trng l ci gi? Nu cc dc trung cua n?
43. Kim thu hpden l ci g? Nu cc dc trung cua n?
44. Chin luoc kim thu phn mm l ci g? Nu cc nguyn tc trong chin luoc kim
thu phn mm?
45. Nu cc buoc cua chin luoc kim thu thoi gian thuc v giai thch ni dung mi buoc?
46. C nhng loai cng cu tu dng no tro gip kim thu? M ta ni dung mi loai?
47. Ai l nguoi phai tham gia kim thu phn mm? Nu vai tr v trch nhim cua mi
di tuong?
3.2. Cc phuong php kim thu
a. Kim thu hp trng
48. Kim thu hp trng dua trn co so no d thit k cc ca kim thu? Thit k ca kim
thu phai dam baodiu kin g?
49. D thi dng gm nhng yu t no? xy dung n dua vo du? N c cc dc trung
g? D thi dng dng d lm g?
50. Con duong co ban trong d thi dng l ci g? D phuc tap cua chu trnh l g? Nu
cc cng thuc tnh d phuc tap?
51. Ma trn thu nghimduoc cu trc nhu th no? N dng d lm g?
52. Nu cc loai diu kin trong cudiu khin v cho v du? C nhng loai sai no trong
diu kin khi kim thu?
http://www.ebook.edu.vn 200
53. Chin luoc kim thu phn nhnh nghia l g? Yu cudt ra cho kim thu phn nhnh
l g?
54. Chin luoc kim thu min l ci g? N dua trn tu tuong no?
55. Chin luoc kim thu BRO l ci g? N dua trn tu tuong no?
56. Ly v du v cc diu kin rng buc ra cho cc truong hop: 1 bin Bool, hop cua
bin Bool v biu thuc quan h , hop cua hai biu thuc quan h?
57. Kim thu diu khin dng d liu nghia l g? Cho v du?
58. Kim thu diu khin vng lp ghia l g? Cho v du?
b. Kim thu hp den
59. M hnh cua kim thu hp den quan tm dn nhn t no cua phn mm? N nhm
tm ra cc loai sai no? Nu cc phuong php p dung cho n?
60. Trnh by phuong php phn hoach: nguyn tc, muc tiu v thit k ca kim thu?
Phuong chm xc dinh lop tuongduong l g?
61. Phn tch gi tri bin nghi l g? Phuong chm phn tch gi tri bin l g?
62. K thut nhn qua nghia l g? Nu cc buoc cua k thut ny?
63. Chin luoc km thu thoi gian thuc gm my buoc? l nhng buoc no? Giai thch ni
dung co ban mi buoc?
c. Kim thu don v|
64. Kim thu don vi l g? Quan h cua n voi hoat dng m ha nhu th no?
65. Hoat dng kim thu don vi gm nhng ni dung gi? N lin quan dn nhng nhn t
no? Nu mt vi cu hoi cn kim thu cho cc nhn t d?
66. K thut kim thu don vi su dung l g? v sao phai su dung k thut d? C nhng
kh khn, thun loi g?
d. Kim thu tch hp
67. Kim thu tch hop thuc hin khi no? Tai sao phai kim thu tch hop?Nu mt s cu
hoi dt ra cho kim thu tch hop?
68. C nhng phuong php g duoc p dung cho kim thu tch hop? m ta tm tt ni
dung mi phuong php?
69. Nu cc buoc kim thu tch hop tu trn xung? Uu nhuocdim cua cch tip cn ny?
70. Nu cc buoc kim thu tch hop tu duoi ln? Uu nhuocdim cua cch tip cn ny?
71. Cc ti liu kim thu tch hop gm nhng loai g?
e. Kim thu h thng
72. Kim thu Beta l ci g? Kim thu Alpha l ci g? Nu su ging v khc nhau co ban
gia chng ?
http://www.ebook.edu.vn 201
73. Ni dung chnh cua kim thu h thng ? Nu mt s cu hoi dt ra cho vic kim thu
h thng ?
74. Kim thu phuc hi l g ?
75. Kim thu an ninh l g ?
76. Kim thu p luc l g
77. Kim thu thi hnh l g
78. G ri duoc hiu l g ? N thuc hin khi no ? Kh khn cua vic g ri l g?
79. Trnh by tin trnh g ri ? cc cch thuc g ri ? uu nhuocdim cua chng?
4. Quan l cu hnh phn mm
80. Quan l cu hnh phn mm l gi? Ni dung cua hoat dng quan l cu hnh gm
nhng cng vic g?
81. Cu hnh phn mmduoc hiu l ci g? ni dung cc khoan muc chnh cua cu hnh
phn gm nhng g?
82. Quan l cu hnh nhm muc tiu g? Nm nhim vu cua quan l cu hnh l g?
83. Phuong php g duoc p dung cho vic quan l cu hnh? Mc gioi l ci g? Su dung
mc gioi d kim sot su thay di nhu th no?
84. Trnh by tin trnh kim sot su thay di?
85. Phin ban l ci g? Lm th no d kim sot cc phin ban
86. Kim ton cu hnh phn mm nghia l g? Hoat dng kim ton cn tra loi nhng cu
hoi g?
87. Bo co hin trang nghia l g? N cn tra loi duoc nhng cu hoi g? Du ra cua bo
co hin trang dnh cho ai? muc tiu cua n l g?
http://www.ebook.edu.vn 202
TI LIJU THAM KHAO
[1] Hong Vn Kim, Gio trnh chuyn a Nguyn l v phuong php ngn ng lap
trnh, Dai hoc Quc gia TP. H Ch Minh, 2005.
[2] Cem Kaner, J ames Bach, Bret Pettichord, Lessons Learned in Software Testing. A
Context-Driven Approach, J ohn Wiley & Sons, 2001.
[3] Software Testing and Quality Control - Knowledge Bases, http://www.compinfo-
center.com/tpsw12-t.htm
[4] Cem Kaner, J ames Bach, Black Box Software Testing, Center for Software Testing
Education & Research, Florida Institute of Technology, 2005.
[5] The Test Management Guide - A to Z and FAQs,
http://www.ruleworks.co.uk/testguide/
[6] The Test Management Guide - A to Z and FAQs,
http://www.ruleworks.co.uk/testguide/
[8] IPL, An Introduction to Software Testing, IPL Information Processing Ltd, 2002.
[9] [BEI90] Beizer, B.,Software Testing Techniques, 2d ed., Van Nostrand Reinhold,
1990,
[10] [DEU79] Detsch, M., Verification and Validation in software Engineering,(R.
J ensen and C. Tonies, eds.) Prentice-Hall, 1979, pp 329-408.
[11] Software Engineering A Practitioners Approach, Roger S. Pressman.

You might also like