Chương này tổng hợp lại những nội dung trọng tâm và chủ yếu của học phần Đảm bảo và kiểm soát chất lượng phần mềm. Mời các bạn cùng tham khảo để nắm bắt những nội dung chi tiết.
ĐẢM BẢO VÀ KIỂM SỐT CHẤT LƯỢNG Ơn Tập HCM – 10/2012 5/14/2014 Chương 1: Tổng quát Đảm Bảo Kiểm Soát chất lượng phần mềm Chất lượng gì? Khái niệm phần mềm Chất lượng phần mềm? Khủng hoảng phần mềm QA vs QC Những nhiệm vụ QC Những nhiệm vụ QA Những kỹ QC Những kỹ QA Những chứng nhận quốc tế QA & QC 5/14/2014 Trang Chương 1: Tổng quát Đảm Bảo Kiểm Sốt chất lượng phần mềm Những đặc tính sau không dùng để đo chất lượng phần mềm? Khả thay đổi (Changeability) Tính hấp dẫn (Attractiveness) Khả chịu lỗi (Fault tolerant) Tính thừa kế (Inheritance) 5/14/2014 Trang Chương 1: Tổng quát Đảm Bảo Kiểm Soát chất lượng phần mềm Nhiệm vụ sau nhiệm vụ QC? Kiểm thử sửa lỗi Báo cáo sai phạm quy trình Báo cáo lỗi Ngăn ngừa lỗi xuất 5/14/2014 Trang Chương 2: Các yếu tố kiểm sốt chất lượng phần mềm Quy trình phát triển phần mềm Tại phải kiểm soát (testing) phần mềm? Tại phải kiểm soát (testing)? Nguyên nhân gây khiếm khuyết Testing gì? Testing phần mềm gì? Quan hệ testing chất lượng Khác biệt Gỡ rối(Debug) Testing 5/14/2014 Trang Chương 2: Các yếu tố kiểm soát chất lượng phần mềm Những nguyên lý tổng quát testing Phơi bày biểu khiếm khuyết Không thể vét cạn hết trường hợp Testing sớm Gom nhóm khiếm khuyết Nghịch lý thuốc trừ sâu (Pesticide paradox) Phụ thuộc ngữ cảnh Ảo tưởng “không lỗi” (Absence-of-errors fallacy) 5/14/2014 Trang Chương 2: Các yếu tố kiểm sốt chất lượng phần mềm Quy trình Testing Lập kế hoạch & Kiểm soát Test Phân tích thiết kế Test-Case Thực Test Đánh giá - Lập báo cáo Kết thúc Testing Triết lý việc Testing Ai thực testing chương trình Kỹ giao tiếp Những định nghĩa Defect Density (mật độ lỗi) Coverage (độ bao phủ) 5/14/2014 Trang Chương 2: Các yếu tố kiểm soát chất lượng phần mềm Yếu tố sau nguyên nhân gây khiếm khuyết (Bug)? Tính khơng cẩn thận Q tập trung vào chi tiết Áp lực thời gian Sử dụng code người khác 5/14/2014 Trang Chương 2: Các yếu tố kiểm soát chất lượng phần mềm Nguyên lý “Không thể vét cạn hết trường hợp” có mục đích: Phải lựa chọn người QC phù hợp Giúp xác định trường hợp dễ kiểm thử Giúp xác định trường hợp không cần kiểm thử Giúp xác định yêu cầu đặc biệt khách hàng 5/14/2014 Trang Chương 3: Các kỹ thuật kiểm soát chất lượng phần mềm Các pha qui trình Phân tích yêu cầu Thiết kế phần mềm Lập trình Kiểm nghiệm phần mềm Triển khai bảo trì Những mơ hình phát triển phần mềm Mơ hình tháp nước Mơ hình chữ V Mơ hình phát triển lặp gia tăng 5/14/2014 Trang 10 Chương 3: Các kỹ thuật kiểm soát chất lượng phần mềm Tính chất cần thiết cho tất mơ hình phát triển phần mềm: Mỗi mức kiểm tra phải có mục tiêu Nên có nhiều thời gian cho kiểm thử thời gian cho phát triển (Development) Thiết kế Test-Case bắt đầu giai đoạn thực (Development) hoàn thành QC nên bắt đầu đọc tài liệu liên quan sớm 5/14/2014 Trang 14 Chương 4: Các kỹ thuật kiểm tra tĩnh Các phương pháp Testing Kiểm thử tĩnh Kiểm thử động „Các kiểu rà soát (Review) Kiểm lại (Desk checking) Lần bước (Walkthrough) Peer Review Rà sốt (Inspection) Phân tích tĩnh Những tiêu chuẩn code (coding standards) Cấu trúc luồng điều khiển (control flow structure) Cấu trúc luồng liệu (data flow structure ) 5/14/2014 Trang 15 Chương 4: Các kỹ thuật kiểm tra tĩnh Những lỗi sau tìm thấy phương pháp rà sốt (Review) kiểm thử trực tiếp chương trình a) Khơng tuân theo chuẩn code (coding standards) b) Lỗi việc thực Interface c) Code không tốt cho việc bảo trì d) Code khơng đạt tốc độ (performance) e) Những lỗi tài liệu yêu cầu 5/14/2014 A) a,c,e B) a,b,d C) b,d,e D) a,c,d Trang 16 Chương 4: Các kỹ thuật kiểm tra tĩnh Những phát biểu sau đúng: Kiểm thử động không cần phải chạy chương trình Rà sốt (Review) tài liệu dùng công cụ mà không cần người tham gia Chi phí sửa lỗi kiểm thử động thường cao kiểm thử tĩnh Kiểm thử động thường gồm nhiều buổi meeting kiểm thử tĩnh 5/14/2014 Trang 17 Chương 5: Các kỹ thuật kiểm tra động Tổng quan kiểm thử động Kiểm thử hộp đen Phân hoạch tương đương Phân tích giá trị biên Sơ đồ chuyển trạng thái Bảng định Đồ thị Nhân Kiểm thử hộp trắng Luồng điều khiển Kỹ thuật dựa kinh nghiệm Chọn kỹ thuật kiểm thử 5/14/2014 Trang 18 Chương 5: Các kỹ thuật kiểm tra động Một cửa hàng bán hàng qua mạng với yêu cầu lần đặt hàng: sản phẩm số lượng sản phẩm hay nhiều 100 giảm giá 20% Nếu áp dụng phương pháp phân tích giá trị biên bạn nhập số lượng hàng bao nhiêu: 5,6,20 4,5,80 4,5,100 5,20,100 5/14/2014 Trang 19 Chương 5: Các kỹ thuật kiểm tra động Cho bảng định sau Test case kết mong đợi sau hợp lệ: 23 tuổi với Insurance Class A Premium 90 Excess 2500 51 tuổi với Insurance Class C Premium 70 Excess 500 31 tuổi với Insurance Class B Premium 90 Excess 2500 43 tuổi với Insurance Class C Premium 70 Excess 1000 5/14/2014 Trang 20 Chương 5: Các kỹ thuật kiểm tra động Cho đoạn code sau: Read A Read B IF A < THEN Print “A negative” ELSE Print “A positive” ENDIF IF B < THEN Print “B negative” ELSE Print “B positive” ENDIF Xác định số lượng Test case để đạt độ phủ 100% cho câu lệnh 100% cho nhánh Độ phủ câu lệnh = 1, Độ phủ cho nhánh = Độ phủ câu lệnh = 2, Độ phủ cho nhánh = Độ phủ câu lệnh = 2, Độ phủ cho nhánh = Độ phủ câu lệnh = 3, Độ phủ cho nhánh = 5/14/2014 Trang 21 Chương 5: Các kỹ thuật kiểm tra động Cho lược đồ luồng sau Hiện có Test case qua A, B, D G Cần phải thêm Test case sau để đảm bảo đạt 100% độ phủ câu lệnh độ phủ nhánh Test case qua A, C, D, E, F, E G Test case qua A, B, D, E G Test case qua A, C, D, E, F, E G; Và Test case qua A, B, D, E G Test case qua A, C, D G 5/14/2014 Trang 22 Chương 6: Tổng quan chuẩn chất lượng CMMI Giới thiệu mơ hình CMMI Ngun nhân đời Định nghĩa Lịch sử phát triển Phạm vi Lợi ích Thực trạng Những khái niệm CMMI CMMI gì? Những thành phần mơ hình CMMI Những kiểu mơ hình CMMI Những dạng thể CMMI Những cấp độ CMMI SCAMPI: A, B and C Tất người sử dụng CMMI? 5/14/2014 Trang 23 Chương 6: Tổng quan chuẩn chất lượng CMMI Chọn phát biểu sai CMMI: CMMI đời có q nhiều mơ hình, nhiều chuẩn khơng thống CMMI giúp tối ưu đoạn code dư thừa CMMI giúp đào tạo đánh giá nhân viên tốt Một số công ty VN đạt CMMI mức 5/14/2014 Trang 24 Chương 6: Tổng quan chuẩn chất lượng CMMI Tiêu chuẩn viện kỹ nghệ Mỹ (SEI) sử dụng để thẩm định CMMI cho công ty CMM (Capability Maturity Model) SCAMPI (Standard CMMI Appraisal Method for Process Improvement) CMMI-DEV (development) SCAMPI (Standard CMMI Appraisal Method for Process Improvement) CMM (CapabilityMaturity Model) 5/14/2014 Trang 25 Chương 9: Quy trình lên kế hoạch dự án Establish Estimates SG1 Planning Data Develop a Project Plan SG2 Obtain Commitment to the Plan Project Plans SG3 Project Monitoring and Control 5/14/2014 Trang 26 Chương 7-10 Hãy xếp theo thứ tự bước lên kế hoạch dự án (Project Planning) I Xác định rủi ro II Lên kế hoạch cho tài nguyên dự án (resource): nhân sự, thiết bị… III Xác định chức dự án IV Rà soát lại kế hoạch a) i,ii,iii,iv b) iii,i,ii,iv c) iii,iv,i,ii d) ii,iii,i,iv 5/14/2014 Trang 27 ĐẢM BẢO VÀ KIỂM SOÁT CHẤT LƯỢNG 5/14/2014 28 ...Chương 1: Tổng quát Đảm Bảo Kiểm Soát chất lượng phần mềm Chất lượng gì? Khái niệm phần mềm Chất lượng phần mềm? Khủng hoảng phần mềm QA vs QC Những nhiệm vụ QC... quốc tế QA & QC 5/14/2014 Trang Chương 1: Tổng quát Đảm Bảo Kiểm Soát chất lượng phần mềm Những đặc tính sau khơng dùng để đo chất lượng phần mềm? Khả thay đổi (Changeability) Tính hấp dẫn... Đảm Bảo Kiểm Soát chất lượng phần mềm Nhiệm vụ sau nhiệm vụ QC? Kiểm thử sửa lỗi Báo cáo sai phạm quy trình Báo cáo lỗi Ngăn ngừa lỗi xuất 5/14/2014 Trang Chương 2: Các yếu tố kiểm soát