Cung cấp chi phí cho độ tin cậy phần mềm
Bài toán mô hình chung (tt)
• (GP1) cực đại hoá tổng độ tin cậy
• (GP2) đảm bảo rằng tổng sự tiêu dùng là không
quá ngân sách
• (GP3) đảm bảo rằng một module được pháp triển
trong công ty hoặc được mua
• (GP4) đảm bảo ràng buộc rằng xi và ri sẽ bằng 0
nếu một trong số các version là được mua.
28 trang |
Chia sẻ: nguyenlam99 | Lượt xem: 956 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Cung cấp chi phí cho độ tin cậy phần mềm, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
CUNG CẤP CHI PHÍ CHO
ĐỘ TIN CẬY PHẦN MỀM
(Cost Allocation For Software Reliability)
Nội dung chính cần trình bày
• Giới thiệu
• Độ tin cậy của một module được phát triển in-house
• Độ tin cậy của một module mua
• Độ tin cậy của một module tích hợp
• Mô hình quyết định trước
• Ví dụ
• Mô hình chung
Giới thiệu
Độ tin cậy phần mềm:
• Độ tin cậy phần mềm được định nghĩa đó là xác
suất của sự thành công.
• Được thực hiện: đo hoạt động phần mềm trong
một đơn vị thời gian, trong một môi trường nhất
định.
• Là một thuộc tính của chất lượng phần mềm.
Giới thiệu (tt)
Sự cần thiết cho độ tin cậy phần
mềm
• Dựa vào máy tính để gia tăng hiệu suất công
việc.
• Máy tính đã được con người gắn kết vào hầu hết
mọi thiết bị máy móc.
• Khoa học kỹ thuật đòi hỏi tốc độ về tính toán cũng
như độ chính xác.
• Một vấn đề đang làm đau đầu các nhà quản lý: sự
phân bổ tài nguyên, nguồn lực, thời gian trong các dự
án phần mềm.
Giải quyết bài toán
• Xác định các mudule phần mềm
• Lựa chọn module dùng lại
• Dự đoán tài nguyên (chi phí) và độ tin cậy
• Tính toán độ tin cậy của phần mềm
Giới thiệu (tt)
Cấu trúc của một hệ thống phần mềm là có
cấp bậc (cây cấu trúc):
Giới thiệu (tt)
Database indexing (6)
Parser (1)
Keyword (5)
Index generator (3)
Version 11
Version 12
Analyzer (4)
Stemmer (2)
Version 21
Version 22
t i i ( )
l
r r ( )
Độ tin cậy của một module đơn
được phát triển trong công ty
Độ tin cậy của một module i là :
trong đó:
: là chi phí căn bản cần thiết cho việc phát triển module i
trong công ty
: độ tin cậy ban đầu của module i
: độ tin cậy lớn nhất có thể đạt được của module i
: một thông số phản ảnh độ nhạy của độ tin cậy mỗi khi
có sự thay đổi chi phí
)1(
0
))((
)0(
)0()()0()(
)0(
ii
ii
xx
i
m
i
m
i
i xx
xxerrrr
iii
0
i
)0(
ir
)(m
ir
ir
)0(
ix
i
Độ tin cậy của một module đơn
được phát triển trong công ty (tt)
Giá trị lớn sẽ tác động đến việc thay đổi chi
phí.
Khi thì
và khi thì .
Hàm độ tin cậy của công thức (1)
100
Độ tin cậy của một module mua
• Cho là một biến nhị phân. Có giá trị là 1 nếu
version của module i là được mua,
ngược lại có giá trị là 0.
• Để đảm bảo chỉ có duy nhất một version mua
cần đạt đến kết quả:
• Độ tin cậy của bất kỳ một mudule mua i:
và có chi phí là:
1
1
in
j ij
y
ij
n
j
iji ryr
i
1
ij
n
j ij
cyi 1
(2)
Độ tin cậy của một module tích hợp
• Cho là một module tích hợp với các con
• Độ tin cậy lớn nhất có thể đạt được của module i:
trong đó là độ tin cậy các con Ti.
• Độ tin cậy ban đầu:
trong đó: qTi (0 < qTi < 1): một hệ số phản ánh những lỗi
chung trên độ tin cậy ban đầu.
• Độ tin cậy của gốc Ti là:
iT ),...,,(: 21 si iiiT
s
k jk
m
T rr i 1
)(
jkr
)(
1
)0( m
Ti
s
k jkiT ii
rqTrqTr
)0(
)0(()0()()(
0
)((
)0(
ii
ii
iTiTiT
ii
i
TT
TT
xx
T
m
T
m
T
T xx
xxerrrR
(3)
Mô hình quyết định trước
(The Predetermined Model)
• Xác định trước một module sẽ được mua
hoặc được phát triển trong công ty.
• Giả sử một hệ thống phần mềm bao gồm:
1, 2, . . m module đơn
và m+1, . . . , n module tích hợp.
• Ta cũng có thể chia các module này theo
cách:
1, 2, . . , m1 module mua
m1 + 1, . . . , n module được phát triển
trong công ty
Mô hình quyết định trước (tt)
(The Predetermined Model)
Công thức độ tin của cậy phần mềm (được ký
hiệu ) phụ thuộc trên cấu trúc cây thứ bậc của
phần mềm:
– Phần mềm bao gồm chỉ một module thì bằng độ
tin cậy của chỉ module đó.
– Module là một module được phát triển trong công
ty thì độ tin cậy được tín theo công thức (1).
– Module là một mudule mua độ tin cậy được tính
theo công thức (2).
– Module là một mudule tích hợp độ tin cậy được
tính theo công thức (3).
Mô hình quyết định trước (tt)
(The Predetermined Model)
– Khi một số con của một module tích hợp lại
là các module tích hợp:
+ Công thức độ tin cậy cây thứ bậc phải được
tính cho con trước.
+ Sau đó mới tính cho module tích hợp cha.
Mô hình quyết định trước (tt)
(The Predetermined Model)
• Bài toán (P) có thể viết:
S.T.
Max
Bxyc
n
mj
jij
m
i
n
j
ij
i
11 1 1
1
1
1
in
j
ijy với i=1,2, . . . ,m1
xi 0 với i=m1 +1, . . . ,n và (P4)
yij 0,1 với i=1, . . . ,m1 và j=1, . . . ,ni
(P1)
(P2)
(P3)
Mô hình quyết định trước (tt)
(The Predetermined Model)
• Mục tiêu (P1) là cực đại hoá độ tin cậy của hệ
thống .
• (P2) đảm bảo tổng chi phí sử dụng không vượt quá
ngân sách cho phép.
• P(3) chắc chắn module mua i có một version được
mua, với i=1,2,. . .,m.
• Cuối cùng, (P4) bảo đảm toàn bộ xi không âm và
toàn bộ yij là nhị phân.
Ví dụ
Database indexing (6)
Parser (1)
Keyword (5)
Index generator (3)
Version 11
Version 12
Analyzer (4)
Stemmer (2)
Version 21
Version 22
Module tích hợp
Module mua
Module phát triển
• Parse(1) và Stemmer (2): 2 module mua và công
thức độ tin cậy là (2): r1 và r2.
• Index-generator(3) và Analyzer(4): 2 module
chương trình được phát triển trong công ty và công
thức độ tin cậy (1) là r3 và r4.
• Keyword(5), Database-indexing(6) : module tích
hợp được áp dụng công thức (3): r5, r6.
Ví dụ (tt)
• Giả sử ta chọn các thông số ngẫu nhiên:
Ví dụ (tt)
3,3.0,8.0
4,25.0,7.0
5.3,4.0,5.0,9.0
2,3.0,53.0,83.0
8,95.0
7,87.0
6,9.0
5,7.0
)0(
666
)0(
555
)0(
44
)0(
4
)(
0
)0(
33
)0(
3
)(
3
2222
2121
1212
1111
xq
xq
xrr
xrr
cr
cr
cr
cr
m
m
Độ tin cậy của các module mua 1 và 2 và
các module chương trình 3 và 4 được tính
trước:
Ví dụ (tt)
Otherwise
xe
r
xer
yryrr
yryrr
x
x
5.3
0
)5.09.0(9.0
Otherwise
2
0
)53.083.0(83.0
4
)5.3(4.0
4
3
)2(3.0
3
222221212
121211111
4
3
• Độ tin cậy của Keyword(5) là:
trong đó:
Ví dụ (tt)
Otherwise
xerrr
r
xmm 4
0
)( 5)3(25.0)0(5
)(
5
)(
5
5
6
42
)(
5 rrr
m
)(
5
0
5 8.0
mrr
Ví dụ (tt)
• là độ tin cậy Database-indexing (6)
trong đó:
Otherwise
xerrr
r
xmm 4
0
)( 6)3(3.0)0(6
)(
6
)(
6
6
6
351
)(
6 rrrr
m
)(
6
0
6 8.0
mrr
Ví dụ (tt):
max
1,0,,,
0,0,0,0
1
1
8765
..
22211211
6543
2221
1211
654322211211
yyyy
xxxx
yy
yy
Bxxxxyyyy
TS
Bài toán ràng buộc:
B y11 y12 y21 y22 x3 x4 x5 x6
Độ tin cậy
tối ưu
25 1 0 1 0 2 4 4 3 0.11826
26 0 1 1 0 2 4 4 3 0.15205
30 0 1 0 1 3.3816 5.6183 4 3 0.2518
35 0 1 0 1 5.1168 6.9833 4.7556 4.1441 0.3491
40 0 1 0 1 6.3842 7.9627 6.2414 5.4115 0.4269
45 0 1 0 1 7.6511 8.9325 7.7371 6.6785 0.4870
50 0 1 0 1 8.9178 9.8958 9.2410 9.9452 0.5316
55 0 1 0 1 10.1842 10.8547 10.7494 9.2116 0.5639
60 0 1 0 1 11.4505 11.8105 12.2610 10.4778 0.5868
70 0 1 0 1 13.9826 13.7167 15.2906 13.0099 0.6140
80 0 1 0 1 16.5145 15.6189 18.3246 15.5418 0.6270
100 0 1 0 1 21.5779 19.4188 24.3978 20.6053 0.6361
150 0 1 0 1 34.2205 28.9238 39.5821 33.2734 0.63863
200 0 1 0 1 46.7863 37.8185 56.3336 45.0614 0.63868
Bảng kết quả độ tin cậy tối ưu với chi
phí trong khoảng 25 đến 200
Mô hình chung
(The General Model)
• Các module chương trình là 1, . . . ,m.
• Mỗi module i có thể là mua ở bên ngoài hoặc được phát
triển trong công ty.
• Số version của các module mua là ni với I = 1, . . .,n.
• Cho zi là một biến nhị phân, zi = 1 nếu module i là được
phát triển trong công ty, ngược lại zi = 0.
• Do một module có thể được phát triển trong công ty
hoặc được mua:
1
1
in
j iji
yz
Mô hình chung (tt)
(The General Model)
• Cho ri là độ tin cậy đạt được với chi chí xi khi
module i được phát triển trong công ty.
• Với bất kỳ module chương trình i nào, nó có
độ tin cậy Ri :
ij
n
j
ijiii ryzrR
i
1
Bài toán mô hình chung
Max
0
1
)0(
1
1
1
1 1
i
iii
n
j
iji
n
j
jij
m
i
n
j
ij
x
xUzx
yz
Bxyc
i
i
Với i=1,2, . . . , m
Với i=1,2, . . . , m
Với i=1,2, . . . , n và
S.T.
(GP1)
(GP2)
(GP3)
(GP4)
(GP5)
yij = 0,1 với i=1, . . . ,m và j=1, . . ., ni
Trong đó:
U là số lớn nhất (ví dụ U=1,000,000)
là số nhỏ nhất (ví dụ =0.000001)
Bài toán mô hình chung (tt)
• (GP1) cực đại hoá tổng độ tin cậy
• (GP2) đảm bảo rằng tổng sự tiêu dùng là không
quá ngân sách
• (GP3) đảm bảo rằng một module được pháp triển
trong công ty hoặc được mua
• (GP4) đảm bảo ràng buộc rằng xi và ri sẽ bằng 0
nếu một trong số các version là được mua.
Các file đính kèm theo tài liệu này:
- resource_allocation_se_8581.pdf