Bài giảng Đảm bảo chất lượng phần mềm: Chương 4 - PGS.TS. Trần Cao Đệ
lượt xem 14
download
Bài giảng "Đảm bảo chất lượng phần mềm - Chương 4: Các độ đo chất lượng phần mềm" cung cấp cho người học các kiến thức: Các định nghĩa, độ đo CLPM (Software Quality Metric), phân loại độ đo phần mềm - Classifications of software metrics,... Mời các bạn cùng tham khảo.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Đảm bảo chất lượng phần mềm: Chương 4 - PGS.TS. Trần Cao Đệ
- Đảm bảo chất lượng phần mềm Software Quality Assurance Các độ đo chất lượng phần mềm PGS. TS. Trần Cao Đệ Bộ môn Công nghệ phần mềm Khoa CNTT&TT – Đại học Cần Thơ Năm 2013
- Các định nghĩa (Definitions) • Số đo (Measure) trong CNPM là một danh từ: số đo cung cấp một phạm vi, số lượng, kích thước, khả năng của một thuộc tính của một sản phẩm hoặc qui trình • Đo (Measurement): là một hành động xác định số đo • Độ đo (Metric): – “a quantitative measure of the degree to which a system, component, or process possesses a given attribute” -- IEEE Standard Glossary – Một số đo định lượng mức độ mà 1 hệ thống, 1 thành phần, 1 qui trình có một thuộc tính nào đó • Chỉ báo (Indicator): – a metric or combination of metrics that provides insight into the software process, project, or product itself. – Một độ đo hoặc tổ hợp các độ đo cung cấp cái nhìn sâu vào bên trong qui trình, dự án hoặc sản phẩm.
- Độ đo CLPM (Software Quality Metric) • SQM: độ đo xác định một số đo định lượng về mức độ mà một phần tử có được một thuộc tính chất lượng đã cho. Một đo lường định lượng • Một hàm mà đầu vào là dữ liệu về phần mềm và đầu ra là một giá trị số phản ánh mức độ mà phần mềm có được một thuộc tính chất lượng nào đó • Mục tiêu – Dễ dàng kiểm soát, quản lí, lập kế hoạch và thực hiện các điều chỉnh về quản lí, dựa trên: • Điều rút ra từ hiện thực so với hiệu năng mong đợi • Điều rút ra từ hiện thực so với thời gian, ngân sách dự kiến – Xác định tình trạng cho các cải tiến qui trình phát triển và bảo trì phần mềm (các hoạt động ngăn lỗi hoặc sửa lỗi) • Ví dụ: tích lũy các độ đo nhằm vào hiệu năng của nhóm làm việc 3
- Phân loại độ đo phần mềm Classifications of software metrics • Theo giai đoạn của phần mềm – Các độ đo liên quan tới qui trình phát triển – Các độ đo liên quan tới qui trình vận hành và bảo trì • Theo chủ đề được đo – Chất lượng – Thời gian – Hiệu quả (trong loại bỏ lỗi hoặc dùng tài nguyên)
- Đo lường phần mềm - Software measures • Đo kích thước - Software size measures – KLOC – một độ đo kích thước phần mềm cổ điển bằng số ngàn dòng lệnh. – Number of function points (NFP) – độ đo về công sức đòi hòi để phát triển phần mềm dựa vào đặc tả phần mềm. • Độ đo chất lượng tiến trình phần mềm - Software process quality metrics – Độ đo mật độ lỗi - Error density metrics (software volume + errors counted) – Độ đo nhạy cảm với lỗi - Error sensitivity metrics • Độ đo về khung thời gian của tiến trình - Software process timetable metrics • Độ đo hiệu quả của việc loại trừ lỗi - Error removal effectiveness metrics • Độ đo hiệu quả của tiến trình - Software process productivity metrics
- Đo mật độ lỗi - Defect density •Defect density measure – Một chỉ báo sức khỏe phần mềm - an important health warning –Một độ đo thực tế : a de-facto measure of software quality
- Examples of Error density metrics •NCE = The number of code errors detected by code inspections and testing. •NDE = total number of development (design and code) errors) detected in the development process. •WCE = weighted total code errors detected by code inspections and testing. •WDE = total weighted development (design and code) errors detected in development process.
- Xác định độ đo phần mềm Defining software (quality) metrics
- Thách thức đối với các độ đo phần mềm Challenge of Quality Metrics • Mỗi phép đo dựa trên 1 cách nhìn khác nhau về chất lượng và độ p0hức tạp của hệ thống. • Mục tiêu là pháp triển nhiều độ đo để nắm bắt các thuộc tính khác nhau như là chì số` chất lượng. Tuy nhiên, PP luận khoa học cho việc làm này chưa được đưa ra.
- Nguyên tắc đo lường - Measurement Principles • Công thức hóa (Formulation) – Rút ra các độ đo phù hợp cho phần mềm đang được xem xét. • Tập hợp dữ liệu (Collection) – tích lũy dữ liệu để dẫn tới độ đo đã hình thức hóa • Phân tích (Analysis) – tính toán dựa trên độ đo và áp dụng các công cụ toán học. • Diễn dịch (Interpretation) – đánh giá độ đo dựa vào công sức để có được chất lượng của hệ thống • Phản hồi (Feedback) – các khuyến nghị rút ra từ diễn dịch các độ đo.
- Các đặc điểm của một độ đo hiệu quả Attributes of Effective Software Metrics • Đơn giản và tính được - Simple and computable • Phù hợp thực gnhiệm và trực quan - Empirically and intuitively persuasive • Nhất quán và khách quan - Consistent and objective • Nhất quán trong đơn vị và chiều - Consistent in units and dimensions • Độc lập NNLT - Programming language independent • Cơ chế phản hồi hiệu quả - Effective mechanism for quality feedback
- Function Points • The Function Point (FP) metric can be used as a means for predicting the size of a system (derived from the analysis model). – number of user inputs – number of user outputs – number of user inquiries – number of files – number of external interfaces Weighting Factor MEASUREMENT PARAMETER count simple average complex total number of user inputs 3 x 3 4 6 =9 number of user outputs 2 x 4 5 7 =8 number of user inquiries 2 x 3 4 6 =6 number of files 1 x 7 10 15 =7 number of external interfaces 4 x 5 7 10 = 20 count - total 50 FP = count-total (0.65 + 0.01 Fi)
- PP Điểm chức năng Chức năng Vào Ra Truy vấn CSDL Số files Hệ thống khác
- Độ đo thiết kế ở mực tổng thể High-Level Design Metrics • Structural Complexity – S(i) = f2out(i) – fout(i) = fan-out of module i • Data Complexity – D(i) = v(i)/[fout(i) +1] – v(i) = # of input and output variables to and from module i • System Complexity – C(i) = S(i) + D(i)
- Độ đo hình thái hệ thống - Morphology Metrics • size = n + a • n = number of modules • a = number of arcs (lines of control) • arc-to-node ratio, r = a/n • depth = longest path from the root to a leaf • width = maximum number of nodes at any level a b c d e f g i j k l h m n p q r size depth width arc-to node ratio
- Độ đo thiết kế ở mức chi tiết Component-Level Design Metrics • Đo tính hợp nhất - Cohesion Metrics • Đo phụ thuộc - Coupling Metrics – Phụ thuộc vào dòng dữ liệu và điều khiển - data and control flow coupling – Phụ thuộc tổng quan - global coupling – Phụ thuộc môi trường - environmental coupling • Đo độ phức tạp - Complexity Metrics – Số Cyclomatic - Cyclomatic complexity – Số này > 10 thì chương trình sẽ phức tạp và khó test
- Đo thiết kế giao diện - Interface Design Metrics • Các thực thể trình bày (Layout Entities) - graphic icons, text, menus, windows, . • Bố trí các thực thể phù hợp - Layout Appropriateness – Vị trí tương đối, vị trí tuyệt đối của các thực thể trình bày absolute and relative position of each layout entity – Tần suất dùng - frequency used – Giá để chuyển từ thực thể này sang thực thể khác - cost of transition from one entity to another • LA = 100 x [(cost of LA-optimal layout) / (cost of proposed layout)] • Thiết kế giao diện cuối cùng nên dựa trên phản hồi từ các giao diện làm bản mẫu
- Metrics for Source Code • Software Science Primitives – n1 = the number of distinct operators – n2 = the number of distinct operands – N1 = the total number of operator occurrences – N2 = the total number of operand occurrences – Length: N = n1log2n1 + n2log2n2 – Volume: V = (N1+N2)log2(n1 + n2) – V = Nlog2(n1 + n2)
- Ví dụ 1. Procedure sort(var x:array; operator operand n:integer); Procedure 1 X 7 2. Var i,j,save:integer; Sort() 1 N 2 Var 2 3. Begin I 6 : 3 4. for i:=2 to n do J 5 Array 1 5. for j:=1 to i do ; 6 Save 3 6. if x[i]
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Đảm bảo chất lượng phần mềm và kiểm thử (Phần 2) - Nguyễn Văn Vy
0 p | 343 | 74
-
Bài giảng Đảm bảo chất lượng phần mềm - Phan Thị Hoài Phương
202 p | 345 | 53
-
Bài giảng Đảm bảo chất lượng phần mềm: Vấn đề quản lý chất lượng trong công nghệ phần mềm - PGS.TS. Trần Cao Đệ
32 p | 128 | 16
-
Bài giảng Đảm bảo chất lượng phần mềm: Chương 2 - PGS.TS. Trần Cao Đệ
42 p | 138 | 14
-
Bài giảng Đảm bảo chất lượng phần mềm: Chương 3 - PGS.TS. Trần Cao Đệ
47 p | 111 | 13
-
Bài giảng Đảm bảo chất lượng phần mềm: Phần 1
94 p | 46 | 11
-
Bài giảng Đảm bảo chất lượng phần mềm: Giới thiệu môn học - PGS.TS. Trần Cao Đệ
17 p | 101 | 8
-
Bài giảng Đảm bảo chất lượng phần mềm: Phần 2
104 p | 47 | 8
-
Bài giảng Đảm bảo chất lượng phần mềm: Quản lý chất lượng phần mềm - ThS. Nguyễn Thị Thanh Trúc
38 p | 86 | 7
-
Bài giảng đảm bảo chất lượng phần mềm: Mở đầu - Nguyễn Anh Hào
6 p | 31 | 7
-
Bài giảng Đảm bảo chất lượng phần mềm: Chất lượng của phần mềm - Nguyễn Anh Hào
6 p | 31 | 6
-
Bài giảng Đảm bảo chất lượng phần mềm: Đặc tả phần mềm - Nguyễn Anh Hào
20 p | 39 | 4
-
Bài giảng Đảm bảo chất lượng phần mềm: Ứng xử yêu cầu đối với phần mềm - Nguyễn Anh Hào
40 p | 21 | 4
-
Bài giảng Đảm bảo chất lượng phần mềm: Kiểm soát cách làm - Nguyễn Anh Hào
30 p | 18 | 4
-
Bài giảng Đảm bảo chất lượng phần mềm: Duy trì chất lượng - Nguyễn Anh Hào
20 p | 25 | 4
-
Bài giảng Đảm bảo chất lượng phần mềm: ISO9000 và CMM - Nguyễn Anh Hào
27 p | 23 | 4
-
Bài giảng Đảm bảo chất lượng phần mềm: Quality and testing software requirement concepts and process - ThS. Nguyễn Thị Thanh Trúc
70 p | 52 | 2
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn