1
2
Cơng trình đư c hồn thành t i
Đ I H C ĐÀ N NG
B GIÁO D C VÀ ĐÀO T O
Đ I H C ĐÀ N NG
Ngư i hư ng d n khoa h c: TS. Nguy n Thanh Bình
TR N TI N Đ O
Ph n bi n 1: TS. Nguy n T n Khôi
NGHIÊN C U NH HƯ NG C A L I
TRONG GIAI ĐO N B O TRÌ NH M H
KI M TH
TR
H I QUY
CHO
Ph n bi n 2: PGS.TS. Đồn Văn Ban
Lu n văn đư c b o v t i H i ñ ng ch m Lu n văn
Chuyên ngành : KHOA H C MÁY TÍNH
Mã s
: 60.48.01
t t nghi p th c sĩ k thu t h p t i Đ i h c Đà N ng vào ngày
03 tháng 03 năm 2012
TÓM T T LU N VĂN TH C SĨ K THU T
Có th tìm hi u lu n văn t i:
Đà N ng - Năm 2012
•
Trung tâm Thơng tin - H c li u, Đ i h c Đà N ng
•
Trung tâm H c li u, Đ i h c Đà N ng
3
M
4
Đ U
nhiên, vi c b qua ki m th h i quy là “khơng đư c phép” vì có
1. Lí do ch n đ tài
th d n đ n tình tr ng phát sinh ho c tái xu t hi n nh ng l i
Ki m th là m t trong nh ng ho t ñ ng quan tr ng trong
nghiêm tr ng, m c dù ta “tư ng r ng” nh ng l i đó ho c khơng có
ti n trình phát tri n ph n m m. Nó góp m t ph n r t l n trong vi c
ho c ñã ñư c ki m tra và s a ch a r i.
ñánh giá ch t lư ng c a m t ph n m m và là qui trình b t bu c
2. M c đích nghiên c u
trong các d án phát tri n ph n m m trong nư c cũng như trên
Trong giai ño n b o trì ph n m m, gi s có m t l i x y ra
t i m t thành ph n/mơ-đun nào đó. Lu n văn này ñư c th c hi n
th gi i.
Như ta ñã bi t trong l p trình ph n m m, các thành ph n/mơ-
v i m c đích xác ñ nh t m nh hư ng c a l i
thành ph n/mơ-
đun mã ngu n có th đư c s d ng chung b i các ch c năng c a
đun đó đ n các thành ph n/mơ-đun khác cũng như nh hư ng ñ n
ph n m m. Trong giai đo n b o trì, t c là ph n m m ñã ñi vào
các ch c năng khác c a h th ng.
ho t ñ ng, gi s r ng có m t l i x y ra t i m t ch c năng nào đó,
Đ tài t p trung vào v n ñ b o trì ph n m m, nghiên c u k
l i x y ra t i m t ch c năng thư ng do m t thành ph n/mơ-đun
thu t ki m th h i quy và công c h tr bi u di n m i quan h
nào đó gây ra. Như v y, khi thành ph n/mơ-đun đó l i s
nh
gi a các thành ph n/mơ-đun trong ph n m m s d ng ñ th ñ th
hư ng ñ n nh ng thành ph n/mô-ñun khác cũng như nh hư ng
bi u di n quan h . Hơn n a, đ tài nghiên c u cơng th c tính đ
đ n các ch c năng khác c a h th ng, ch c năng
ño ñ ñánh giá m c đ
đây chính là
nh hư ng c a l i d a vào các quan h
các ch c năng trong ñ c t yêu c u c a ngư i s d ng. M t khi
trong ñ th này. Trên cơ s đó, đ tài xác đ nh đư c nh ng nh
xác ñ nh ñư c m c ñ
hư ng c a l i.
nh hư ng gi a các thành ph n/mơ-đun,
vi c này s h tr cho ngư i ki m th xác ñ nh ñư c các ch c
Sau khi đã tìm hi u các v n ñ lý thuy t trên, tôi s ti n
năng nào, hay c th hơn các mơ-đun nào c n ph i ki m th l i
hành xây d ng công c h tr bi u di n m i quan h v s
(b ng cách s d ng k thu t ki m th h i quy) khi có m t mơ-đun
hư ng gi a các thành ph n/mơ-đun và cơng th c tính đ đo đ
b l i, t ñó tái s d ng các ca ki m th phù h p.
đánh giá m c đ
Do đó, nhu c u có đư c m t cơng c h tr bi u di n m i
quan h v s
nh hư ng gi a các thành ph n/mơ-đun và cơng
th c tính đ đo đ đánh giá m c đ
nh hư ng đó nh m h tr cho
ki m th h i quy, khi có m t mơ-đun b l i trong giai đo n b o trì
ph n m m th c s là c n thi t. Ki m th h i quy là m t trong
nh ng lo i ki m th t n nhi u th i gian và công s c nh t. Tuy
nh
nh hư ng nh m h tr cho ki m th h i quy
trong giai đo n b o trì.
3. Đ i tư ng và ph m vi nghiên c u
4. Ý nghĩa khoa h c và th c ti n c a ñ tài
5. C u trúc c a lu n văn
Lu n văn ñư c t ch c thành 3 chương như sau:
5
6
Chương 1: Nghiên c u t ng quan: Chương này gi i thi u
CHƯƠNG 1: NGHIÊN C U T NG QUAN
cơ s lý thuy t v nghiên c u và phân tích nh hư ng c a l i trên
ph n m m hư ng ñ i tư ng. Chương này cung c p các thông tin
Lu n văn nh m ñ n v n ñ nghiên c u và phân tích nh
v b o trì ph n m m, ki m th h i quy và phân tích nh hư ng c a
hư ng c a l i trên ph n m m hư ng ñ i tư ng. Chương 1 cung
l i cũng như nh ng khó khăn g p ph i khi phân tích nh hư ng
c p các thơng tin v b o trì ph n m m, ki m th h i quy và phân
c a l i trong các h th ng hư ng ñ i tư ng. Chương này ñ nh rõ
tích nh hư ng c a l i cũng như nh ng khó khăn g p ph i khi
ph m vi nghiên c u c a đ tài và mơ t ng n g n nh ng k t qu
phân tích nh hư ng c a l i c a các h th ng hư ng ñ i tư ng.
nghiên c u ñư c.
Chương này ñ nh rõ ph m vi nghiên c u c a đ tài và mơ t ng n
Chương 2:
nh hư ng c a l i trong giai ño n b o trì
ph n m m: Chương này mô t các khái ni m v
nh hư ng c a
l i, nh ng nguyên nhân căn b n phát sinh ra l i khi ph n m m
ñư c ñưa vào s d ng, các ki u nh hư ng c a l i, các thu t tốn
xác đ nh nh hư ng và cu i cùng là các ñ ño v
nh hư ng c a
1.1.
T ng quan v b o trì ph n m m
1.1.1. Khái ni m
Khái ni m b o trì ph n m m có th đư c hi u như sau: B o
trì ph n m m bao g m ñi u ch nh các l i mà chưa ñư c phát hi n
trong các giai ño n trư c c a chu kỳ s ng c a m t ph n m m,
l i gi a các thành ph n/mơ-đun.
Chương 3: Th
g n nh ng k t qu nghiên c u ñư c.
nghi m phân tích l i trong các
ng
nâng c p tính năng s d ng và an toàn v n hành c a ph n m m.
d ng: Chương này ñ tài ñi sâu vào gi i thi u m t phương pháp
B o trì ph n m m có th chi m đ n 65%-75% cơng s c trong chu
th nghi m xác ñ nh nh hư ng c a l i. Lu n văn này t p trung
kỳ s ng c a m t ph n m m.
vào hai hư ng chính: phương pháp xác đ nh nh ng nh hư ng c a
1.1.2. M c đích c a b o trì ph n m m
l i x y ra bên trong m t l p và gi a các l p v i nhau b ng các ví
d minh h a. M c 3.1. mô t nh ng nh hư ng c a l i x y ra bên
trong m t l p,
đó các thành ph n/mơ-đun bên trong l p khơng
có m i quan h ph thu c v i nhau. M c 3.2. mô t nh ng nh
hư ng c a l i x y ra bên trong m t l p, nhưng
M c đích c a giai đo n b o trì ph n m m là gi cho ph n
m m ñư c c p nh t khi mơi trư ng thay đ i và yêu c u ngư i s
d ng thay ñ i b ng cách:
-
đó các thành
M
r ng và đáp
ng u c u ngày càng tăng c a
khách hàng.
ph n bên trong l p có m i quan h ph thu c v i nhau. M c 3.3
trình bày nh ng nh hư ng c a l i x y ra gi a các l p v i nhau.
-
Làm cho ph n m m d s d ng hơn, hi u qu hơn.
Cu i cùng, m c 3.4 áp d ng phương pháp th nghi m phân tích l i
-
Có th
vào ng d ng trong th c ti n.
ng d ng công ngh m i hơn cho ph n m m.
7
1.1.3. Phân lo i b o trì ph n m m
8
nhi u th i gian và chi phí t n kém, ñ c bi t là các h th ng l n. Do
B o trì ph n m m có th đư c phân chia thành 3 giai đo n
đó, s d ng k thu t phân tích và ki m th h i quy, chúng ta ch
cơ b n như sau: giai ño n hi u ch nh, giai ño n hoàn thành và giai
c n ki m th l i nh ng thành ph n/mơ đun ch u nh hư ng c a l i,
ño n c p nh t.
t đó giúp gi m đư c th i gian và chi phí ki m th .
giai đo n hi u ch nh, nh ng l i sau ñây s có nh
hư ng l n đ n h th ng, gây ra l i khi x lý d li u và th c thi các
1.2.3. Phân lo i k thu t ki m th h i quy
ch c năng trên h th ng: L i thi t k , l i logic và l i l p trình.
1.2.3.1. K thu t ki m th toàn b
1.1.4. H n ch c a vi c b o trì ph n m m
1.2.3.2. K thu t ki m th h i quy l a ch n
M t s nh ng lý do mà ngành b o trì ph n m m chưa phát
1.2.4. Ý nghĩa k thu t ki m th h i quy
Trư c tiên c n kh ng ñ nh r ng k thu t ki m th h i quy
tri n:
-
B o trì ph n m m thư ng khơng ph i m i quan tâm
chính trong thi t k và th c thi chương trình.
khơng ph i là m t m c ki m tra như: Ki m th ñơn v , ki m th
ch c năng, ki m th h th ng và ki m th ti p nh n. Nó đơn thu n
ki m tra l i ph n m m sau khi có m t s thay ñ i x y ra (thay ñ i
-
mã ngu n) ñ b o ñ m phiên b n ph n m m m i (bao g m các
nghiên c u công ngh ph n m m.
thành ph n ñư c s a ñ i trong ph n m m) th c hi n t t các ch c
Ho t đ ng b o trì khơng đư c hi u ñúng và thư ng b
năng như phiên b n cũ và s thay đ i khơng gây ra l i m i trên
xem nh .
-
Ph n l n công tác b o trì đã b b qua trong lĩnh v c
nh ng ch c năng v n ñã làm vi c t t. K thu t ki m th h i quy
1.1.5. Phương pháp ti p c n hư ng đ i tư ng trong b o trì ph n
m m
1.2.
K thu t ki m th h i quy
1.2.1. Khái ni m
Phân tích và ki m th h i quy là m t ti n trình đư c áp
d ng sau khi có m t l i nào đó x y ra trong giai đo n b o trì ph n
m m khi ph n m m ñư c ñưa vào s d ng.
1.2.2. K thu t phân tích và ki m th h i quy
Trong quá trình b o trì ph n m m, gi s r ng có m t (ho c
m t vài l i) x y ra t i m t thành ph n/mơ-đun nào ñó. Th c t cho
th y r ng, vi c ki m th l i toàn b h th ng ph n m m s m t r t
có th th c hi n t i m i m c ki m tra
trên.
1.2.5. M i quan h gi a b o trì ph n m m và ki m th h i quy
B o trì ph n m m là m t ho t đ ng trong đó bao g m vi c
c i ti n, s a ch a l i, t i ưu hóa và lo i b nh ng đ c tính dư th a
c a ph n m m. Nh ng vi c s a ñ i này có th làm cho ph n m m
làm vi c khơng đúng và có th
nh hư ng đ n các thành ph n khác
c a h th ng. Do đó, đ ngăn ch n đi u này, k thu t ki m th h i
quy ñư c th c hi n. Ki m th h i quy ñư c s d ng ñ ki m th
l i nh ng ch c năng c a ph n m m ñư c ch nh s a. Ki m th h i
quy là m t quá trình r t t n kém,
đó b ki m th đư c th c thi,
9
10
-
đ m b o r ng khơng phát sinh l i m i trên nh ng thành ph n/mơđun đư c ki m th trư c đó.
1.3.
Giai đo n 1: Chuy n ñ i các ñ xu t thay ñ i, nh ng
gi đ nh v các l i có th x y ra
Phân tích nh hư ng c a l i trong giai đo n b o trì
các thành ph n/mơ-
đun đư c s a đ i vào m t h th ng ñ c t l i.
ph n m m
-
1.3.1. Ti n trình ho t đ ng khi phát sinh l i
Giai đo n 2: Trích xu t thơng tin t ngu n thơng tin
thu th p đư c và đưa vào kho lưu tr thơng tin.
1.3.2. Phân tích nh hư ng c a l i
-
1.3.2.1. Khái ni m phân tích nh hư ng c a l i
Giai đo n 3: Tính tốn nh ng nh hư ng c a l i có
th x y ra đ n các thành ph n/mơ-đun khác trong h
1.3.2.2. Q trình phân tích nh hư ng đi n hình
th ng khi có m t thành ph n/mơ đun nào đó phát sinh
Phương pháp đi n hình nh t v q trình phân tích nh
l i. Th c hi n giai đo n 1-3 m t l n n a đ hồn thành
hư ng c a l i ñư c minh h a trong hình sau đây:
nh ng đ xu t thay đ i khác.
-
Giai đo n 4: Xây d ng d tốn tài nguyên, d a trên
nh ng xem xét như kích thư c và ñ ph c t p ph n
m m.
-
Giai đo n 5: Phân tích chi phí và l i ích c a các u
c u thay đ i, trong cùng m t cách như ñ i v i m t
ng d ng m i.
-
Giai ño n 6: Ngư i qu n lý d án tư v n cho ngư i s
d ng nh ng tác ñ ng c a yêu c u thay ñ i trong v n
ñ công vi c ch không ph i là v v n ñ k thu t,
giúp h ra quy t ñ nh có ti p t c v i s thay đ i hay
khơng.
Hình 1.1. Q trình phân tích nh hư ng đi n hình
Như v y, vi c phân tích nh hư ng c a m t s thay ñ i/l i
có th đư c chia thành các giai đo n sau đây:
1.3.2.3. L i ích c a vi c phân tích nh hư ng c a l i
1.3.2.4. H n ch khi phân tích nh hư ng c a l i
1.4.
Hư ng nghiên c u c a ñ tài
Các câu h i ñ t ra ñư c tr l i trong ñ tài này:
11
-
12
-
Các l i x y ra có nh ng nh hư ng gì đ n h th ng
ph n m m?
-
nh hư ng c a l i t
Trình bày các thu t tốn đ l y thơng tin t đ th và
tính tốn nh ng nh hư ng có tính ch t b c c u c a
l i. Các lo i quan h khác nhau trong h th ng s
thành ph n/mơ-đun này đ n
nh
hư ng đ n k t qu tác ñ ng theo nh ng cách khác
thành ph n/mơ-đun khác như th nào?
nhau.
-
Đ l n c a nh ng nh hư ng đó? N u ta có nhi u gi i
-
pháp b o trì khi h th ng ph n m m có l i thì làm sao
v i ph n m m hư ng ñ i tư ng.
ñ xác ñ nh gi i pháp nào là có chi phí và hi u qu t t
-
nh t?
-
th c ti n c a cách ti p c n.
l n nh t c a l i đó đ n h th ng ph n m m là gì? Bi u
nh hư ng gi a các thành
ph n/mơ-đun và đ ño v s
nh hư ng ñó như th
nào?
Hư ng gi i quy t c a ñ tài:
Gi i thi u phương pháp th nghi m phân tích l i trong
các ng d ng đ ki m tra thu t tốn và đánh giá tính
Khi có l i x y ra thì kh năng nh hư ng nh nh t và
di n m i quan h v s
Xây d ng ñ ño ñ ño nh ng nh hư ng c a l i đ i
1.5.
K t chương
B o trì ph n m m ñư c xem như là giai ño n t n kém nh t
và khó khăn nh t trong vịng đ i phát tri n ph n m m. Hi u ñư c
t m quan tr ng y, chương 1 ñã cho chúng ta th y ñư c m t cách
nhìn t ng quan nh t v cơng tác b o trì ph n m m trong giai đo n
-
Phân tích h th ng ph n m m m t cách t đ ng, và
hi n nay và nó ñư c xem là m t ngh thu t hơn là m t k năng v
lưu l i các m i quan h gi a các thành ph n/mơ-đun
k thu t/chun mơn.
trong m t đ th m i quan h gi a các thành ph n. Các
thi u trong chương này là k thu t ki m th h i quy. K thu t
(thành ph n/mơ-đun) và các c nh ñư c ñ t tr ng s
ki m th h i quy đóng m t vai trị quan tr ng trong ho t ñ ng b o
cho m i quan h c a các ñ i tư ng này. Các lo i quan
trì ph n m m nh m đ t ñư c s tin c y trong su t q trình ph n
h khác nhau s có các đ ño v nh ng nh hư ng c a
m m ñư c s a ñ i. Nó là m t b ph n c n thi t trong quá trình
l i là khác nhau.
-
M t v n ñ n a có t m quan tr ng khơng kém đư c gi i
nút s ñ i di n cho các lo i ñ i tư ng khác nhau
ki m th nh m ñ m b o ch t lư ng ph n m m. Hơn n a, ki m th
Đ xu t m t mơ hình tác đ ng đ mơ t các thu c tính
h i quy cịn là m t ho t ñ ng quan tr ng trong vi c phát tri n ph n
c a quá trình phân tích nh hư ng c a l i.
m m hư ng đ i tư ng. Vì v y, chúng ta th y r ng, cơng tác b o trì
13
14
ph n m m và ki m th h i quy ln có m t m i quan h ch t ch v i
CHƯƠNG 2:
NH HƯ NG C A L I TRONG
GIAI ĐO N B O TRÌ PH N M M
nhau.
Cu i cùng, chương này cung c p cho chúng ta m t s thơng
tin r t b ích v v n đ phân tích nh hư ng c a l i trong giai ño n
Chương 2 t p trung vào các v n ñ v
nh hư ng c a l i
b o trì ph n m m. Đ cơng vi c b o trì đư c hi u qu thì vi c
như: các ki u nh hư ng c a l i, m i quan h ph thu c gi a các
qu n lý ñ u vào trong quá trình b o trì ph n m m là r t quan tr ng.
thành ph n/mơ-đun, nh ng ngun nhân căn b n phát sinh ra l i
Qu n lý l i và phân tích nh hư ng c a l i là hai bư c ñ u tiên
khi ph n m m ñư c ñưa vào s d ng và nh ng l i đó nh hư ng
trong q trình b o trì. Quá trình b o trì ch có th t i ưu và đ t
đ n nh ng thành ph n nào trong ph n m m. M t khác, các thu t
hi u qu cao n u ta có đư c nh ng thơng tin chính xác và rõ ràng
tốn xác đ nh nh hư ng và ñ ño v m c ñ
v l i cũng như nh hư ng c a l i đó đ n các thành ph n/mơ-đun
gi a các thành ph n/mơ-đun cũng ñư c gi i thi u m t cách khá
khác trong ph n m m khi m t thành ph n nào đó b l i. Như v y ta
chi ti t trong chương này.
th y r ng, b o trì ph n m m, phân tích nh hư ng c a l i và ki m
2.1.
th h i quy ln có m t m i quan h ph thu c l n nhau.
2.1.1. Khái ni m l p
Các v n ñ v
nh hư ng c a l i
nh hư ng c a l i
2.1.2. Tiêu chí v l i
2.1.3. T p h p các ki u nh hư ng c a l i
2.1.3.1. nh hư ng tr c ti p c a l i
2.1.3.2. nh hư ng gián ti p c a l i
2.1.4. M i quan h ph thu c gi a các thành ph n/mơ-đun
M t m i quan h ph thu c trong m t h th ng ph n m m
là m t m i quan h tr c ti p gi a nh ng th c th trong h th ng
X Y, ch ng h n m t l p trình viên ch nh s a X thì ph i quan tâm
đ n các m t tác đ ng có th có c a nó trong Y. Chúng ta có th
phân lo i thành 5 quan h ph thu c sau:
2.1.4.1. Quan h ph thu c gi a l p v i l p
2.1.4.2. Quan h ph thu c gi a l p v i phương th c
2.1.4.3. Quan h ph thu c gi a l p v i bi n
2.1.4.4. Quan h ph thu c gi a phương th c v i bi n
15
16
2.1.4.5. Quan h ph thu c gi a phương th c v i phương th c
ñ i tư ng
2.1.5. Các nguyên nhân chính gây ra l i và m i quan h gi a
Công th c 1: S lư ng các l p ch u nh hư ng
S lư ng các l p ch u nh hư ng ñư c tính b ng s lư ng
chúng
2.1.5.1. Thay đ i
c p ñ h th ng
2.1.5.2. Thay ñ i
c pñ l p
2.2.
c a t t c các l p ch u nh hư ng c a l i trong h th ng.
Công th c 2: Ph n trăm các l p ch u nh hư ng
Thu t tốn xác đ nh nh hư ng c a l i
T l ph n trăm các l p ch u nh hư ng ñư c tính b ng s
2.2.1. Mơ t thu t tốn
lư ng các l p ch u nh hư ng chia cho t ng s các l p có trong h
2.2.2. Đ u vào và ñ u ra c a thu t tốn
th ng.
2.2.3. Thu t tốn TotalEffect()
Cơng th c 3: S lư ng các thành viên ch u nh hư ng
- Hàm kh i t o (SetInit)
2.2.4. Thu t toán v m i quan h
S lư ng các thành viên ch u nh hư ng bao g m t ng s
nh hư ng x y ra bên trong
m tl p
các thành viên ch u nh hư ng c a t t c các l p ch u nh hư ng
trong h th ng.
2.2.4.1. Khái ni m v đóng gói
Cơng th c 4: S lư ng trung bình c a các thành viên
2.2.4.2. Thu t toán FindEffectInClass()
2.2.5. Thu t toán v m i quan h
S lư ng trung bình các thành viên ch u nh hư ng ñư c
nh hư ng gi a các l p v i
nhau
2.3.
ch u nh hư ng
tính b ng t ng s các thành viên ch u ch u nh hư ng chia cho
Đ ño ñánh giá m c ñ
nh hư ng c a l i trong ph n
m m
t ng s các thành viên c a t t c các l p ch u nh hư ng trong h
th ng.
M c tiêu c a ñ ño ph n m m là vi c xác ñ nh và đo lư ng
các thơng s c n thi t tác ñ ng ñ n phát tri n ph n m m.
Công th c 5: T tr ng s lư ng các thành viên ch u nh
hư ng
Trong th c t , chúng ta th y r ng, có nhi u ñ tài nghiên
T tr ng v s lư ng các thành viên ch u nh hư ng bao
c u v ñ ño ph n m m, và m t s các ñ tài nghiên c u khác trên
g m t ng s các thành viên ch u nh hư ng c a t t c các l p ch u
ñ ño ph n m m hư ng ñ i tư ng. Tuy nhiên, chúng ta v n chưa
th y có tài li u nào nói v đ đo phân tích nh hư ng c a l i trong
nh hư ng trong h th ng, đư c tính theo kh năng nh hư ng.
C1 và C2 là các h ng s ñư c gán theo các kh năng nh
ph n m m hư ng ñ i tư ng.
hư ng khác nhau ñ n các phương th c và các thành viên d li u
2.3.1. Thơng tin v các đ đo
(h ng, bi n).
2.3.2. Đ ño m c ñ
nh hư ng c a l i trong ph n m m hư ng
17
18
Cơng th c 6: T tr ng trung bình s lư ng các thành
CHƯƠNG 3: TH
viên ch u nh hư ng
NGHI M PHÂN TÍCH L I TRONG
CÁC
NG D NG
T tr ng trung bình v s lư ng các thành viên ch u nh
hư ng đư c tính b ng t tr ng v s lư ng các thành viên ch u nh
Chương 3 ñi sâu vào gi i thi u phương pháp th nghi m
xác ñ nh nh hư ng c a l i. Thông qua m t s các thí d minh h a
hư ng chia cho t ng s các thành viên trong h th ng.
v k thu t phân tích nh hư ng c a l i, ñ tài nghiên c u có th
2.4.
giúp cho các nhà phát tri n theo dõi ñư c các nh hư ng c a l i
K t chương
Chương 2 ñ c p ñ n v n ñ
nh hư ng c a l i trong giai
x y ra trong ph n m m c a h . Lu n văn này t p trung vào hai
đo n b o trì ph n m m. Chương này gi i thi u cho chúng ta m t
hư ng chính: phương pháp xác đ nh nh ng nh hư ng c a l i x y
cách khá chi ti t v t p h p các ki u nh hư ng c a l i. Chúng ta
ra bên trong m t l p và gi a các l p v i nhau b ng các ví d minh
có bi t đư c nh ng ngun nhân chính phát sinh ra l i khi ph n
h a. M c 3.1 mô t nh ng nh hư ng c a l i x y ra bên trong m t
m m ñư c ñưa vào s d ng và nh ng l i đó nh hư ng đ n nh ng
l p,
thành ph n nào trong ph n m m. M t khác, chương này cũng ñã ñi
nhau. M c 3.2 mô t nh ng nh hư ng c a l i x y ra bên trong
sâu vào vi c phân tích m i quan h ph thu c gi a các thành
m t l p, nhưng
ph n/mơ-đun ñ xác ñ nh nh ng nh hư ng c a l i có th x y ra
v i nhau. M c 3.3 trình bày nh ng nh hư ng c a l i x y ra gi a
khi m t thành ph n/mơ-đun nào đó b l i.
các l p v i nhau. Cu i cùng, m c 3.4 áp d ng phương pháp th
D a vào các thông tin có đư c t vi c phân tích nh hư ng
đó các thành viên l p khơng có m i quan h ph thu c v i
đó các thành viên l p có m i quan h ph thu c
nghi m phân tích l i vào ng d ng trong th c t – ph n m m qu n
c a l i, chương này gi i thi u m t s thu t tốn giúp xác đ nh nh
lý thư vi n
hư ng c a l i. Các thu t tốn s đi vào ki m tra l i trên t ng thành
nghi m nh m xác ñ nh đ đo m c đ
ph n/mơ-đun b l i và ki m tra t t c các thành ph n/mơ-đun khác
trong ph n m m này.
có m i quan h ph thu c v i m t thành ph n/mơ-đun b l i. Cu i
3.1.
cùng, chương này đ c p ñ n m t s ñ ño v m c ñ
nh hư ng
c a l i x y ra trong ph n m m hư ng ñ i tư ng. Đ ño ñư c s
trư ng ñ i h c. M c đích c a phương pháp th
nh hư ng c a l i x y ra
nh hư ng c a l i x y ra bên trong m t l p (khơng đ
quy)
Đ tài s s ng m t ví d đơn gi n đ gi i thi u phương
d ng giúp chúng ta có th d đốn như c đi m, sai sót và d đốn
pháp xác ñ nh nh hư ng c a l i truy n đi bên trong m t l p. Ví
k t qu ñ t ñư c c a ph n m m.
d này ch có m t l p và khơng có m i quan h ràng bu c đ quy
gi a các thành viên bên trong l p (phương th c, bi n).
19
3.2.
nh hư ng c a l i x y ra bên trong m t l p (quan h đ
20
nào đó b l i. Các thành ph n/mơ-đun
đây đư c hi u là các phương
quy)
th c, h ng ho c bi n n m bên trong l p.
Ph n này minh h a cách thu t toán qu n lý m i quan h ñ
3.5.
quy gi a các thành viên bên trong m t l p. L p A (ñư c gi i thi u
trư c đó) đư c s a ñ i ñ ch a m i quan h ñ quy gi a các thành
viên bên trong l p. Hình 3.7 mô t m i quan h ph thu c ñ quy
như sau: A_meth1() tham chi u A_meth2(), A_meth2() tham chi u
A_meth3(), A_meth3() s d ng _A_field1, và _A_field1 ñư c xác
ñ nh b i A_meth1().
3.3.
nh hư ng c a l i x y ra gi a các l p v i nhau
Cu i cùng, ñ tài gi i thi u phương pháp xác ñ nh nh
K t chương
D a vào thu t tốn đ c p
chương 2, chương 3 gi i thi u
m t s phương pháp xác ñ nh nh hư ng c a l i x y ra bên trong
m t l p và gi a các l p v i nhau b ng vi c ñưa ra m t s thí d
minh h a. Đ ng th i, d a vào các phương pháp trên, tác gi ñã
th c hi n vi c th nghi m phân tích l i vào trong ng d ng th c
ti n - ph n m m qu n lý thư vi n
trư ng ñ i h c. M c ñích c a
phương pháp th nghi m nh m xác ñ nh ñ ño m c ñ
nh hư ng
hư ng c a l i x y ra gi a các l p trong ph n m m.
c a l i x y ra trong ph n m m này. K t qu ñ t ñư c t vi c th
3.4.
Th ngi m phân tích nh hư ng c a l i trong các ng
nghi m này có th giúp cho các nhà phát tri n theo dõi ñư c
d ng
nh ng nh hư ng c a l i x y ra trong ph n m m c a h , giúp h
Đ minh h a tính th c ti n c a ng d ng, ñ tài áp d ng
ti t ki m th i gian, d dàng trong vi c s a l i.
phương pháp th c nghi m vào ph n m m qu n lý thư vi n trư ng đ i
h c. M c đích c a phương pháp th nghi m nh m xác ñ nh ñ ño m c
ñ
nh hư ng c a l i x y ra trong ph n m m này. Ph n m m qu n lý
thư vi n qu n lý thông tin v t t c các lo i sách có trong thư vi n c a
trư ng, thông tin mư n sách, tr sách và thông tin v ñ c gi mư n
sách. Ph n m m g m 3 ph n chính: Thơng tin v các l p, giao di n
chương trình và m c th ng kê báo cáo. Bên trong m i ph n là cơ ch
truy n thông tin gi a các phương th c cũng như gi a các l p v i nhau.
B qua các thông tin thi t k chi ti t c a chương trình, đ tài t p trung
vào m i quan h gi a các l p giao di n v i nhau c a nh ng ph n này
và nh ng nh hư ng c a l i khi m t thành ph n/mơ-đun trong m t l p
21
22
c a ph n m m. Trong th c t , chúng ta th y r ng, có nhi u ñ tài
K T LU N
nghiên c u v ñ ño ph n m m và m t s các ñ tài nghiên c u
K t qu ñ t ñư c và ng d ng c a lu n văn
khác trên ñ ño ph n m m hư ng ñ i tư ng. Tuy nhiên, chúng ta
Lu n văn đã trình bày đư c năm v n đ chính: Th nh t,
cung c p m t cách nhìn t ng quan nh t v t m quan tr ng c a v n
v n chưa th y có tài li u nào nói v đ đo phân tích nh hư ng c a
s l i trong ph n m m hư ng đ i tư ng.
đ b o trì ph n m m và ki m th h i quy trong giai đo n hi n nay
Tính ng d ng c a lu n văn có th đư c áp d ng trong vi c
nh m ñ m b o và nâng cao ch t lư ng ph n m m. Th hai, phân
tích m i quan h ph thu c và nh ng nh hư ng c a l i có th có
x y ra gi a các thành ph n trong h th ng ph n m m hư ng đ i
tư ng. Nh ng ngun nhân chính gây ra l i và nh ng l i đó s
nh
hư ng ñ n nh ng thành ph n nào trong ph n m m cũng ñư c ñ
c p m t cách khá chi ti t trong ñ tài. Th ba, gi i thi u m t s
các thu t tốn xác đ nh nh ng nh hư ng c a l i theo các tiêu chí
đ c t c a ngư i dùng. Th tư, trình bày m t t p h p các ñ ño v
m cñ
nh hư ng c a l i trong h th ng ph n m m hư ng ñ i
tư ng. Cu i cùng, d a vào thu t toán, th nghi m phân tích l i vào
trong ng d ng th c t đ ch ng minh tính kh thi c a cách ti p
c n này trong ngành công nghi p ph n m m. K t qu ñ t ñư c t
vi c th nghi m này có th giúp cho các nhà phát tri n theo dõi
ñư c nh ng nh hư ng c a l i x y ra trong ph n m m c a h ,
phân tích nh hư ng c a l i. B ng cách s d ng k thu t phân tích
nh hư ng c a l i ñư c phát tri n trong đ tài này, chúng ta có th
làm gi m ñáng k các r i ro và chi phí b i vì các v n đ đư c phát
hi n càng v sau s t n nhi u chi phí hơn. K thu t phân tích nh
hư ng có th cung c p cho chúng ta cách nhìn v nh ng nh
hư ng ti m n c a l i trư c khi có s thay đ i trên ph n m m
(ph n m m ñư c s a ñ i), và nh n bi t ñư c nh ng nh hư ng c a
l i s tác ñ ng ñ n các thành ph n nào trong ph n m m khi có l i
x y ra. Vì th , k thu t phân tích này giúp cho các nhà phát tri n
và ngư i b o trì lên k ho ch xây d ng các ch c năng c a ph n
m m m t cách chính xác hơn nh m gi m thi u r i ro phát sinh l i,
phù h p v i nh ng yêu c u thay ñ i c a ph n m m, ñ ng th i theo
dõi nh ng nh hư ng c a l i có th x y ra t yêu c u thay ñ i này.
M t khác, k thu t này còn giúp cho nhà phát tri n và
giúp h ti t ki m th i gian, d dàng trong vi c s a l i.
Lu n văn ñã ñưa ra ñư c m t t p h p các ñ ño v m c ñ
nh hư ng c a l i trong h th ng, ñi u này giúp cho ngư i b o trì
ph n m m đo đư c s lư ng các thành ph n b l i, t đó giúp h
có th d đốn như c đi m, sai sót và d đốn k t qu đ t đư c
ngư i bao trì đánh giá đư c s phù h p c a m t b n ñ xu t thay
ñ i
ph n m m (ph n m m c n ñư c s a ñ i). N u s thay ñ i
ph n m m ñư c ñ xu t có kh năng tác đ ng l n, là b ph n tách
r i c a m t chương trình thì nó có th c n ph i đư c tái ki m tra
23
24
ñ xác ñ nh xem ñ xu t thay ñ i đó li u có an tồn hơn khơng.
-
Ph m vi c a ñ tài ch d ng l i
b n thu t tốn phân
Ngư i qu n lý có th phân tích các đ xu t thay đ i trên và ch n ra
tích nh hư ng và chưa ñ c p ñ n nh ng nh hư ng
m t đ xu t thay đ i có chi phí và hi u qu t t nh t. Nhà phát tri n
c a l i x y ra theo quan h th a k .
có th s d ng k thu t này ñ ch ra các l h ng quan tr ng v l i
trong mã ngu n ph n m m. N u m t thành ph n/mô ñun cung c p
-
Các ñ ño v m c ñ
nh hư ng c a l i bên trong
phương th c, bên trong l p và bên trong h th ng là
ch c năng quan tr ng mà ph thu c vào nhi u ph n khác nhau c a
nh ng ñ ño ph c t p và tinh vi, cho phép chúng ta
chương trình thì ch c năng c a nó d b thay đ i trong nh ng ph n
đánh giá chính xác hơn v
này. Ki m th viên có th s d ng k thu t này đ tìm ra nh ng
nh hư ng c a l i. Tuy
nhiên trong lu n văn này, tác gi ch d ng l i trong
vùng/thành ph n ch u nh hư ng c a l i, ñi u này giúp h ch c n
vi c ñánh giá m c ñ
th c hi n trên nh ng vùng ch u nh hư ng đó nhưng v n đ m b o
nh hư ng c a l i
các thành
viên l p và các l p ch u nh hư ng, chưa ñi sâu vào
ch t lư ng c a ph n m m.
ñánh giá m c ñ
nh hư ng bên trong m i thành viên
K t qu nghiên c u này có th làm tài li u tham kh o cho
l p và m i l p cũng như bên trong h th ng. M t
các ñơn v phát tri n ph n m m ñang c n ti n hành nghiên c u và
khác, giá tr chính xác cho các h ng s c a các ñ ño
xây d ng ng d ng ki m th t ñ ng d a vào k th ki m th h i
v n chưa ñư c ñ c p trong lu n văn.
quy nh m phát hi n ra l i, dùng cơng c đó h tr vi c s a l i khi
Hư ng phát tri n nguyên c u
ph n m m ñưa vào s d ng.
Tác gi xin ñ c p m t s hư ng nghiên c u trong tương lai:
Trên cơ s xác ñ nh ñư c m c ñ
nh hư ng gi a các thành
ph n/mơ-đun trong ph n m m, vi c này s h tr cho ngư i ki m
-
nh hư ng c a l i x y ra theo
quan h th a k .
th xác ñ nh ñư c các ch c năng nào, hay c th hơn các mơ-đun
nào c n ph i ki m th l i (s d ng k thu t ki m th h i quy) khi
Nghiên c u thêm v
-
Nghiên c u đ tìm ra giá tr chính xác cho các h ng s
có m t mơ-đun b l i, t đó tái s d ng các ca ki m th phù h p.
c a các ñ ño ñư c trình bày trong chương 2, đi u này
H n ch c a lu n văn
giúp chúng ta có đư c m t k qu chính xác khi xác
M c dù ñã h t s c c g ng nhưng ñ tài v n cịn m t s h n ch
đ nh m c ñ
như sau:
th c ti n.
nh hư ng c a l i trong các ng d ng
25
-
Nguyên c u ñ xác ñ nh các ñ ño v m c ñ
nh
hư ng c a l i x y ra bên trong m i thành viên l p,
bên trong m i l p và bên trong h th ng.