
KI M TRA CH T L NG PH N M MỂ Ấ ƯỢ Ầ Ề
Nh đã nói tr c, s n ph m ph n m m đ c g i là đúng n u nó th c hi nư ở ướ ả ẩ ầ ề ượ ọ ế ự ệ
đ c chính xác nh ng tiêu chu n mà ng i thi t k đã đ t ra. Đ có m t đánh giáượ ữ ẩ ườ ế ế ặ ể ộ
chính xác v c p đ đúng c a ph n m m, ta ph i ki m tra ch t l ng ph n m m.ề ấ ộ ủ ầ ề ả ể ấ ượ ầ ề
Nh th , ki m tra là quá trình tìm l i và nó là m t đánh giá cu i cùng v các đ c t ,ư ế ể ỗ ộ ố ề ặ ả
thi t k và mã hoá. M c đích c a ki m tra là đ m b o r ng t t c các thành ph nế ế ụ ủ ể ả ả ằ ấ ả ầ
c a ng d ng ăn kh p, v n hành nh mong đ i và phù h p các tiêu chu n thi t k .ủ ứ ụ ớ ậ ư ợ ợ ẩ ế ế
Trong ch ng này, chúng ta th o lu n các chi n l c ki m tra ph n m m vàươ ả ậ ế ượ ể ầ ề
các k thu t, ph ng pháp hi u qu cho m i m c đ ki m tra. Cu i cùng, các côngỹ ậ ươ ệ ả ỗ ứ ộ ể ố
c h tr ki m tra t đ ng và các công c h tr ki m tra đ c l p đ c trình bày đụ ỗ ợ ể ự ộ ụ ỗ ợ ể ộ ậ ượ ể
h tr cho quá trình ki m tra. ỗ ợ ể
6.1. Đ TIN C Y C A PH N M M Ộ Ậ Ủ Ầ Ề
6.1.1. Ch t l ng ph n m m và vi c đ m b o ch t l ng ph n m mấ ượ ầ ề ệ ả ả ấ ượ ầ ề
Ki m tra ch t l ng ph n m m là m t ho t đ ng khó khăn đ ch p nh n vể ấ ượ ầ ề ộ ạ ộ ể ấ ậ ề
m t ý th c vì chúng ta đang cân nh c công vi c c a chúng ta ho c c a đ ng nghi pặ ứ ắ ệ ủ ặ ủ ồ ệ
đ tìm l i. Sau quá trình làm vi c trong nhóm và tr thành thành viên, chúng ta ng iể ỗ ệ ở ạ
tìm ra l i và không phát hi n đ c ra chúng thông qua ki m tra. Khi m t ng i nàoỗ ệ ượ ể ộ ườ
đó ti n hành ki m tra l i không ph i là thành viên c a d án, ví d m t chuyên giaế ể ạ ả ủ ự ụ ộ
ki m tra, h đ c nhìn nh n nh là m t k thù.ể ọ ượ ậ ư ộ ẻ
Thêm vào đó, ki m tra ch t l ng ph n m m l i là m t ho t đ ng khó đ cể ấ ượ ầ ề ạ ộ ạ ộ ượ
ch p nh n đ i v i vi c qu n lý vì nó t n kém, m t th i gian và hi m khi phát hi nấ ậ ố ớ ệ ả ố ấ ờ ế ệ
đ c l i. K t qu là ph n l n các ng d ng không đ c ki m tra đ y đ và đ cượ ỗ ế ả ầ ớ ứ ụ ượ ể ầ ủ ượ
phát hành v i l i ti m n.ớ ỗ ề ẩ
Tuy v y, ch t l ng ph n m m cao là m t m c tiêu quan tr ng c a nhómậ ấ ượ ầ ề ộ ụ ọ ủ
phát tri n ph n m m. Do v y, c n và ph i đ m b o các tiêu chu n c a ph n m mể ầ ề ậ ầ ả ả ả ẩ ủ ầ ề
nh đã đ c p ch ng 2. Đ m b o ch t l ng ph n m m là m t ho t đ ng có hư ề ậ ở ươ ả ả ấ ượ ầ ề ộ ạ ộ ệ
th ng và k ho ch. Nó bao g m nhi u nhi m v liên k t v i các ho t đ ng chínhố ế ạ ồ ề ệ ụ ế ớ ạ ộ
sau:
+ Áp d ng các ph ng pháp k thu t,ụ ươ ỹ ậ
+ Ti n hành các cu c xét duy t k thu t chính th c,ế ộ ệ ỹ ậ ứ
+ Ki m th ph n m m,ể ử ầ ề
+ Bu c tôn tr ng các chu n,ộ ọ ẩ
+ Ki m soat thay đ i,ể ổ
+ Đo ch t l ng,ấ ượ
+ Báo cáo, l u gi k t qu .ư ữ ế ả
Theo chu n ANSI/IEEE, k ho ch đ m b o ch t l ng ph n m m nh sau:ẩ ế ạ ả ả ấ ượ ầ ề ư
I.M c đích c a k ho chụ ủ ế ạ

