Kết quả đo sử dụng mụ hỡnh QMOOD

Một phần của tài liệu Đo sản phầm phần mềm xây dựng trong môi trường hướng đối tượng (Trang 82)

c. Xõy dựng cỏc chức năng của chương trỡnh

4.2Kết quả đo sử dụng mụ hỡnh QMOOD

4.2.1. Quỏ trỡnh đo sử dụng mụ hỡnh QMOOD

Mụ hỡnh QMOOD là mụ hỡnh đỏnh giỏ cỏc thuộc tớnh ngoài qua cỏc độ đo (xem phần 2.2). Mụ hỡnh QMOOD được dựa trờn cơ sở mụ hỡnh ISO 9126 và FCM,

nhưng mụ hỡnh QMOOD tập trung vào cỏc độ đo hướng đối tượng và đỏnh giỏ cỏc thuộc tớnh ngoài thể hiện tớnh hướng đối tượng. Mụ hỡnh QMOOD chia chất lượng phần mềm ra thành 6 thuộc tớnh: chức năng (functionality), hiệu năng (effectiveness), tớnh dễ hiểu (understandability), khả năng mở rộng (extendibility), khả năng sử dụng lại (reusability), tớnh mềm dẻo (flexibility). Cỏc thuộc tớnh chất lượng này được xỏc định thụng qua cỏc độ đo theo mụ hỡnh phõn cấp (hỡnh 2.3 ). Cú 11 độ đo được sử dụng trong mụ hỡnh QMOOD (khụng dựng độ đo tớnh độc lập chức năng – MFM).

Chỳng tụi lựa chọn 3 thuộc tớnh quan trọng trong mụ hỡnh QMOOD để đỏnh giỏ cỏc phần mềm hướng đối tượng là chức năng, tớnh dễ hiểu và khả năng sử dụng lại. Chỳng tụi tiến hành đo nhúm cỏc dự ỏn phần mềm tại Fsoft bằng phương phỏp như ở phần 4.1. Kết quả chỳng tụi thu được cỏc độ đo của mụ hỡnh QMOOD như sau: Bộ nhất Lớn nhất Trung bỡnh Độ lệch DSC 3 249 109.12 96.69 ANA 0 0.22 0.06 0.07 DAM 0 1 0.34 0.37 DCC 2 16.91 6.56 4.59 CAM 18.66 68.41 37.14 18.72 MFA 0 0.19 0.05 0.06 CIS 9.95 22.57 14.39 4.47 NOM 11.33 22.66 17.35 3.35

Bảng 4.6: Kết quả cỏc độ đo của mụ hỡnh QMOOD

Trước khi cỏc thuộc tớnh chất lượng được tớnh thụng qua cỏc độ đo, cỏc độ đo cần được chuẩn húa về giỏ trị nằm giữa 0 và 1. Ngưỡng cho quỏ trỡnh chuẩn húa được lựa chọn dựa trờn kết quả thống kờ về cỏc độ đo trong bảng 4.6. Ngưỡng cho cỏc dạng hàm chuẩn húa được chọn như sau:

Dạng hàm chuẩn húa

1 Nhỏ nhất Trung bỡnh – Nhỏ nhất

f(a) = 0.99 ; f(a+b) = 0.5

2 Lớn nhất Lớn nhất –

Trung bỡnh

f(a)=1 ; f(a+b) = f(a-b) = 0.5 Bảng 4.7: Lựa chọn ngưỡng cho cỏc hàm chuẩn húa cỏc độ đo

Trờn cơ sở bảng 4.6 và bảng 4.7, chỳng ta tớnh được ngưỡng của cỏc hàm chuẩn húa như sau:

Dạng hàm chuẩn húa Chọn ngưỡng A Chọn ngưỡng B

DSC 1 3 106.12 ANA 2 0.22 0.16 DAM 2 1 0.66 DCC 1 2 4.56 CAM 2 68.41 37.21 MFA 2 0.19 0.14 CIS 1 9.95 4.44 NOM 1 11.33 4.02

Bảng 4.8: Ngưỡng cho cỏc hàm chuẩn húa cỏc độ đo QMOOD.

