Tải bản đầy đủ (.pdf) (82 trang)

đảm bảo chất lượng phần mềm và kiểm thử chương 4 thẩm dịnh và xác minh

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (457.96 KB, 82 trang )

§¹i häc Quèc gia Hμ néi - §¹i häc c«ng nghÖ
Bé m«n C«ng nghÖ phÇn mÒm
BÀI GiNG
M BO CHT LNG PHN MM
VÀ KiM TH
NguyÔn V¨n Vy
Email: , mobile: 0912.505.291
Hà ni - 2005
2005 B môn CNFM – i hc Công ngh 2
NguyÔn V¨n Vþ
THM NH VÀ XÁC MINH
Phn III
2005 B môn CNFM – i hc Công ngh 3
NguyÔn V¨n Vþ
̈ Các loi kim th
̈ Thm đnh và xác minh
Ni dung – Tài liu
¬ Roger S. Pressman. Software Engineering, a Practitioner’s
Approach
. 3th Edition, McGraw-Hill, 1992, Bn dich ca Ngô
Trung vIt,
Phn 4, tp 4 (Chng 17, 18, 23 –bn 2001)
¬ Ian Sommerville. Software Engineering, Sixth Edition, Addion
Wesley, 2001
, Phn 5 và 6. chng 20
¬ E.M.Bennatan, Software Project Management : a practitioner’s
approach
, McGRAW-HILL Book Company, 2001
¬ Nguyn Vn V, Nguyn Vit Hà. Giáo trình k ngh phn mm,
i hc Công ngh, HQGHN, 2006.
2005 B môn CNFM – i hc Công ngh 4


NguyÔn V¨n Vþ
g1. Khái nim kim th h thng
̌ H thng da trên máy tính do nhiu bên xây dng,
ngi phát trin phn mm ch là mt
̌ Vic kim th h thng d có nguy c các bên tham gia
“đ li cho nhau”.
̌ Nhng sai có th ny sinh t:
• Các d liu qua giao din ca các thành phn đc
kim th
• ng x lý liên kt các thành phn
• S tích hp li t các thành phn khác nhau
• Nhng hn ch khác đn nng lc do nh hng t các
thành phân: chu li, an toàn, thc thi
g. Kim th h thng
2005 B môn CNFM – i hc Công ngh 5
NguyÔn V¨n Vþ
̌ Yêu cu đt ra:
• mô phng các d liu xu & các sai tim tàng ti giao
din phn mm.
• Kim th kt qu ca mi đng liên kt
• Báo cáo các kt qu kim th phân đnh tng phn, tng
loi làm chng c
phòng nga đ li cho nhau.
• Vic hoch đnh và thit k các ca kim th h thng
theo nhng cách nhìn khác nhau sao cho
bo đm ph
n
mm đc kim th đy đ, chính xác các loi yêu cu
g1. Khái nim v kim th h thng
2005 B môn CNFM – i hc Công ngh 6

NguyÔn V¨n Vþ
g2. Mô hình kim th h thng
D liu qua giao
din có th sai
, gây
sai, phóng đi sai
sai?
Phóng đi
sai?
Gây sai?
sai?
2005 B môn CNFM – i hc Công ngh 7
NguyÔn V¨n Vþ
g3. Các loi kim th h thng
1. Kim th chc nng (mc h thng)
2. Kim th phc hi (
chu li)
3. Kim th an ninh (
sc chu tn công)
4. Kim th thi hành (
thông sut, kp thi)
5. Kim th chu ti (
qui mô, giá tr nhy cm)
2005 B môn CNFM – i hc Công ngh 8
NguyÔn V¨n Vþ
g4. Kim th chc nng mc h thng
̌ Chc nng mc h thng bao gm các chc
nng giao din, các chc nng mc ngi
dùng hay đu ra cui cùng khi h thng
̌ Các chc nng này thng mang tính tích hp.

Nên sau khi
phát hin sai phi quay li kim
th tng phn cu thành trc nó
̌ Các giao din (ngi dùng, h thng) đc
xem nh đim phân đnh gia các phn đ
ki
m th
2005 B môn CNFM – i hc Công ngh 9
NguyÔn V¨n Vþ
¸ Nhiu h thng cn phi phc hi sau li, đ tip tc
x lý trong mt thi gian đã đc t trc, có th:
̈
h thng cn th li: ngha là x lý li bt buc không
đc làm ngng hot đng ca toàn h thng.
̈ li phi đc khc phc dn theo chu k đã đc t.
¸ kim th phc hi là bt phn mm phi tht bi đ
xem kh nng phc hi ca nó đn đâu.
¸
 tin cây là mt đ đo đánh giá kh nng phc hi