Ch ng 6: Ki m tra ch t l ng ph n m mươ ể ấ ượ ầ ề
II. Tham kh oả
III. Qu n lýả
A. T ch cổ ứ
B. Nhi m vệ ụ
C. Trách nhi mệ
IV. Tài li uệ
A. M c đíchụ
B. Tài li u công ngh ph n m m c n thi tệ ệ ầ ề ầ ế
C. Các tài li u khácệ
V. Chu n, th c hành và quy cẩ ự ướ
A. M c đíchụ
B. Quy cướ
VI. Xét duy t và ki m toánệ ể
A. M c đíchụ
B. Các yêu c u xét duy tầ ệ
1. Xét duy t yêu c u ph n m mệ ầ ầ ề
2. Xét duy t thi t kệ ế ế
3. Ki m ch ng ph n m m và xét duy t h p lể ứ ầ ề ệ ợ ệ
4. Ki m toán ch c năngể ứ
5. Ki m toán v t lýể ậ
6. Ki m toán trong ti n trìnhể ế
7. Xét duy t qu n lýệ ả
VII. Qu n lý c u hình ph n m mả ấ ầ ề
VIII. Báo cáo v n đ và cách s a ch a ấ ề ử ữ
IX. Công c , k thu t và ph ng pháp lu nụ ỹ ậ ươ ậ
X. Ki m soát mãể
XI. Ki m soát ph ng ti nể ươ ệ
XII. Ki m soát ng i cung c pể ườ ấ
XIII. Thu th p b o trì và ghi nh báo cáoậ ả ớ
Vi c đ m b o ch t l ng ph n m m là m t ho t đ ng b n ch t cho b t kỳệ ả ả ấ ượ ầ ề ộ ạ ộ ả ấ ấ
nhóm phát tri n ph n m m nào s n xu t ra ph n m m cho ng i s d ng. ể ầ ề ả ấ ầ ề ườ ử ụ
6.1.2. Đ tin c y c a ph n m m ộ ậ ủ ầ ề
6.1.2.1. Các l i th ng g pỗ ườ ặ
Khi phân tích ch t l ng, ph n m m th ng g p m t s l i nh :ấ ượ ầ ề ườ ặ ộ ố ỗ ư
+ L i chi n l c: ý đ thi t k saiỗ ế ượ ồ ế ế
+ Phân tích các yêu c u không đ y đ ho c l ch l cầ ầ ủ ặ ệ ạ
+ Hi u sai v các ch c năngể ề ứ
+ Vi ph m nguyên lý đ i t ng ạ ố ượ
+ L i t i các th t c ch u t i, đây là nh ng l i n ng.ỗ ạ ủ ụ ị ả ữ ỗ ặ
+ L i lây lan: l i đ c truy n t ch ng trình này sang ch ng trình khácỗ ỗ ượ ề ừ ươ ươ
+ L i cú pháp: vi t sai quy đ nh c a ngôn ng .ỗ ế ị ủ ữ
+ Hi u ng ph : l i x y ra khi m t đ n v ch ng trình làm thay đ i giáệ ứ ụ ỗ ả ộ ơ ị ươ ổ
tr c a m t bi n ngoài ý ki n c a l p trình viên.ị ủ ộ ế ế ủ ậ
118