Mụ hỡnh QMOOD sử dụng 11 độ đo, nhưng trong quỏ trỡnh đo cỏc phần mềm ở Fsoft, chỳng tụi chỉ thu thập được 8 độ đo nờu trờn, để cú thể vẫn sử dung được mụ hỡnh, đối với cỏc độ đo chưa thu thập được là NOH, MOA, NOP chỳng ta cho giỏ trị mặc định của chỳng bằng 0.5. Chỳng ta vẫn cú thể nghiờn cứu sự biến thiờn cỏc thuộc tớnh chất lượng dựa trờn 8 độ đo cũn lại. Sau khi chuẩn húa cỏc độ đo và tớnh cỏc thuộc tớnh sử dụng lại, khả năng hiểu, chức năng qua cỏc độ đo, ta cú kết quả như sau:

Tớnh sử dụng lại Khả năng hiểu Chức năng

Faid-xml 0.45 -0.44 0.61

IntraFax 0.33 -1 0.56

Aop 0.81 -1 0.77

Cds 0.44 -0.45 0.60

Cds-mk 0.60 -0.10 0.57

Bdwizard3 0.43 -0.22 0.51

Bảng 4.9: Kết quả đo một số thuộc tớnh của mụ hỡnh QMOOD

F a id -x m l In tr a F a x C ss -m 1 P G -M a in ta in 2 0 0 2 -1 A o p C d s C d s- m k B d w iz a rd 3 Reusability UnderstandabilityFunctionality -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 Reusability Understandability Functionality

Hỡnh 4.9: Kết quả đo một số thuộc tớnh của mụ hỡnh QMOOD

Nhận xột: Khả năng hiểu cú sự biến thiờn lớn. Cú thể giải thớch sự biến thiờn này

như sau: nhõn tố tớnh dễ hiểu (understandability) được tớnh thụng qua 7 độ đo (metric) khỏc trong khi cỏc nhõn tố khỏc chỉ được tớnh thụng qua 4 độ đo (bảng 2.4). Cỏc dự ỏn Aop và IntraFax là cỏc dự ỏn nhỏ (chỉ cú 4 lớp và 9 lớp) nờn hoàn toàn phự hợp với việc cú tớnh dễ hiểu cao. Cỏc dự ỏn PG-Maintain-2002-1 và Cds- mk, Bdwizard3 là cỏc dự ỏn bảo trỡ (sửa chữa nõng cấp cỏc sản phẩm đó cú) nờn cú tớnh dễ hiểu thấp. Cỏc nhõn tố khỏc: chức năng, khả năng sử dụng lại khụng xuất hiện sự biến thiờn đột ngột.

4.2.2. Quan hệ ảnh hưởng giữa cỏc kết quả đo và cỏc thuộc tớnh khỏc

Tương tự như phần 4.1.8, chỳng tụi cũng xột sự ảnh hưởng của cỏc thuộc tớnh đo được lờn cỏc chỉ số chất lượng dựa trờn hệ số tương quan. (adsbygoogle = window.adsbygoogle || []).push({});

Tớnh sử dụng lại Khả năng hiểu Chức năng

Cụng sức chữa lỗi -0.33 0.56 -0.60

Lỗi kiểm tra 0.41 -0.25 0.41

Bảng 4.10: Hệ số tương quan giữa cỏc thuộc tớnh của mụ hỡnh QMOOD với cỏc thuộc tớnh chất lượng khỏc

Cỏc hệ số tương quan giữa ở bảng đạt mức trung bỡnh. Căn cứ vào bảng cỏc hệ số tương quan trờn, chỳng ta cú thể rỳt ra nhận xột là khú cú thể giảm đồng thời chi phớ cho việc sửa lỗi (correction cost), tỷ lệ lỗi trong quỏ trỡnh test (defect rate) và tỷ lệ lỗi sau khi bàn giao sản phẩm (leakage) bởi vỡ cỏc hệ số tương quan trong cựng một cột khụng cựng dấu. Chẳng hạn nếu ta cú thể tăng tớnh sử dụng lại (reusability) thỡ cú khả năng correction cost và leakage giảm nhưng defect rate lại tăng. Tương tự nếu thay đổi tớnh dễ hiểu (understandability) và chức năng (functionality) cũng vậy. Mặc dự mong muốn của người quản lý là giảm đồng thời cả chi phớ sửa lỗi, tỷ lệ lỗi khi test, tỷ lệ lỗi sau khi bàn giao nhưng nhận xột của ta ở đõy lại trỏi với điều đú. Muốn đạt được mong muốn trờn cần phải nghiờn cứu thờm về cỏc phộp đo đó được tiến hành ở trờn để tỡm ra cỏc mối liờn hệ ảnh hưởng nhằm cải tiến cỏc bước trong quỏ trỡnh phỏt triển phần mềm hướng đối tượng. Đõy là một nhận xột khỏ thỳ vị cần được nghiờn cứu thờm.