g4. Kim th phc hi
2005 B môn CNFM – i hc Công ngh 10
NguyÔn V¨n Vþ
Có 2 cách phc hi:
̌
Phc hi t đng: bng khi đng li (c ch
checkpoint). Sau khi phc hi d liu, h thng t tip
tc hay khi đng li
thì đc đánh giá là đúng đn.
̌
Phc hi có s can thip ca con ngi. Lúc này cn

đánh giá
thi gian trung bình đ sa chatrong gii
hn
cho phép hay không?
g4. Kim th phc hi
2005 B môn CNFM – i hc Công ngh 11
NguyÔn V¨n Vþ
̌ Là kim tra mi c ch bo v đc xây dng trong
h thng xem có đt hiu qu đ ra trc các đt
nhp hay không?
̌ Xét
tt c các loi đt nhp có th “trc mt”,
“ngang xn” và “sau lng”.
̌ Khi th nghim an ninh, ngi kim th s
đóng vai
trò ca k đt nhp.
g5. Kim th an ninh
2005 B môn CNFM – i hc Công ngh 12
NguyÔn V¨n Vþ
¸ V nguyên tc: Mi đt nhp là có th nu đ thi gian
và ngun lc.
¸ Bài toán thit k h thng an ninh đt ra là:
̈ làm cho vic đt nhp tn phí nhiu hn giá tr thu
đc
do đt nhp
̈ Công sc b ra xây dng công c bo v phi ít
hn giá tr mt đi nu b đt nhp
Chi phí công c bo v < li ich do bo v khi đt nhp
Chi phí đ đt nhp > li ích thu đc t đt nhp
g5. Kim th an ninh

2005 B môn CNFM – i hc Công ngh 13
NguyÔn V¨n Vþ
̌ Các k thut hp trng và hp đen đc dùng đ đánh
giá chc nng
và s thi hành ca chng trình  mc
bình thng
.
̌ Kim th chu ti là
vn hành h thng khi s dng
ngun lc
vi s lng, tn sut và cng đ d
thng.
̌ Mt loi khác ca th nghi
m áp lc là
kim th đ
nhy
: c gng làm bc l các t hp d liu (lp d
liu vào có hiu lc) hay
s kin mà có th gây ra vic
x lý
không n đnh hoc không chính xác.
g6. Kim th chu ti
2005 B môn CNFM – i hc Công ngh 14
NguyÔn V¨n Vþ
̌ Vi h nhúng & h thi gian thc, phn mm cung
cpchc nng
nhng không phù hp vi các yêu cu
thi hành đu là không chp nhn đc.
̌ kim th thi hành đc thit k đ kim th vic vn
hành (run-time)

ca phn mm khi h thng đc tích
hp
.
̌ kim th thi hành xut hin trong tt c các b
c
ca
quá trình kim th, tuy nhiên ch
khi tt c các phn t
ca
h thng đã đc tích hp thì kim th mi thc
s là chc chn
.
̌ Vic thi hành đúng bao gm c s lng, cht lng
(
hot đng và hiu nng)
g7. Kim th thi hành
2005 B môn CNFM – i hc Công ngh 15
NguyÔn V¨n Vþ
¸ Thng gn lin vi kim th áp lc vì c hai thng
đòi hi các dng c phn cng và phn mm chuyên
dng. Vì cn đo s tng hp ngun lc (trong, ngoài)
và Nh dng c ngoi lai đ giám sát các khong vn
hành, các s kin ngt (log) khi nó xut hin, có th
ly mu các trng thái máy.
¸ Có th làm bc l
 các tình th dn
đns suy gim
hiu nng hoc tht bi h thng tim n.
g7. Kim th thi hành
2005 B môn CNFM – i hc Công ngh 16

NguyÔn V¨n Vþ
h1. Khái nim kim th chp nhn
̌ Kt thúc kim th tích hp, phn mm đã đc lp
ráp trong mt gói, các sai giao din đã chnh sa,
Các kim th cui cùng bt đu - kim th chp
nhn
hay thm đnh (acceptation/validation testing)
̌ Thm đnh là thng li nu các chc nng phn mm
 mt chng mc nào đólà
tho mãn s mong đi
h
p lý
ca ngi đt hàng
̌
Mc tiêu thm đnh: xem phn mm có đáp ng đc
yêu cu khách hàng không?
h. Kim th chp nhn- thm đnh
2005 B môn CNFM – i hc Công ngh 17
NguyÔn V¨n Vþ
̌ Cái “mong đi hp lý”ca khách hàng th hin:
• Trong c t yêu cu phn mm bao gm c mô t đc
gi là
tiêu chun kim th phn mm
• Thông qua đánh giá trc tip khi s dng
̌ Thm đnh phn mm đc thc hin thông qua mt
lot các
kim th hp đen đ thuyt minh s phù
hp ca nó vi các yêu cu.
h1. Khái nim kim th chp nhn
2005 B môn CNFM – i hc Công ngh 18

