1. Trang chủ
  2. » Luận Văn - Báo Cáo

đánh giá độ tin cậy phần mềm

90 503 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 90
Dung lượng 4,24 MB

Nội dung

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

Ngày đăng: 10/01/2015, 09:36

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
1. Boehm BW. ‘Software Engineering Economics’, Prentice-Hall, New York, 1981 Sách, tạp chí
Tiêu đề: Software Engineering Economics
2. Booch, Grady. ‘Object-oriented Analysis and Design with Applications’, The Benjamin/Cummings Publishing Company, Inc., 1994 Sách, tạp chí
Tiêu đề: Object-oriented Analysis and Design with Applications’
3. Chidamber, Shyam and Kemerer, Chris. ‘A Metrics Suite for Object- Oriented Design’, IEEE Transactions on Software Engineering, June, 1994, pp. 476-492 Sách, tạp chí
Tiêu đề: A Metrics Suite for Object-Oriented Design’
4. DeMarco T. ‘Controlling Software Projects’, Prentice Hall, New York 1982 Sách, tạp chí
Tiêu đề: Controlling Software Projects
5. Halstead MH. ‘Elements of software Science’, Elsevier N-Holland, 1975 Sách, tạp chí
Tiêu đề: Elements of software Science
6. International Function Point Users Group. ‘IT Measurement’, Addison- Wesley, 2002 Sách, tạp chí
Tiêu đề: IT Measurement
7. John J. Marciniak (Editor-in-chief). ‘Encyclopedia of software engineering’, 1994 Sách, tạp chí
Tiêu đề: Encyclopedia of software engineering
8. John M. Stroud. ‘The Fine Structure of Psychological Time’, Annals of New York Academy, 1955 Sách, tạp chí
Tiêu đề: The Fine Structure of Psychological Time
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 Sách, tạp chí
Tiêu đề: Object-Oriented Metrics – A Survey
10. Norman E. Fenton. ‘Software Metrics – A rigorous approach’, ChapMan & Hall, London, 1993 Sách, tạp chí
Tiêu đề: Software Metrics – A rigorous approach
11. Reiner R. Dumke, Erik Foltin. ‘Metrics-based Evaluation of Object- Oriented Software Development Methods’, Preprint Nr. 10, Fakultọt fỹr Informatik, 1996 Sách, tạp chí
Tiêu đề: Metrics-based Evaluation of Object-Oriented Software Development Methods
12. Software Productivity Consortium. ‘OO Software Product Metrics Survey’, Technical Report SPC-97005-MC, 1998 Sách, tạp chí
Tiêu đề: OO Software Product Metrics Survey
13. T.J. McCabe. ‘A complexity measure’, IEEE Transactions on Software Engineering, SE-2(4):308-320, December 1976 Sách, tạp chí
Tiêu đề: A complexity measure
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 Sách, tạp chí
Tiêu đề: JBOOMT: Jade BirdObject-Oriented Metrics Tool’
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 Sách, tạp chí
Tiêu đề: Practical "Software Measurement
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 Sách, tạp chí
Tiêu đề: Đá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
18. QMOOD homepage: http://indus.cs.uah.edu/research/qmood++/bansiya.htm19.Rational Rose Suite: www.rational.com Link
20. REBOOT homepage: http://dis.sema.es/projects/REBOOT/reuse.html21.Understanding C++, Understanding Java tools: www.scitools.com Link

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w