Bảng 4.11 là cỏc hệ số tương quan giữa cỏc độ đo và cỏc chỉ số chất lượng phần mềm. Trờn cơ sở đú, ta xõy dựng bảng 4.12 thể hiện mối liờn hệ ảnh hưởng giữa cỏc độ đo và chỉ số chất lượng: dấu ‘+’ là ảnh hưởng thuận (A tăng thỡ B tăng), dấu ‘-‘ là ảnh hưởng nghịch (ngược lại, A tăng thỡ B giảm), dấu ? nghĩa là chưa xỏc định (-0.1 < hệ số tương quan < 0.1; cú thể thay đổi nếu nghiờn cứu một tập mẫu khỏc lớn hơn).

Cụng sức chữa lỗi Lỗi kiểm tra Lỗi sản phẩm

LCOM 0.38 0.16 0.14 DIT -0.13 -0.70 -0.16 CBO 0.56 -0.09 0.05 NOC 0.12 0.18 0.01 RFC 0.71 0.05 0.17 WMC 0.71 0.05 0.42 DSC 0.55 -0.22 -0.08 ANA 0.39 0.25 -0.28 DAM -0.05 0.33 -0.33 DCC 0.56 -0.09 0.05 CAM -0.38 -0.16 -0.14 MFA -0.18 -0.23 0.27 CIS -0.24 -0.09 0.47 NOM 0.71 0.05 0.42

Cụng sức chữa lỗi Lỗi kiểm tra Lỗi sản phẩm LCOM + + + DIT - - - CBO + ? ? NOC + + ? RFC + ? + WMC + ? + DSC + - ? ANA + + - DAM ? + - DCC + ? ? CAM - - - MFA - - + CIS - ? + NOM + ? +

Bảng 4.12: Mối quan hệ ảnh hưởng giữa cỏc độ đo và cỏc chỉ số chất lượng

Nhận xột đỏnh giỏ về cỏc kết quả đo thực nghiệm:

Trong chương này chỳng ta đó thực hiện cỏc phộp đo hướng tượng trờn tập mẫu một số phần mềm. Kết quả đo cỏc phần mềm sử dụng cỏc độ đo CK thể hiện qua bảng và biểu đồ nhằm cú thể so sỏnh trực quan giữa hai nhúm phần mềm được đo. Với mỗi độ đo, chỳng ta đều cú so sỏnh nhận xột sự chờnh lệnh giữa hai nhúm và tỡm hiểu nguyờn nhõn sự chờnh lệch đú (vớ dụ như độ đo số con trực tiếp NOC và độ đo chiều sõu cõy thừa kế DIT của nhúm thư viện cao hơn kết quả đo của nhúm Fsoft vỡ cỏc phần mềm thư viện được xõy dựng với mục đớch để sử dụng lại nờn sử dụng thừa kế nhiều hơn). Ngoài ra chỳng ta cũng đó xột ma trận hệ số tương quan giữa kết quả đo và cỏc chỉ số chất lượng (tỷ lệ hao phớ cụng sức chữa lỗi, tỷ lệ lỗi trong pha kiểm tra, tỷ lệ lỗi khi bàn giao sản phẩm). Kết quả cho thấy cỏc độ đo CK cú tầm ảnh hưởng lớn lờn cỏc chỉ số chất lượng (bảng 4.4), chỳng ta đó xõy dựng phương trỡnh hồi quy (bảng 4.5, hỡnh 4.8) biểu diễn cỏc chỉ số chất lượng qua cỏc độ đo nhằm dự đoỏn chất lượng của cỏc phần mềm khỏc cựng được xõy dựng trong mụi trường đú.

Chỳng ta cũng đó đỏnh giỏ tập mẫu cỏc phần mềm theo mụ hỡnh QMOOD. Cỏc nhõn tố chất lượng được đỏnh giỏ là tớnh sử dụng lại, khả năng hiểu, chức năng.