NguyÔn V¨n Vþ
¸ Mt k hoch phác ra nhng lp kim th cn tin
hành và
mt th tc kim th xác đnh các ca kim
th s thc hin
đ thuyt minh s phù hp vi các
yêu cu.
¸ C k hoch & th tc đc thit k đ bo đm rng:
̈ Tt c các yêu cu đc tho mãn,
̈ Các yêu cu thi hành đã chính xác,
̈ Tài liu đúng đn và
̈ Các yêu cu khác là tho đáng.
h1. Khái nim kim th chp nhn
2005 B môn CNFM – i hc Công ngh 19
NguyÔn V¨n Vþ
¸ Sau mi ca kim th, phn mm  vào mt trong hai
trng hp
sau:
̈ Các đc tính chc nng hoc s thc hin phù
hp vi đc t
và đc chp nhn.
̈ Các lch lc so vi đc t và mong đi đc phát
hin và mt danh sách
các khim khuyt đc to
ra.
Các sai sót không chnh sa trong giai đon này.
Thng phi tho lun li vi khách hàng đ thit
lp mt phng pháp gii quyt các sai lch này.
h2. Tiêu chun kim th thm đnh
2005 B môn CNFM – i hc Công ngh 20

NguyÔn V¨n Vþ
¸ Ngi phát trin không th đoán trc đc khách
hàng thc s
dùng mt chng trình nh th nào:
̈ Các ch dn s dng có th b hiu lm.
̈ Các t hp d liu l có th b s dng đnh k.
̈ u ra là rõ ràng đi vi ngi kim th nhng
có th li
khó hiu đ
i vi ngi dùng
.
h3. Kim th Alpha và Beta
2005 B môn CNFM – i hc Công ngh 21
NguyÔn V¨n Vþ
̌ Khi các phn mm dành cho 1 ngi đt hàng, thì hot
đng kim th chđc
1 khách hàng tin hành đ
thm đnh mi yêu cu.
̌ Tin hành kim th này do
ngi s dng đu cui
thc hin,
không phi là ngi đt hàng.
̌ Kim th chp nhn có th tin hành vài tun hoc vài
tháng mt ln, nh đómà
bc l đ
c các li tích lu
làm suy gim h thng theo thi gian.
h3.1. Kim th Alpha & Beta 1 khách
2005 B môn CNFM – i hc Công ngh 22
NguyÔn V¨n Vþ

¸ Khi phn mm dành cho nhiu ngi đt hàng, thì
kim th chp nhn bi mt khách hàng là không thc
t. Quá trình kim th alpha và kim th bêta
cho
nhiu ngi tin hành
là bt buc. Ch nhng ngi
s dng đu cui mi có th phát hin đc các sai
cho lp ngi dùng đa dng.
h3.2. Kim th Alpha & Beta n khách
2005 B môn CNFM – i hc Công ngh 23
NguyÔn V¨n Vþ
¸ kim th alpha đc bên phát trin tin hành:
̈ Phn mm đc ngi dùng thc hin trong bi cnh “t
nhiên”
̈ Ngi phát trin “nhòm qua vai” ngi s dng đ báo cáo
các sai và các vn đ s dng (vì th còn gi là
kim th
sau lng
).
¸ kim th alpha đc tin hành trong mt môi trng
đc điu khin
(theo k hoch ca ngi phát trin).
¸ D liu cho kim th Alpha thng là d liu môphng
h3.3. Kim th Alpha
2005 B môn CNFM – i hc Công ngh 24
NguyÔn V¨n Vþ
¸ kim th bêta đc nhiu ngi đt hàng tin hành ,
không có mt Ngi phát trin.
¸ kim th bêta là áp dng trong môi trng thc, không
có s kim soát ca ngi phát trin.

¸ Khách hàng s báo cáo tt c các vn đ (thc hoc
tng tng) mà h gp trong quá trình kim th cho
ngi phát trin mt cách đnh k.
¸ Theo các báo đó Ngi phát trin c
i biên và chun b
phân phi
bn phát hành bn hoàn thin cho toàn b
nhng ngi đt hàng.
h3.4. Kim th Beta
2005 B môn CNFM – i hc Công ngh 25
NguyÔn V¨n Vþ
̌ Kt qu ca kim th thng mich ra li và cho thy
nhng triu chng vn đ
ca phn mm.
Nguyên nhân ca li hay vn đ có th cha rõ: Biu
l bên ngoài ca sai & nguyên nhân bên trong ca sai
có th không có quan h rõ ràng.
̌ Kim th thành công dn đn vic g ri. G ri
không phi là kim th mà là tìm nguyên nhân gây l
i
đ loi tr li å khác vi kim th
i. Ngh thut g ri (debugging)

×