Ch ng 6: Ki m tra ch t l ng ph n m mươ ể ấ ượ ầ ề
Các l i c a ph n m m tuân theo nguyên lý m c đ l i:ỗ ủ ầ ề ứ ộ ỗ
a) M c ch u t i tăng theo chi u đi xu ng: l i phát ra m c d i đ cứ ị ả ề ố ỗ ở ứ ướ ượ
xem là n ng h n m c trên.ặ ơ ở ứ
b) L i n ng nh t n m m c cao nh t (ý đ thi t k ) và m c th pỗ ặ ấ ằ ở ứ ấ ồ ế ế ở ứ ấ
nh t (th t c ch u t i l n nh t)ấ ủ ụ ị ả ớ ấ
Do v y, khi phát tri n ph n m m, c n đ m b o nguyên lý an toàn là: M i l iậ ể ầ ề ầ ả ả ọ ỗ
dù nh l n đ u ph i đ c phát hi n m t b c nào đó c a ch ng trình, tr c khiỏ ớ ề ả ượ ệ ở ộ ướ ủ ươ ướ
l i đó hoành hành.ỗ
6.1.2.2. Đ tin c y c a ph n m m ộ ậ ủ ầ ề
Đ tin c y c a m t h ph n m m là đ đo v m c đ t t c a các d ch v màộ ậ ủ ộ ệ ầ ề ộ ề ứ ộ ố ủ ị ụ
h cung c p cho máy tính. C n chú ý là ng i dùng không xét r ng các d ch v làệ ấ ầ ườ ằ ị ụ
qu n tr ng nh nhau: ch ng h n m t h đi u khi n máy bay có th r t, r t hi m khiạ ọ ư ẳ ạ ộ ệ ề ể ể ấ ấ ế
th t b i, nh ng n u chúng có th t b i gây ra tai n n máy bay thì các ng i b n n vàấ ạ ư ế ấ ạ ạ ườ ị ạ
thân nhân ng i b n n không th xem h đó là đáng tin.ườ ị ạ ể ệ
Đ tin c y là m t đ c tr ng đ ng c a h th ng, nó là m t hàm c a s cácộ ậ ộ ặ ư ộ ủ ệ ố ộ ủ ố
th t b i ph n m m. M t th t b i ph n m m là m t s ki n thi hành mà khi đó ph nấ ạ ầ ề ộ ấ ạ ầ ề ộ ự ệ ầ
m m hành x không nh ng i ta mong đ i. Chú ý r ng m t th t b i ph n m mề ử ư ườ ợ ằ ộ ấ ạ ầ ề
khác n t h h ng ph n m m. H h ng ph n m m là m t đ c tr ng tĩnh, và nó sộ ư ỏ ầ ề ư ỏ ầ ề ộ ặ ư ẽ
gây ra th t b i ph n m m khi mà mã l i đ c thi hành v i m t t p h p đ c bi t cácấ ạ ầ ề ỗ ượ ớ ộ ậ ợ ặ ệ
thông tin vào. Các h h ng không ph i luôn luôn xu t đ u l di n, vì v y đ tin c yư ỏ ả ấ ầ ộ ệ ậ ọ ậ
ph thu c vào vi c s d ng h th ng nh th nào. Không th đ a ra m t phát bi uụ ộ ệ ử ụ ệ ố ư ế ể ư ộ ể
đ n gi n và khái quát v đ tin c y ph n m m.ơ ả ề ộ ậ ầ ề
Các h h ng ph n m m không ph i là các khuy t t t c a ch ng trình. M tư ỏ ầ ề ả ế ậ ủ ươ ộ
hành x b t ng có th x y ra khi mà ph n m m phù h p v i các yêu c u c a nó,ử ấ ờ ể ả ầ ề ợ ớ ầ ủ
nh ng mà chính các y u t đó l i không đ y đ . Các sai sót trong các t li u ph nư ế ố ạ ầ ủ ư ệ ầ
m m cũng có th d n đ n các hành vi b t ng m c d u r ng ph n m m không cóề ể ẫ ế ấ ờ ặ ầ ằ ầ ề
khi m khuy t.ế ế
Có công trình nghiên c u đã ch ra r ng có th rút b 60% các khi m khuy tứ ỉ ằ ể ỏ ế ế
mà ch có th c i t o đ c 3% đ tin c y. Cũng có ng i đã chú ý r ng nhi u khi mỉ ể ả ạ ượ ộ ậ ườ ằ ề ế
khuy t trong s n ph m ch là k t qu c a hàng trăm ho c hàng nghìn tháng s d ng.ế ả ẩ ỉ ế ả ủ ặ ử ụ
6.1.2.3. M t s đánh giá vì đ tin c yộ ố ộ ậ
1. Đ c t đ tin c y ph n m mặ ả ộ ậ ầ ề : g m các b cồ ướ
+ Phân tích h qu c a các th t b i.ệ ả ủ ấ ạ
+ Chia các th t b i thành các nhóm khác nhau.ấ ạ
+ Thi t l p các yêu c u v đ tin c y b ng cách s d ng các đ đo thích h pế ậ ầ ề ộ ậ ằ ử ụ ộ ợ
cho t ng lo i.ừ ạ
2. Đo đ tin c y:ộ ậ theo m t vài cách đo nh sauộ ư
119