Kết quả đỏnh giỏ cỏc nhõn tố này cho thấy chỳng cú tầm ảnh hưởng khụng nhỏ (bảng 4.10) lờn cỏc chỉ số chất lượng của sản phẩm (tỷ lệ hao phớ cụng sức chữa lỗi, tỷ lệ lỗi khi kiểm tra, tỷ lệ lỗi khi bàn giao sản phẩm). Dựa trờn bảng hệ số tương quan, chỳng ta đó cú nhận xột về mục tiờu giảm đồng thời cụng sức chữa lỗi, lỗi kiểm tra, lỗi sản phẩm là khú cú thể thực hiện được. Nhận xột này cần được nghiờn cứu sõu hơn.

Túm lại, kết quả nghiờn cứu thực nghiệm qua quỏ trỡnh đo cỏc dự ỏn ở Fsoft và một số thư viện khỏc cho ta thấy cỏc phần mềm hướng đối tượng đó đo ớt sử dụng thừa kế, cỏc độ đo về thừa kế, kết dớnh, cố kết cú tầm ảnh hưởng lớn đến chất lượng phần mềm. Trong tương lai nghiờn cứu thực nghiệm tiếp theo là tiến hành đo trờn nhiều phần mềm hướng đối tượng hơn và tiến hành phõn tớch kết quả trờn một mụ hỡnh phõn tớch cụ thể.

KẾT LUẬN

Sau thời gian thực tập tốt nghiệp và làm đồ ỏn tốt nghiệp tại khoa Cụng nghệ thụng tin trường Đại học Bỏch Khoa Hà Nội tụi đó đạt được một số kết quả sau: 1. Hiểu được những khỏi niệm cơ bản về đo phần mềm núi chung và đo phần

mềm hướng đối tượng núi riờng.

2. Nắm bắt được xu thế phỏt triển của đo phần mềm trong tương lai, biết được một số cụng cụ để cú thể xõy dựng cỏc bài toỏn dựa trờn lý thuyết đo phần mềm.

3. Xõy dựng chương trỡnh trợ giỳp cho quỏ trỡnh đỏnh giỏ phần mềm hướng đối tượng. Chương trỡnh cú một số đặc điểm như:

o Cỏc mụ hỡnh đỏnh giỏ phần mềm được lưu trữ trong thư viện mụ hỡnh, người sử dụng cú thể lựa chọn cỏc mụ hỡnh, cải tiến cho phự hợp hoặc xõy dựng mụ hỡnh mới.

o Cỏc độ đo là đầu vào cho chương trỡnh cú thể được thu thập nhờ cỏc cụng cụ hoặc cú thể được nhập trực tiếp từ bàn phớm. Vỡ thế cỏc mụ hỡnh cú thể dựng để đỏnh giỏ sản phẩm, quỏ trỡnh hay nguồn lực.

o Xuất phỏt từ hai nguyờn nhõn trờn cộng thờm với một cơ sở dữ liệu được thiết kế tốt nờn cú thể núi chương trỡnh cú tớnh mở cao, mềm dẻo khi muốn mở rộng chương trỡnh nhằm thu thập cỏc độ đo từ cỏc nguồn khỏc nhau (sử dụng cụng cụ để thu thập độ đo) cũng như là xuất cỏc kết quả ra bảng, biểu đồ hay tiến hành cỏc phõn tớch kết quả đo.

4. Áp dụng đỏnh giỏ một số phần mềm được xõy dựng hướng đối tượng tại Fsoft-fpt và một số thư viện lập trỡnh hướng đối tượng trờn thế giới. Qua quỏ trỡnh đỏnh giỏ cho thấy cỏc kết quả đo phự hợp với lý thuyết cỏc phộp đo hướng đối tượng của Chidamber và Kemerer, rỳt ra những nhận xột về mối liờn quan ảnh hưởng giữa cỏc giỏ trị độ đo và chất lượng phần mềm.

Trong tương lai, hướng phỏt triển tiếp theo của đề tài là tiếp tục hoàn thành chương trỡnh đầy đủ tớnh năng hơn, cung cấp chương trỡnh cho cỏc trung tõm phần mềm để tiến hành đo trờn cỏc phần mềm của họ, dựa trờn kết quả phản hồi cú thể cú những nghiờn cứu đỏnh giỏ cỏc số liệu thống kờ, cải tiến chương trỡnh để phự hợp yờu cầu người sử dụng.

