ĐẢM BO CHT LƯỢNG PHN MM
Bài ging cho sinh viên ngành Công ngh thông tin
Phan Th Hoài Phương
Hà Ni - 2010
PTIT
2
Gii thiu
Trước nhng thách thc trong quá trình phát trin phn mm, vic đảm bo cht
lượng phn mm (Software Quality Assurance-SQA) hết sc quan trng, đòi hi phi
nghiên cu mt cách nghiêm túc để thc thi hiu qu. Tài liu này cung cp nhng kiến
thc cơ bn v cht lượng phn mm, đảm bo cht lượng trong mt d án phát trin
phn mm. Qui trình xây dng h thng đảm bo cht lượng phn mm cũng được trình
bày trong ni dung bài ging. Qua đó, sinh viên hiu được cách thc xây dng mt h
thng đảm bo cht lượng phn mm vai trò ca nhng thành viên trong h thng.
Mt s chun đảm bo cht lượng cũng được gii thiu trong nhng chương cui. Thông
qua ni dung bài ging sinh viên cũng s nm được k năng soát kim th phn
mm.
Tài liu được son phn ln da trên cun sách Software Quality Assurance From
Theory to Implementation ca Daniel Galin mt s tài liu v k ngh phn mm,
nhm h tr cho sinh viên gp khó khăn khi đọc các tài liu nguyên gc tiếng Anh.
Ni dung bài ging được xây dng trong by chương:
Chương 1. Khái nim v cht lượng phn mm và các yếu t cht lượng phn mm
Nhng khái nim m đầu ca tài liu được gii thiu trong chương 1. Bt đầu vi
khái nim phn mm, cht lượng phn mm đảm bo cht lượng phn mm, phn tiếp
theo phân tích các yếu t cht lượng phn mm.
Chương 2. Các thành phn cht lượng phn mm tin d án
Chương này trình bày nhng ni dung liên quan đến nhng thành phn đảm bo cht
lượng phn mm tin d án bao gm vic soát hp đồng, kế hoch phát trin d án
phn mm và kế hoch cht lượng phn mm.
Chương 3. Các thành phn SQA trong vòng đời d án
Chương 3 đề cp đến các thành phn đảm bo cht lượng phn mm trong vòng đời
d án phn mm. Nhng ni dung được trình bày trong chương này bao gm : phân tích
mt s hình phát trin phn mm ph biến, các phương pháp soát, bo trì phn
mm các công c CASE. Riêng kim th phn mm bước quan trng s được trình
bày riêng chương 4.
Chương 4. Kim th phn mm
Chương 4 đề cp đến kim th phn mm. Nhng ni dung được trình bày trong
chương này bao gm : khái nim cơ bn, các mc kim th, các k thut kim th,
quá trình kim th.
PTIT
3
Chương 5. Phân loi các phn mm phc v kim
Chương 5 đề cp đến các loi thành phn được dùng trong kim th phn mm.
Nhng ni dung được trình bày trong chương này bao gm : các phn mm phc v kim
th và thư vin JUnit được s dng rng rãi trong kim th đơn v cho ngôn ng lp trình
Java.
Chương 6. Các thành phn cơ bn ca cht lượng phn mm
Các thành phn cơ bn ca cht lượng phn mm bao gm các th tc (procedure), ch
dn (instruction), khuôn mu (templates), checklists (danh mc kim tra). Đó chính là ni
dung được trình bày trong phn đầu ca chương 6. Phn tiếp theo s trình bày các hot
động đảm bo cht lượng phn mm khác như : đào to cp chng ch, ngăn nga
sa li, qun lý cu hình và kim soát tài liu.
Chương 7. Các thành phn qun lý cht lượng phn mm
Ngoài yếu t k thut, trong các d án phát trin phn mm hin đại, yếu t qun lý
đóng vai trò hết sc quan trng. Chương 7 trình bày các vn đề liên quan đến qun lý
cht lượng phn mm như : điu khin tiến độ d án, độ đo cht lượng phn mm, chi phí
cht lượng phn mm.
Chương 8. Các chun, chng ch và hot động đánh giá
Chương này đề cp ti các chun qun lý cht lượng như ISO 9001 ISO 9000-3,
CMM và CMMI và các chun tiến trình d án như IEEE/EIA Std 12207, IEEE Std 1012,
IEEE Std 1028.
Chương 9. T chc để đảm bo cht lượng
Trong nhng t chc ln, qun lý ngun nhân lc là mt yếu t quyết định s thành
công. Chương 9 đề cp đến các tác nhân tham gia vào h thng đảm bo cht lượng phn
mm, vai trò, trách nhim ca mi tác nhân được phân tích c th trong tng đề mc ca
chương.
Ph lc
Trình bày v các li thường gp khi viết chương trình.
PTIT
4
MC LC
Gii thiu ............................................................................................................................ 2!
Chương 1.!Khái nim v cht lượng phn mm và các yếu t cht lượng phn mm .... 8!
1.1.!Đặc đim ca phn mm và môi trường phát trin phn mm ............................. 8!
1.2.!Khái nim phn mm .......................................................................................... 11!
1.3.!Li phn mm và phân loi nguyên nhân gây ra li phn mm ......................... 12!
1.3.1.!Li phn mm .............................................................................................. 12!
1.3.2.!Nguyên nhân gây ra li phn mm .............................................................. 12!
1.4.!Định nghĩa cht lượng phn mm và đảm bo cht lượng phn mm ................ 15!
1.5.!Nhng mc tiêu đảm bo cht lượng phn mm ................................................ 15!
1.6.!Phân loi yêu cu phn mm ng vi các yếu t cht lượng phn mm ............ 16!
Chương 2.!Các thành phn cht lượng phn mm tin d án ........................................ 20!
2.1.!Rà soát hp đồng ................................................................................................ 20!
2.1.1.!Tiến trình rà soát hp đồng và các bước thc hin ...................................... 20!
2.1.2.!Các mc tiêu rà soát hp đồng ..................................................................... 21!
2.1.3.!Thc thi rà soát hp đồng ............................................................................ 24!
2.1.4.!Nhng khó khăn ca thc hin xem li hp đồng cho các đề xut chính .... 25!
2.1.5.!Khuyến cáo cho vic thc hin duyt li nhng hp đồng chính ................ 26!
2.1.6.!Các đối tượng rà soát hp đồng ................................................................... 27!
2.1.7.!Rà soát hp đồng cho các d án ni b ....................................................... 27!
2.2.!Các kế hoch phát trin và kế hoch cht lượng ................................................. 30!
2.2.1.!Nhng mc tiêu ca kế hoch phát trin và kế hoch cht lượng ............... 31!
2.2.2.!Các thành phn ca kế hoch phát trin ....................................................... 31!
2.2.3.!Các thành phn ca kế hoch cht lượng ..................................................... 35!
2.2.4.!Các kế hoch phát trin và kế hoch cht lượng cho các d án nh và các d
án ni b .................................................................................................................... 38!
Chương 3.!Các thành phn SQA trong vòng đời d án ................................................. 41!
3.1.!Tích hp các hot động cht lượng trong vòng đời d án .................................. 41!
3.1.1.!Phương pháp phát trin phn mm truyn thng và các phương pháp khác 41!
3.1.2.!Các yếu t nh hưởng hot động đảm bo cht lượng phn mm ............... 51!
3.1.3.!Xác minh, thm định và đánh giá cht lượng .............................................. 52!
3.2.!Rà soát ................................................................................................................. 53!
3.2.1.!Mc tiêu rà soát ............................................................................................ 53!
3.2.2.!Nhng rà soát thiết kế hình thc .................................................................. 54!
3.2.3.!Các rà soát ngang hàng (peer review) .......................................................... 56!
3.2.4.!Các ý kiến ca chuyên gia ........................................................................... 57!
3.3.!Đảm bo cht lượng ca các thành phn bo trì phn mm ............................... 59!
3.3.1.!Gii thiu ..................................................................................................... 59!
3.3.2.!Cơ s cho cht lượng bo trì cao ................................................................. 61!
3.3.3.!Các thành phn cht lượng phn mm tin bo trì ...................................... 64!
3.3.4.!Các công c đảm bo cht lượng bo trì phn mm .................................... 68!
3.4.!Các CASE tool và nh hưởng ca nó lên cht lượng phn mm ........................ 77!
3.4.1.!Khái nim CASE tool .................................................................................. 77!
3.4.2.!Đóng góp ca CASE tool cho cht lượng sn phm phn mm .................. 79!
3.4.3.!Đóng góp ca CASE tool cho cht lượng bo trì phn mm ....................... 81!
3.4.4.!Đóng góp ca CASE tool cho qun lý d án ............................................... 82!
PTIT
5
3.5.!Đảm bo cht lượng phn mm ca các yếu t bên ngoài cùng tham gia .......... 82!
3.5.1.!Nhng thành phn bên ngoài đóng góp vào d án phn mm ..................... 82!
3.5.2.!Ri ro và li ích ca gii thiu người tham d ngoài. ................................. 83!
3.5.3.!Nhng mc tiêu đảm bo cht lượng v s đóng góp người tham gia bên
ngoài 84!
3.5.4.!Các công c đảm bo cht lượng nhng đóng góp ca các thành viên đóng
góp bên ngoài. ........................................................................................................... 85!
Chương 4.!Kim th phn mm ..................................................................................... 86!
4.1.!Mt s khái nim cơ bn ..................................................................................... 86!
4.1.1.!Ví d v li phn mm ................................................................................. 86!
4.1.2.!Đặc t và li phn mm: .............................................................................. 87!
4.1.3.!Kim th và tiến trình kim th ................................................................... 88!
4.1.4.!Các mc kim th ........................................................................................ 90!
4.1.5.!Mt s thut ng .......................................................................................... 91!
4.2.!Các cp độ kim th .......................................................................................... 94!
4.2.1.!Kim th đơn v - Unit Testing .................................................................... 95!
4.2.2.!Kim th tích hp - Integration Testing ...................................................... 95!
4.2.3.!Kim th h thng - System Testing ......................................................... 100!
4.2.4.!Kim th chp nhn - Acceptance Testing ................................................ 101!
4.3.!Các k thut kim th ....................................................................................... 102!
4.3.1.!Kim th hp đen - Black-box Testing ...................................................... 102!
4.3.2.!Kim th hp trng - White-box Testing (WBT) ...................................... 108!
4.3.3.!Kim th gia tăng - Incremental Testing ................................................... 116!
4.3.4.!Thread Testing ........................................................................................... 116!
4.3.5.!Bng tóm tt Testing Levels/ Techniques ................................................. 116!
4.4.!Quá trình kim th ............................................................................................ 116!
4.4.1.!Xác định tiêu chun cht lượng phn mm phù hp ................................. 116!
4.4.2.!Lp kế hoch cho test ................................................................................. 119!
4.4.3.!Thiết kế kim th (test design) .................................................................. 121!
4.4.4.!Tiến trình test ............................................................................................. 124!
4.4.5.!Thiết kế trường hp kim th (Test Case Design) ..................................... 125!
Chương 5.!Phân loi các phn mm phc v kim th ............................................... 127!
5.1.!Phn mm phc v kim th ............................................................................ 127!
5.1.1.!Phn mm h tr viết tài liu ..................................................................... 127!
5.1.2.!Phn mm qun lý li ................................................................................ 127!
5.1.3.!Công c kim th t động.......................................................................... 129!
5.2.!Unit test và thư vin JUnit ................................................................................ 133!
5.2.1.!Tng quan v Unit Testing ........................................................................ 133!
5.2.2.!Tng quan thư vin Junit ........................................................................... 135!
Chương 6.!Các thành phn cơ bn ca cht lượng phn mm ..................................... 139!
6.1.!Th tc, ch dn và các thiết b h tr cht lượng ............................................. 139!
6.1.1.!Các th tc và ch dn ................................................................................ 139!
6.1.2.!Chun b, thc thi và cp nht các th tc và ch dn ................................ 142!
6.1.3.!Khuôn mu (templates) .............................................................................. 143!
6.1.4.!Danh mc kim tra (Checklists) ................................................................ 146!
6.2.!Đào to đội ngũ và cp chng ch ..................................................................... 148!
PTIT