Ch ng 6: Ki m tra ch t l ng ph n m mươ ể ấ ượ ầ ề
+ Xác su t th t b i tính theo đòi h i.ấ ấ ạ ỏ
+ T l xu t hi n th t b iỷ ệ ấ ệ ấ ạ
+ Th i gian trung bình gi a hai th t b i k ti p nhau.ờ ữ ấ ạ ế ế
+ Đ đo m c s n sàng ho t đ ng c a h .ộ ứ ẵ ạ ộ ủ ệ
3. Th nghi m tĩnhử ệ
M c tiêu ch y u c a th nghi m tĩnh là xác đ nh đ tin c y c a ph n m mụ ủ ế ủ ử ệ ị ộ ậ ủ ầ ề
ch không ph i là xác đ nh các h h ng ph n m m.ứ ả ị ư ỏ ầ ề
Quá trình th nghi m tĩnh liên quan đ n 4 b c sau:ử ệ ế ướ
i) Xác đ nh đ đo thao tác ph n m m. Đ đo thao tác là m t m u s d ngị ộ ầ ề ộ ộ ẫ ử ụ
ph n m m và xác đ nh m u đó liên quan đ n vi c phát hi n các l p thông tin vào c aầ ề ị ẫ ế ệ ệ ớ ủ
ch ng trình và c tính xác su t c a chúng.ươ ướ ấ ủ
ii) Ch n ra ho c sinh ra m t t p các d li u th t ng ng v i đ đo đó.ọ ặ ộ ậ ữ ệ ử ươ ứ ớ ộ
iii) Áp d ng các tr ng h p th ch ng trình, ghi l i đ dài th i gian thi hànhụ ườ ợ ử ươ ạ ộ ờ
gi a m i c p th t b i quan sát đ c. Thích h p h n là dùng th i gian thô, v i đ n vữ ỗ ặ ấ ạ ượ ợ ơ ờ ớ ơ ị
th i gian thích h p cho đ đo m c tin c y.ờ ợ ộ ứ ậ
iv) Tính toán đ đo m c tin c y sau m t s đáng k (v m t th ng kê) cácộ ứ ậ ộ ố ể ề ặ ố
th t b i đã quan sát đ c.ấ ạ ượ
4. An toàn ph n m m ầ ề
Có nh ng h th ng mà th t b i c a nó có th gây ra m t m i đe d a tínhữ ệ ố ấ ạ ủ ể ộ ố ọ
m ng con ng i. Thí d v h th ng an toàn sinh m nh nh v y là h th ng đi uạ ườ ụ ề ệ ố ệ ư ậ ệ ố ề
khi n máy bay.ể
Có hai l p ph n m m an toàn sinh m nh.ớ ầ ề ệ
i) Các ph n m m an toàn sinh m nh s c p: các ph n m m l ng nhúng trongầ ề ệ ơ ấ ầ ề ồ
m t h ph n c ng dùng đ đi u khi n quá trình khác mà s làm vi c sai sót c a nóộ ệ ầ ứ ể ề ể ự ệ ủ
có th tr c ti p gây ra th ng vong ho c phá h y môi tr ng s ng c a con ng i.ể ự ế ươ ặ ủ ườ ố ủ ườ
ii) Các ph n m m an toàn sinh m nh th c p: các ph n m m có th gián ti pầ ề ệ ứ ấ ầ ề ể ế
gây ra th ng vong. Thí d h th ng ph n m m tr giúp thi t k k thu t, h th ngươ ụ ệ ố ầ ề ợ ế ế ỹ ậ ệ ố
c s d li u y t liên quan đ n các ch t đ c b ng A.ơ ở ữ ệ ế ế ấ ộ ả
5. Th nghi m khi m khuy tử ệ ế ế
Th nghi m ch ng trình có hai m c đích: th nh t là ch ra r ng h th ng làử ệ ươ ụ ứ ấ ỉ ằ ệ ố
phù h p v i các đ c t c a nó, th hai là th c hành h th ng theo m t cách sao choợ ớ ặ ả ủ ứ ự ệ ố ộ
các khuyêt t t đ c ph i ra. Các th nghi m v i m c đích th nh t chính là các th mậ ượ ơ ử ệ ớ ụ ứ ấ ẩ
đ nh, nó là các th nghi m đ ch p nh n. Các th nghi m cho m c đích th hai l iị ử ệ ể ấ ậ ử ệ ụ ứ ạ
khác h n: th nghi m thành công nh t là th nghi m ph i ra đ c nhi u khuy t t tẳ ử ệ ấ ử ệ ơ ượ ề ế ậ
nh t.ấ
Các th nghi m có th đ c phát tri n song song v i vi c thi t k và th cử ệ ể ượ ể ớ ệ ế ế ự
hi n b i nh ng ng i không dính dáng t i vi c thi t k .ệ ở ữ ườ ớ ệ ế ế
6.1.2.4. L p trình vì đ tin c yậ ộ ậ
120

