§¹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
Email: , mobile: 0912.505.291
Hà n i -2005
N i dung – Tài li u
̈
do ch t l
̈
tin c y
ng
̈ An toàn
¬ Roger S. Pressman. Soft ware Engineering, a Pract it ioner’s
Approach. 3th Edition, McGraw-Hill, 1992, B n dich c a Ngô
Trung vI t, Ph n 4, t p 4
¬ Ian Sommerville. Software Engineering, Sixth Edition, Addion
Wesley, 2001, Ph n 4,5 và 6. ch ng 16,17,19, 21,24,25
¬ E.M.Bennatan, Soft ware Proj ect Managem ent : a pract it ioner’s
approach, McGRAW-HILL Book Company, 2001
2005
B môn CNFM –
i h c Công ngh
2
I. o ch t l
ng ph n m m
Ch t l ng ph n m m th ng đ c phát bi u nh
nh ng đ c tr ng đ nh tính: m m d o, d b o trì,..
Không th đo tr c ti p đ c tr ng, mà ch có th đo gián
ti p ch t l ng ph n m m.
Ch đo đ c m t cái gì đó bi u th ch t l ng ph n m m
mà thôi – ó là các đ đo c a đ c tr ng t ng m t ch t
l ng ph n m m.
2005
B môn CNFM –
i h c Công ngh
3
a. Ch s ch t l
ng c u trúc: DSQI
̈ Ch s ch t l ng v c u trúc thi t k - DSQI
(Design Structured Quanlity Index - IEEE Standard
982.1-1988)
̈ Các đ i l
̇
̇
2005
ng đ
c dùng d tính DSQI :
S1 = t ng s các môđun trong ki n trúc ch ng trình
S2 = s môđun có ch c n ng ph thu c vào:
• ngu n d li u đ u vào
• th t c sinh ra d li u ngoài môđun.
B môn CNFM –
i h c Công ngh
4
a. Ch s ch t l
̈ Mô t hai đ i l
ng c u trúc: DSQI
ng:
̇ S1 = t ng s các môđun,
̇ S2 = các môđun ph thu c vào ngu n d li u vào
s2 =
2005
B môn CNFM –
i h c Công ngh
3
5
a. Ch s ch t l
̈
ng c u trúc: DSQI
Các đ i l ng đ tính ch s ch t l
thi t k (ti p):
ng c u trúc
̇ S3 = s các môđun ch c n ng ph thu c vào x lý
tr c đó.
̇ S4 = t ng s các kho n m c d li u (các đ i t ng d
li u, t t c các tính ch t xác đ nh các đ i t ng đó).
̇ S5 = s các kho n m c d li u đáng chú ý.
2005
B môn CNFM –
i h c Công ngh
6
a. Ch s ch t l
ng c u trúc: DSQI
̈ Các giá tr đ c dùng d tính ch s ch t l
trúc thi t k (ti p):
ng c u
̇
S6 = s các khúc d li u (các b n ghi khác nhau
ho c các đ i t ng đ n l ).
̇
S7 = s các môđun v i l i vào và l i ra duy nh t (x
lý ngo i l không đ c xem là l i ra b i).
2005
B môn CNFM –
i h c Công ngh
7
a. Ch s ch t l
ng c u trúc: DSQI
̈ Các giá tr đ tính ch s ch t l
k (ti p)
ng c u trúc thi t
̇ S3 = s các môđun ph thu c vào x lý tr c đó.
̇ S7 = s các môđun v i l i vào và l i ra duy nh t.
x
x
lý
lý
x
lý
S3 = 3, s7= 4
2005
B môn CNFM –
i h c Công ngh
8
a. Ch s ch t l
ng c u trúc: DSQI
̈ Nh ng giá tr trung gian c n tính:
̇ D1 (c u trúc ch ng trình) =1 khi thi t k ki n trúc dùng
ch 1 ph ng pháp nh t đ nh; và =0 khi khác.
̇ D2 (
đ c l p d li u c a môđun) = 1- (S2/S1).
̇ D3 (
đ c l p x lý c a môđun)
̇ D4 (kích c c s d li u) =
̇ D5 (
= 1- (S3/S1).
1- (S5/S4).
phân chia c s d li u) = 1- (S6/S4).
̇ D6 (đ c tr ng vào/ra c a môđun) = 1- (S7/S1).
2005
B môn CNFM –
i h c Công ngh
9
a. Ch s ch t l
ng c u trúc: DSQI
̈ Công th c tính ch s ch t l
DSQI =
i
ng c u trúc thi t k :
Swi.Di
V i i ch y t 1 đ n 6 và
i
Swi =1
̇ C n ghi l i DSQI c a các thi t k thành công tr
đây, tính trung bình c a chúng
c
̇ N u DSQI l n này th p h n nhi u so v i giá tr trung
bình đó thì c n ph i ti p t c công vi c thi t k và rà
soát.
2005
B môn CNFM –
i h c Công ngh
10
b. Ch s ch t l
ng ph n m m: SMI
̈
Ch s tr ng thành ph n m m: SMI (Sofware Mutirity
Index) (IEEE Standard 982.1-1988): cho bi t tính n đ nh
c a s n ph m ph n m m đ c phát tri n
̈
Nh ng tham s c n đ tính SMI:
2005
̇
T = s các môđun phát hành l n này
̇
̇
̇
Fc = s
Fa = s
Fd = s
trong l
các môđun có thay đ i trong l n này
các môđun đ c thêm vào trong l n này
các môđun c a l n phát hành tr c b b đi
n này
B môn CNFM –
i h c Công ngh
11
b. Ch s ch t l
̈ Ch s tr
nh sau:
ng s
n đ nh: SMI
ng thành ph n m m (SMI) đ
c tính
MT – Fa - Fc - Fd
SMI = -----------------------------MT
̈ Khi SMI g n b ng 1 thì s n ph m b t đ u n
đ nh
2005
B môn CNFM –
i h c Công ngh
12
c. Khoa h c ph n m m c a Halstead
̈ Lý thuy t c a Halstead dùng các ch s c b n
sau đ đo kh i l ng ch ng trình:
2005
̇
n1 là s các toán t (operator) khác nhau có m t
trong ch ng trình
̇
n2 là s các phép toán c b n (operand) khác
nhau có m t trong ch ng trình
̇
N1 là t ng s l n xu t hi n c a các toán t
̇
N2 là t ng s l n xu t hi n c a các phép toán c
b n
B môn CNFM –
i h c Công ngh
13
c. Khoa h c ph n m m c a Halstead
̈ Lý thuy t c a Halstead dùng các s đo c
b n sau:
̇
̇
dài ch
Dung l
Dung l
ng trình N = N1.log2 n1 + N2.log2 n2
ng ch
ng trình = N log2 (n1+n2)
ng t i thi u c a ch
ng trình
-------------------------------------------------------------- =
Dung l
2005
ng th c s c a ch
B môn CNFM –
ng trình
i h c Công ngh
2
---n1
n2
x
---N2
14
c. Khoa h c ph n m m c a Halstead
Halsstead cho r ng m i ngôn ng có m t m c ngôn ng
l. xác đ nh quy mô trung bình c a đ n v ch ng trình. S
này ch ph thu c vào chính ngôn ng l p trình, nhi u
ng i xem r ng nó ph thu c c vào ng i l p trình n a,
th c nghi m cho hay:
Ngôn ng
PL1
ALGOL 68
FORTRAN
Assembler
2005
B môn CNFM –
M c
1,53
2,12
1,14
0,88
i h c Công ngh
15
d. S đo đ ph c t p c a McCabe
̈
McCabe xác đ nh s đ
pc a
ch ng trình d a trên đ ph c t p chu trình trong
đ th ch ng trình c a m t môđun.
̇ S chu trình có chu trình l ng nhau (3)
̇ S chu trình trong m t chu trình (5)
̈
Ng i ta c ng dùng các mi n ph ng
c a đ th ph ng đ bi u di n
đ th ch ng trình
2005
B môn CNFM –
i h c Công ngh
16
e.
m b o ch t l
ng th ng kê
̈ B o đ m ch t l ng th ng kê ph n ánh m t xu
th ngày càng t ng trong công nghi p. Công vi c
g m:
̇ Thu th p và phân lo i các thông tin v các khi m
khuy t ph n m m .
̇ C g ng l n v t đ tìm nguyên nhân
̇ Dùng nguyên lý Pareto cô l p 20% khi m khuy t
̇ Sau khi tìm đ c nguyên nhân s ch nh s a các
nguyên nhân c a khi m khuy t
2005
B môn CNFM –
i h c Công ngh
17
e.
m b o ch t l
ng th ng kê
̈ Các nguyên nhân gây ra khi m khuy t có th là:
̇
̇
̇
̇
̇
̇
̇
2005
c t không đ y đ ho c sai sót (IES).
Hi u nh m khi giao ti p v i khách hàng (MCC).
L ch h ng d đ nh khi đ c t (IDS).
Vi ph m các chu n l p trình (VPS).
Sai trong bi u di n d li u (EDR).
Không phù h p c a giao di n môđun (IMI).
Sai trong logic thi t k (EDL).
B môn CNFM –
i h c Công ngh
18
e.
m b o ch t l
ng th ng kê (t)
̈ Các nguyên nhân gây ra khi m khuy t có th là:
Th nghi m sai ho c không đ y đ (IET)
Tài li u vi t không đ y đ ho c không chính xác (IID)
Sai khi d ch thi t k sang ngôn ng l p trình (PLT)
Giao di n ng i máy m h ho c không phù h p.
(HCI)
̇ Các linh tinh khác (MIS)
̇
̇
̇
̇
2005
B môn CNFM –
i h c Công ngh
19
e.
m b o ch t l
ng th ng kê (t)
̈ Ng i phát tri n c n ph i tính ch s khi m khuy t
cho m i b c chính trong phát tri n ph n m m.
̈ Các thông tin đ tính m c đ khi m khuy t:
̇
̇
̇
̇
2005
Di = t
Si = s
Mi = s
Ti = s
ng s các khi m khuy t
các khi m khuy t nghiêm tr ng
các khi m khuy t v a ph i
các khi m khuy t nh
B môn CNFM –
i h c Công ngh
20
e.
̈
m b o ch t l
ng th ng kê (t)
V i m i b c chính trong phát tri n ph n m m c n
tính ch s pha PIi:
Pli = w1.(Si/Di) + w2.(Mi/Di) + w3.(Ti/Di)
Trong đó w1, w2, w3 là tr ng s t ng ng v i các khi m
khuy t nghiêm tr ng, v a ph i và nh . Tr ng s này
c l ng m c thi t h i mà loa đó mang l i
2005
B môn CNFM –
i h c Công ngh
21
e.
̈
m b o ch t l
Ch s khi m khuy t DI đ
ng th ng kê (t)
c tính nh
sau:
DI = (PI1 + 2PI2 + 3PI3 + . . . + iPIi)/PS
Trong đó PS là kích c c a s n ph m (là LOC = s dòng
mã, ho c s tuyên b thi t k , ho c s trang tài li u)
tu theo t ng b c
Theo công th c: các khi m khuy t càng v sau càng
nhân v i h s l n
2005
B môn CNFM –
i h c Công ngh
22
e. Ti p c n hình th c cho SQA
̈
Ng i ta nh n th y c n ph i dùng m t cách ti p c n
hình th c h n trong vi c b o đ m ch t l ng ph n
m m, cách ti p c n này s b sung cho các ho t
đ ng mô t
trên
̈
Ti p c n hình th c hóa: đ c t hình th c cho phép
chúng minh tính đúng đ n, ki m tra l i, chuy n t
đ ng thành ch ng trình..làm t ng ch t l n
2005
B môn CNFM –
i h c Công ngh
23
f.
Ch ng minh tính đúng đ n (t)
̈ T cu i th p k 70 Dijkstra và nhi u ng i khác
đã nghiên c u v tính đúng đ n c a ch ng
trình (cho l p trình có c u trúc) là xét h ph ng
trình đ quy.
̈ IBM đã nghiên c u và s d ng thành công ngôn
ng Z, v i s ch ng minh tính đúng đ n nh
các nhà toán h c.
̈ Ngôn ng đ c t hình th c RAISE, v i m t công
c t đ ng ch ng minh tính đúng đ n.
2005
B môn CNFM –
i h c Công ngh
24
g. Quá trình phòng s ch – CLEAROOM
̈ Ki m ch ng ch ng trình m t cách hình th c (ch ng
minh tính đúng đ n) + b o đ m ch t l ng ph n m m
th ng kê = quá trình phòng s ch (CLEANROOM)
̈ Ph ng châm c a k thu t này là: phòng khi m khuy t
h n tr khi m khuy t
̈ C s t lý lu n r ng: Nên dành nhi u th i gian cho ki m
ch ng ch ng trình toán h c h n là cho g l i.
2005
B môn CNFM –
i h c Công ngh
25