Danh gia do tin cay phan mem huong thanh phan dua 49547 khotrithucso com

91 0 0
Danh gia do tin cay phan mem huong thanh phan dua 49547 khotrithucso com

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Lời cảm ơn Để có đồ án tốt nghiệp này, tơi xin bày tỏ lịng biết ơn sâu sắc tới tập thể thầy giáo, cô giáo trường Đại học Bách khoa Hà Nội nói chung khoa Cơng nghệ thơng tin nói riêng tận tình giảng dạy truyền đạt cho kiến thức, kinh nghiệm quý báu suốt năm học vừa qua Tôi xin chân thành cảm ơn thầy giáo tiến sĩ Huỳnh Quyết Thắng, môn Công nghệ Phần mềm, khoa Công nghệ Thông tin, trường Đại học Bách khoa Hà Nội khuyến khích, góp ý tận tình hướng dẫn tơi suốt q trình làm đồ án Nhờ quan tâm bảo ý kiến đóng góp q báu thầy, tơi hồn thành đồ án Trong thời gian sửa chữa hoàn thiện đồ án, nhận bảo tận tình thầy giáo tiến sĩ Nguyễn Ngọc Bình, trưởng môn Công nghệ Phần mềm, khoa Công nghệ Thông tin, trường Đại học Bách khoa Hà Nội Tôi xin chân thành cảm ơn thầy dành cho quan tâm ý kiến quý báu để hồn thành đồ án Đồ án khơng thể hồn thành thiếu hỗ trợ tư liệu sở vật chất từ phía trung tâm xuất khấu phần mềm Fsoft-fpt Hà Nội, xin chân thành cảm ơn anh Phan Phương Đạt khuyến khích, động viên, giúp đỡ tạo điều kiện để tơi hồn thành đồ án Cuối cùng, xin chân thành cảm ơn gia đình bạn bè, người bên suốt năm học vừa qua Đánh giá phần mềm hướng đối tượng MỤC LỤC MỞ ĐẦU Đặt vấn đề Nhiệm vụ bố cục đồ án CHƯƠNG 1: TỔNG QUAN VỀ LÝ THUYẾT ĐO PHẦN MỀM 10 1.1 Lý thuyết đo 10 1.1.1 Cơ lý thuyết đo 10 1.1.2 Lý thuyết đo – cách tiếp cận 12 1.2 Cơ sở lý thuyết phép đo phần mềm .14 1.2.1 Vai trò phép đo phần mềm 14 1.2.2 Mục đích đối tượng phép đo phần mềm 16 1.2.3 Các yêu cầu phép đo phần mềm 18 1.2.4 Các bước trình đo phần mềm 18 1.2.5 Một ví dụ phép đo phần mềm 18 1.2.6 Một số mơ hình đo phần mềm 19 Ước tính chi phí nhân lực 20 Mơ hình đánh giá chất lượng 21 Mơ hình đánh giá độ tin cậy 24 Mơ hình đánh giá hiệu 25 Mơ hình đánh giá độ phức tạp .25 1.3 Một số vấn đề đo phần mềm 26 1.3.1 Phân biệt đối tượng đo : sản phẩm, trình, nguồn lực 26 Phép đo trình 26 Phép đo sản phẩm 27 Phép đo nguồn lực 27 1.3.2 Phân biệt thuộc tính thuộc tính ngồi 28 Kết luận chương 1: 28 CHƯƠNG 2: PHÉP ĐO PHẦN MỀM HƯỚNG ĐỐI TƯỢNG .30 2.1 Bộ phép đo CK 31 2.1.1 Cơ sở lý thuyết phép đo CK 31 a Cơ sở lý thuyết phát triển phần mềm hướng đối tượng 31 b Cơ sở lý thuyết đo .32 c Một số khái niệm .33 2.1.2 Các tính chất phép đo hướng đối tượng .35 2.1.3 Các phép đo hệ đo CK 36 WMC (Weight Method per Class) .36 DIT (Depth of Inheritance Tree) 37 NOC (Number Of Children) 37 CBO (Coupling Between Object) 38 RFC (Responce For a Class) .38 LCOM (Lack of Cohesion in Methods) .39 2.1.4 Tổng kết phép đo CK: .39 Đặng Việt Dũng, Lớp KSTN CNTT K43 Trang Đánh giá phần mềm hướng đối tượng 2.1.5 Một ví dụ phép đo CK .40 2.2 Mơ hình đánh giá chất lượng phần mềm hướng đối tượng 42 Mơ hình REBOOT (ReusE Based on Object Oriented Technology) 42 Mơ hình QMOOD (Quality Model for Object Oriented Design) 44 Kết luận chương 2: 47 CHƯƠNG 3: PHÂN TÍCH THIẾT KẾ VÀ XÂY DỰNG PHẦN MỀM TRỢ GIÚP ĐO PHẦN MỀM HƯỚNG ĐỐI TƯỢNG 48 3.1 Phân tích yêu cầu .48 3.2 Các chức chương trình 51 3.3 Cơ sở liệu chương trình 51 3.4 Chọn lựa công cụ thực 52 3.5 Xây dựng chương trình .53 a Mô tả sở liệu 53 b Giao diện chương trình 55 c Xây dựng chức chương trình 55 3.6 Giới thiệu chương trình: 60 Mơ tả chương trình nguồn: 60 Mô tả giao diện chương trình: .62 CHƯƠNG 4: MỘT SỐ KẾT QUẢ ĐO PHẦN MỀM HƯỚNG ĐỐI TƯỢNG .68 4.1 Kết phép đo CK .69 4.1.1 Kết độ đo LCOM 70 4.1.2 Kết độ đo DIT 71 4.1.3 Kết độ đo CBO 72 4.1.4 Kết độ đo NOC 73 4.1.5 Kết độ đo RFC 75 4.1.6 Kết độ đo WMC 76 4.1.7 Tổng hợp kết độ đo CK 78 4.1.8 Quan hệ ảnh hưởng độ đo CK thuộc tính khác 79 4.2 Kết đo sử dụng mơ hình QMOOD 82 4.2.1 Q trình đo sử dụng mơ hình QMOOD 82 4.2.2 Quan hệ ảnh hưởng kết đo thuộc tính khác 85 Nhận xét đánh giá kết đo thực nghiệm: .86 KẾT LUẬN 88 TÀI LIỆU THAM KHẢO .90 Đặng Việt Dũng, Lớp KSTN CNTT K43 Trang Đánh giá phần mềm hướng đối tượng DANH MỤC CÁC HÌNH VẼ Hình 1.1: Ví dụ phép đo kích thước chương trình 11 Hình 1.2: Ví dụ kết phép đo phần mềm (Fsoft-fpt) 17 Hình 1.3: Mơ hình FCM 21 Hình 1.4: Mơ hình đánh giá phần mềm ISO 9126 .22 Hình 1.5: Mơ hình đánh giá khả bảo trì IEEE 23 Hình 1.6: Đánh giá độ phức tạp qua lưu đồ chương trình 25 Hình 2.1: Ví dụ minh họa phép đo CK 41 Hình 2.2: Mơ hình REBOOT 43 Hình 2.3: Mơ hình QMOOD .46 Hình 3.1: Quy trình đo phần mềm hướng đối tượng 49 Hình 3.2: Sơ đồ hoạt động chương trình .50 Hình 3.3: Các chức chương trình .51 Hình 3.4: Các bảng sở liệu chương trình 52 Hình 3.5: Chức nhập liệu chương trình 63 Hình 3.6: Chức tính tốn hiển thị độ đo mơ hình 64 Hình 3.7: Chức tạo sửa đổi mơ hình .65 Hình 3.8: Chức mở CSDL 66 Hình 3.9: Chức phân tích kết đo 67 Hình 4.1: Kết độ đo LCOM 71 Hình 4.2: Kết độ đo DIT 72 Hình 4.3: Kết độ đo CBO 73 Hình 4.4: Kết độ đo NOC 74 Hình 4.5: Kết độ đo RFC 76 Hình 4.6: Kết độ đo WMC 77 Hình 4.7: Biểu đồ độ đo CK phần mềm .78 Hình 4.8: Dự đốn thuộc tính chất lượng dựa độ đo CK 81 Hình 4.9: Kết đo số thuộc tính mơ hình QMOOD 84 Đặng Việt Dũng, Lớp KSTN CNTT K43 Trang Đánh giá phần mềm hướng đối tượng DANH MỤC CÁC BẢNG Bảng 1.1: Phân công nhiệm vụ đo tổ chức phần mềm 16 Bảng 1.2: Các hệ số mô hình COCOMO 20 Bảng 1.3: Các nhân tố chất lượng tiêu chuẩn chất lượng ISO 9126 23 Bảng 2.1: Vai trò độ đo CK giai đoạn thiết kế lớp 40 Bảng 2.2: Các dạng hàm chuẩn hóa độ đo 44 Bảng 2.3: Các tiêu chuẩn độ đo mơ hình QMOOD .45 Bảng 2.4: Mối liên hệ thuộc tính ngồi thuộc tính mơ hình QMOOD 46 Bảng 3.1: Một số công cụ đo phần mềm hướng đối tượng 49 Bảng 3.2: Cơng thức tính tham số cho dạng hàm chuẩn hóa .58 Bảng 4.1: Danh sách dự án đo 69 Bảng 4.2: Tổng cộng số lớp dự án đo 69 Bảng 4.3: Kết độ đo CK phần mềm .78 Bảng 4.4: Hệ số tương quan độ đo CK số chất lượng .80 Bảng 4.5: Các hệ số phương trình tuyến tính biểu diễn phụ thuộc thuộc tính chất lượng độ đo 81 Bảng 4.6: Kết độ đo mơ hình QMOOD 82 Bảng 4.7: Lựa chọn ngưỡng cho hàm chuẩn hóa độ đo 83 Bảng 4.8: Ngưỡng cho hàm chuẩn hóa độ đo QMOOD .83 Bảng 4.9: Kết đo số thuộc tính mơ hình QMOOD 84 Bảng 4.10: Hệ số tương quan thuộc tính mơ hình QMOOD với thuộc tính chất lượng khác 85 Bảng 4.11: Hệ số tương quan độ đo số chất lượng .86 Bảng 4.12: Mối quan hệ ảnh hưởng độ đo số chất lượng 86 Đặng Việt Dũng, Lớp KSTN CNTT K43 Trang Đánh giá phần mềm hướng đối tượng BẢNG GHI CHÚ CÁC THUẬT NGỮ Viết tắt ADO Viết đầy đủ Active Data Object ANA API CBO CIS Average Number of Ancesters Application Programming Interface Cohesion Among Methods in Class Coupling Between Object class Class Interface Size CK Chidamber, Kemerer COCOMO Constructive Cost Model CSDL DAM Cơ sở liệu Data Access Metric DCC Direct Class Coupling DIT DSC FCM Depth of Inheritance Tree Design Size in Classes Factor-Criteria-Metrics GNU GNU Library General Public License International Standard Organization CAM ISO 9126 JBOOMT JDK LCOM LOC MFA Jade Bird Object Oriented Metric Tool Java Developer Kit Lack of Cohesion among Methods Lines of code Measure of Functional Đặng Việt Dũng, Lớp KSTN CNTT K43 Giải nghĩa Đối tượng để truy cập sở liệu Trung bình số lớp cha Giao diện lập trình ứng dụng Tính cố kết phương thức lớp Độ kết dính lớp Kích thước giao diện lớp (số phương thức public) Bộ phép đo hướng đối tượng Chidamber, Kemerer đề xuất [6] Mơ hình ước tính chi phí cho dự án phần mềm Khả truy cập liệu (tỷ lệ số thuộc tính public) Số lớp có tính kết dính với lớp Độ sâu thừa kế Số lớp chương trình Mơ hình nhân tố-tiêu chuẩn-độ đo để đánh giá chất lượng phần mềm Thư viện C++ cộng đồng mã nguồn mở Mơ hình đánh giá chất lượng phần mềm tổ chức tiêu chuẩn quốc tế Công cụ đo phần mềm hướng đối tượng Thư viện lập trình Java Sun Microsystem Độ thiếu cố kết phương thức (trong lớp) Số dòng mã lệnh Độ đo mức độ sử dụng thừa kế Trang Đánh giá phần mềm hướng đối tượng MFC MFM MOA MTBF MTTF MTTR NOC NOH NOM NOP ODBC OLEDB QMOOD REBOOT RFC STL WMC Abstraction Microsoft Foundation Class Measure of Functional Modularity Measure of Aggregation Mean Time Between Failure Mean Time To Failure Mean Time To Repair Number Of Children Number Of Hierarchies Number of Methods Number of Polymorphic Methods Open Database Connectivity lớp Thư viện lập trình C++ Microsoft Độ đo tính độc lập chức Sự tổ hợp lớp Thời gian sai hỏng Thời gian đến sai hỏng Thời gian để sửa chữa Số trực tiếp lớp Số mức phân cấp Số phương thức lớp (độ phức tạp lớp) Số phương thức đa hình Đối tượng để truy cập sở liệu Object Linking Embedding – Đối tượng để truy cập sở Database liệu Quality Model for Object Mơ hình chất lượng cho phần Oriented Design mềm hướng đối tượng ReusE Based on Object Oriented Mơ hình sử dụng lại cho phần Technology mềm hướng đối tượng Responce set For Class Tập trả lời lớp (các phương thức bị gọi lớp đó) Standard Template Library Thư viện lập trình C++ cung cấp tính mở rộng Weight Metric per Class Độ phức tạp lớp Đặng Việt Dũng, Lớp KSTN CNTT K43 Trang Đánh giá phần mềm hướng đối tượng MỞ ĐẦU Đặt vấn đề Đo phần mềm nhiệm vụ đóng vai trò quan trọng hoạt động kỹ thuật phần mềm Trong kỹ nghệ phần mềm đề cập đến hoạt động liên quan đến trình phát triển phần mềm, đo phần mềm liên quan đến đối tượng kỹ nghệ phần mềm mà định lượng Một số ví dụ điển hình đo dự đốn chi phí dự án, đo dự đoán chất lượng sản phẩm phần mềm Tất ngành công nghệ xác định rõ vai trò quan trọng phép đo tiến hành hoạt động sản xuất Một dự án phần mềm tiến hành mà không gắn liền với q trình đo dẫn tới khơng thể kiểm sốt thời gian hồn thành sản phẩm, chất lượng sản phẩm bàn giao cho khách hàng không đảm bảo Nếu đánh giá sản phẩm, đánh giá phương pháp phát triển phần mềm tốt hay không tốt Như vậy, nói đo phần mềm đóng vai trò quan trọng kỹ nghệ phần mềm Thực đo phần mềm dự án phần mềm nhằm mục đích: kiểm sốt q trình xây dựng phần mềm, đảm bảo hoàn thành sản phẩm thời hạn, kiểm soát chất lượng sản phẩm, dự đoán khắc phục cố xảy ra, cải tiến quy trình sản xuất phần mềm Các hệ thống thơng tin có độ lớn độ phức tạp, yêu cầu phải xây dựng thời gian ngắn mà phải đảm bảo chất lượng Trước yêu cầu đó, kỹ nghệ phần mềm đưa phương pháp phát triển nhằm đáp ứng đòi hỏi xúc Phương pháp phát triển phần mềm hướng đối tượng cách tiếp cận cho phép rút ngắn thời gian phát triển phần mềm qua việc sử dụng lại mã Mỗi phương pháp phát triển địi hỏi có phương tiện đánh giá phù hợp (đánh giá trình, đánh giá sản phẩm) Các phép đo phần mềm trước đo số dịng mã lệnh khơng thể tính chất hướng đối tượng sản phẩm Như cần có phương pháp, cơng cụ phù hợp để đánh giá phần mềm hướng đối tượng Xuất phát từ yêu cầu thực tiễn nêu trên, đồ án này, tập trung nghiên cứu phép đo sản phẩm phần mềm xây dựng môi trường hướng đối tượng Cơ sở lý thuyết đề tài dựa lý thuyết đo phần mềm nói chung đo phần mềm hướng đối tượng nói riêng (các phép đo CK mơ hình chất lượng ISO 9126) Phần phát triển chúng tơi đề xuất quy trình đo phần mềm gồm pha, xây dựng công cụ trợ giúp đo phần mềm hướng đối tượng, tiến hành đo phân tích kết đo số phần mềm hướng đối tượng Đặng Việt Dũng, Lớp KSTN CNTT K43 Trang Đánh giá phần mềm hướng đối tượng Nhiệm vụ bố cục đồ án Đồ án tập trung vào vấn đề xoay quanh phép đo phần mềm hướng đối tượng: lý thuyết đo phần mềm, tổng hợp kết nghiên cứu đo phần mềm hướng đối tượng, đề xuất hướng nghiên cứu phân tích kết đo thực nghiệm Ba nhiệm vụ đồ án sau: Tìm hiểu lý thuyết đo phần mềm, tổng hợp kết nghiên cứu giới đo phần mềm Chương trình bày vấn đề: cách tiếp cận lý thuyết đo phần mềm dựa lý thuyết đo nói chung; u cầu, vai trị, mục đích phép đo phần mềm; số kết nghiên cứu giới phương pháp đo phần mềm sử dụng rộng rãi công nghệ phần mềm Tìm hiểu lý thuyết đo phần mềm hướng đối tượng, kết nghiên cứu đo phần mềm hướng đối tượng Chương trình bày phép đo hướng đối tượng, mơ hình đánh giá phần mềm hướng đối tượng Đề xuất xây dựng cơng cụ trợ giúp cho q trình đo phần mềm hướng đối tượng (chương 3) Nhiệm vụ đặt đề xuất khung cho trình đo phần mềm xây dựng cơng cụ trợ giúp quy trình Quy trình đo phần mềm đề xuất gồm có bước: chọn lựa mơ hình, thu thập liệu, tính tốn mơ hình phân tích kết Công cụ trợ giúp đo phần mềm hướng đối tượng xây dựng nhằm mục đích hỗ trợ quy trình đo phần mềm Các mơ hình độ đo lưu trữ sở liệu, người sử dụng sửa đổi mơ hình xây dựng mơ hình Tiến hành đo thực nghiệm phân tích kết đo Các kết đo phần mềm trình bày chương kết đo dự án phần mềm trung tâm xuất phần mềm Fsoft-fpt Hà Nội thư viện lập trình hướng đối tượng gồm có MFC, JDK, GNU, STL Công cụ xây dựng sử dụng để trợ giúp cho trình đo Các kết đo phân tích khía cạnh: so sánh giá trị đo hai nhóm phần mềm, mối liên quan ảnh hưởng độ đo chất lượng phần mềm Q trình phân tích cho thấy kết đo phù hợp với lý thuyết phép đo hướng đối tượng Chidamber Kemerer, rút nhận xét mối quan hệ ảnh hưởng độ đo chất lượng phần mềm Các số liệu thống kê chúng tơi trình bày bảng biểu đồ nhằm thể tính trực quan tới người đọc Nội dung đồ án chia thành chương trên, phần cuối kết luận, đánh giá kết đạt đề phương hướng phát triển đề tài tương lai Đặng Việt Dũng, Lớp KSTN CNTT K43 Trang Đánh giá phần mềm hướng đối tượng CHƯƠNG 1: TỔNG QUAN VỀ LÝ THUYẾT ĐO PHẦN MỀM 1.1 Lý thuyết đo Trong sống hàng ngày ln ln gặp tình phải sử dụng phép đo Tuy nhiên quen với phép đo, ý đến chất phép đo : Đo trình mà kết ký hiệu gán cho thuộc tính thực thể theo tập luật định nghĩa rõ ràng [10] Như phép đo liên quan đến thuộc tính thực thể Thực thể vật, người pha kiểm tra dự án phần mềm v.v Thuộc tính thực thể chiều cao, số thông minh độ phức tạp, độ tin cậy v.v Chúng ta cần lưu ý thực tế không đo thực thể mà đo thuộc tính thực thể Phép đo gán ký hiệu cho thuộc tính thực thể để mô tả chúng Chẳng hạn đo chiều cao người ta gán giá trị lớn cho người cao hơn, không phụ thuộc vào việc sử dụng đơn vị đo inches, metres hay feet Trong vật lý, y học, kinh tế xã hội ngày đo thuộc tính mà trước người ta chưa thể nghĩ đo Dựa kết phép đo trí thơng minh, chất lượng khơng khí, tỷ lệ lạm phát, người ta đưa định quan trọng Những phép đo cố định mà không ngừng cải tiến Trong phần trình bày vấn đề lý thuyết đo phần mềm Những vấn đề sở cho phần đồ án 1.1.1 Cơ lý thuyết đo Ở nêu khái niệm phép đo Từ đến khái niệm sau: Đo việc gán giá trị số (hay ký hiệu) cho thực thể để mơ tả thuộc tính [10] Như phép đo thân ánh xạ từ tập thực thể vào tập độ đo để mô tả thuộc tính Đặng Việt Dũng, Lớp KSTN CNTT K43 Trang 10

Ngày đăng: 19/06/2023, 18:16

Tài liệu cùng người dùng

Tài liệu liên quan