Ch ng 6: Ki m tra ch t l ng ph n m mươ ể ấ ượ ầ ề
L p trình là m t là m t công đo n ph thu c nhi u vào k x o cá nhân, sậ ộ ộ ạ ụ ộ ề ỹ ả ự
chú ý đ n các chi ti t và ki n th c v vi c làm nh th nào đ s d ng các công cế ế ế ứ ề ệ ư ế ể ử ụ ụ
s n có theo cách th c t t nh t. Nhu c u các h th ng đáng tin là đang tăng lên vì v yẵ ứ ố ấ ầ ệ ố ậ
c n có các k thu t chuyên bi t nh m đ t đ c m t h th ng tin c y đ c. Hi nầ ỹ ậ ệ ằ ạ ượ ộ ệ ố ậ ượ ệ
nay, có hai k thu t đ tăng đ tin c y ph n m m khi vi t các ch ng trình ngỹ ậ ể ộ ậ ầ ề ế ươ ứ
d ng là: tránh l i và tha th l i.ụ ỗ ứ ỗ
1. Tránh l iỗ
T t c các k s ph n m m h n đ u mu n s n ra các ph n m m không cóấ ả ỹ ư ầ ề ẳ ề ố ả ầ ề
l i. M t quá trình phát tri n d a vào vi c phát hi n l i và tr kh l i ch không ph iỗ ộ ể ự ệ ệ ỗ ừ ử ỗ ứ ả
là tránh l i là m t quá trình kém cõi và l i th i.ỗ ộ ỗ ờ
Ph n m m không có l i đây là ph n m m tuân theo đúng đ c t . Nói chung,ầ ề ỗ ở ầ ề ặ ả
nó có th có l i trong đ c t ho c có th không ph n ánh đúng các nhu c u c aể ỗ ặ ả ặ ể ả ầ ủ
ng i s d ng v y là ph n m m không có l i không nh t thi t là các ph n m mườ ử ụ ậ ầ ề ỗ ấ ế ầ ề
luôn luôn hành x nh ng i dùng d đoán.ử ư ườ ự
Vi c phát tri n ph n m m không có l i là m t vi c r t đ t đ , và khi mà m tệ ể ầ ề ỗ ộ ệ ấ ắ ỏ ộ
s l i đã đ c tháo kh i ch ng trình thì giá c cho vi c tìm và tháo l i còn l i có xuố ỗ ượ ỏ ươ ả ệ ỗ ạ
h ng tăng theo hàm s mũ. Do đó m t t ch c có th quy t đ nh ch p nh n m t vàiướ ố ộ ổ ứ ể ế ị ấ ậ ộ
l i còn l u l i. Tính v m t giá c thì thà r ng ch u ti n chi tr cho các th t b i c aỗ ư ạ ề ặ ả ằ ị ề ả ấ ạ ủ
h th ng do các l i đó gây ra còn h n là đi phát hi n tháo g các l i đó tr c khiệ ố ỗ ơ ệ ỡ ỗ ướ
phân ph i.ố
Tránh l i và phát tri n ph n m m vô l i d a trên:ỗ ể ầ ề ỗ ự
+ S n ph m c a m t đ c t h th ng chính xác.ả ẩ ủ ộ ặ ả ệ ố
+ Ch p nh n m t cách ti p c n thi t k ph n m m d a trên vi c che d uấ ậ ộ ế ậ ế ế ầ ề ự ệ ấ
thông tin và bao gói thông tin.
+ Tăng c ng vi c duy t l i trong quá trình phát tri n và th m đ nh h ph nườ ệ ệ ạ ể ẩ ị ệ ầ
m m.ề
+ Ch p nh n tri t lý ch t l ng t ch c: ch t l ng là bánh lái c a quá trìnhấ ậ ế ấ ượ ổ ứ ấ ượ ủ
phát tri n ph n m m.ể ầ ề
+ Vi c l p k ho ch c n th n cho vi c th nghi m h th ng đ tr ng ra cácệ ậ ế ạ ẩ ậ ệ ử ệ ệ ố ể ư
l i mà các l i này ch a đ c phát hi n trong quá trình duy t l i và đ đ nh l ng đỗ ỗ ư ượ ệ ệ ạ ể ị ượ ộ
tin c y c a h th ng.ậ ủ ệ ố
2. Th l iứ ỗ
Ngay v i m t h vô l i thì v n c n m t ti n ích th l i: đó là vì có th có cácớ ộ ệ ỗ ẫ ầ ộ ệ ứ ỗ ể
l i đ c t . M t ti n ích th l i là c n thi t cho m t h th ng đáng tin c y.ỗ ặ ả ộ ệ ứ ỗ ầ ế ộ ệ ố ậ
Có b n ho t đ ng c n ph i ti n hành n u h th ng ph i là th l i:ố ạ ộ ầ ả ế ế ệ ố ả ứ ỗ
+ Phát hi n l iệ ỗ
+ Đ nh ra m c đ thi t h iị ứ ộ ệ ạ
+ H i ph c sau khi g p l i. H th ng ph i h i ph c v tr ng thái mà nó bi tồ ụ ặ ỗ ệ ố ả ồ ụ ề ạ ế
là an toàn. Cũng có th là ch nh lý tr ng thái b h y ho i (h i ph c ti n), cũng có thể ỉ ạ ị ủ ạ ồ ụ ế ể
là lui v m t tr ng thái tr c mà an toàn (h i ph c lùi).ề ộ ạ ướ ồ ụ
121