Do thời gian làm đồ ỏn cú hạn cũng như hạn chế về kinh nghiệm của bản thõn nờn chương trỡnh cũn nhiều thiếu sút. Rất mong nhận được sự thụng cảm và những

ý kiến đúng gúp giỳp đỡ của cỏc thầy cụ giỏo cũng như cỏc bạn đồng nghiệp để đề tài được hoàn thiện hơn.

Qua đõy một lần nữa tụi xin bày tỏ lũng biết ơn đối với tập thể cỏc thầy cụ giỏo trong khoa Cụng nghệ thụng tin, trường Đại học Bỏch khoa Hà Nội đó truyền thụ cho tụi những kiến thức quý bỏu trong thời gian qua. Tụi xin trõn trọng cảm ơn thầy giỏo Huỳnh Quyết Thắng, người đó tận tỡnh hướng dẫn tụi trong suốt thời gian thực hiện đề tài này. Đồ ỏn này cũng khụng thể hoàn thành nếu thiếu sự trợ giỳp về tư liệu và cơ sở vật chất từ phớa trung tõm xuất khẩu phần mềm Fsoft-fpt Hà Nội.

TÀI LIỆU THAM KHẢO Tiếng Anh:

1. Boehm BW. ‘Software Engineering Economics’, Prentice-Hall, New York, 1981. (adsbygoogle = window.adsbygoogle || []).push({});

2. Booch, Grady. ‘Object-oriented Analysis and Design with Applications’, The Benjamin/Cummings Publishing Company, Inc., 1994.

3. Chidamber, Shyam and Kemerer, Chris. ‘A Metrics Suite for Object- Oriented Design’, IEEE Transactions on Software Engineering, June, 1994, pp. 476-492.

4. DeMarco T. ‘Controlling Software Projects’, Prentice Hall, New York 1982. 5. Halstead MH. ‘Elements of software Science’, Elsevier N-Holland, 1975. 6. International Function Point Users Group. ‘IT Measurement’, Addison-

Wesley, 2002.

7. John J. Marciniak (Editor-in-chief). ‘Encyclopedia of software engineering’, 1994.

8. John M. Stroud. ‘The Fine Structure of Psychological Time’, Annals of New York Academy, 1955.

9. M. Xenos, D. Stavrinoudis, K. Zikouli and D. Christodoulakis. ‘Object- Oriented Metrics – A Survey’, Proceedings of the FESMA 2000, Federation of European Software Measurement Associations, Madrid, Spain, 2000.

10.Norman E. Fenton. ‘Software Metrics – A rigorous approach’, ChapMan & Hall, London, 1993.

11.Reiner R. Dumke, Erik Foltin. ‘Metrics-based Evaluation of Object- Oriented Software Development Methods’, Preprint Nr. 10, Fakultọt fỹr Informatik, 1996.

12.Software Productivity Consortium. ‘OO Software Product Metrics Survey’, Technical Report SPC-97005-MC, 1998.

13.T.J. McCabe. ‘A complexity measure’, IEEE Transactions on Software Engineering, SE-2(4):308-320, December 1976.

14.Tao Xie, Wanghong Yuan, Hong Mei, Fuqing Yang. ‘JBOOMT: Jade BirdObject-Oriented Metrics Tool’. Submitted to Chinese Journal of Electronics (English Version), July 2000.

15.William A. Florac, Robert E. Park, Anita D. Carleton. ‘Practical Software Measurement’, Joint Logistics Commanders & Office of the Secretary of Defense, 1997.

Tiếng Việt:

16.Huỳnh Quyết Thắng, Đặng Việt Dũng. ‘Đỏnh giỏ độ tin cậy phần mềm hướng thành phần dựa trờn độ tin cậy cỏc thành phần’. Bỏo cỏo tại hội nghị khoa học cụng nghệ quốc gia ICT’RDA 2003. Học viện kỹ thuật quõn sự 3/2003.

Web site:

17.Canata metric tool: http://www.iplbath.com/p13.htm

18.QMOOD homepage: http://indus.cs.uah.edu/research/qmood++/bansiya.htm

19.Rational Rose Suite: www.rational.com

20.REBOOT homepage: http://dis.sema.es/projects/REBOOT/reuse.html

Một phần của tài liệu Đo sản phầm phần mềm xây dựng trong môi trường hướng đối tượng (Trang 82)