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.
Trang 1CHẤT LƯỢNG
HCM – 10/2012
Ôn Tập
Trang 2Tổng quát về Đảm Bảo và Kiểm Soát chất lượng
Trang 3Tổng quát về Đảm Bảo và Kiểm Soát chất lượng
phần mềm
Những đặc tính nào sau đây không
được dùng để đo chất lượng phần
Trang 4Tổng quát về Đảm Bảo và Kiểm Soát chất lượng
phần mềm
Nhiệm vụ nào sau đây là nhiệm vụ của QC?
Kiểm thử và sửa lỗi
Báo cáo về những sai phạm về quy trình
Báo cáo lỗi
Ngăn ngừa lỗi có thể xuất hiện
Trang 5Các yếu tố cơ bản trong kiểm soát chất lượng
phần mềm
Quy trình phát triển phần mềm
Tại sao phải kiểm soát (testing) phần
mềm?
Tại sao phải kiểm soát (testing)?
Nguyên nhân gây ra các khiếm khuyết
Testing là gì?
Testing phần mềm là gì?
Quan hệ testing và chất lượng
Khác biệt giữa Gỡ rối(Debug) và Testing
Trang 6Các yếu tố cơ bản trong kiểm soát chất lượng
Gom nhóm các 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)
Trang 7Các yếu tố cơ bản trong kiểm soát chất lượng
phần mềm
Trang 8Các yếu tố cơ bản trong kiểm soát chất lượng
phần mềm
Yếu tố nào sau đây không phải là
nguyên nhân gây ra khiếm khuyết
Trang 9Các yếu tố cơ bản trong kiểm soát chất lượng
phần mềm
Nguyên lý “Không thể vét cạn hết các
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 những trường hợp dễ kiểm
Trang 10Các kỹ thuật cơ bản về kiểm soát chất lượng
phần mềm
Các pha trong qui trình
Phân tích yêu cầu
Trang 11Các kỹ thuật cơ bản về kiểm soát chất lượng
phần mềm
Các mức kiểm tra
Kiểm tra thành phần/đơn vị (Component (Unit)
Test)
Kiểm tra tích hợp (Intergration Test)
Kiểm tra hệ thống (System Test)
Kiểm tra chấp nhận (Acceptance Test)
Các kiểu kiểm tra
Kiểm thử chức năng (Function Test)
Kiểm tra Phi chức năng (Non-Functional Test)
Kiểm thử hồi quy (Regression Test)
Trang 12Các kỹ thuật cơ bản về kiểm soát chất lượng
phần mềm
Chiến lược kiểm thử Sandwich là chiến
lược được áp dụng tại mức kiểm thử:
Kiểm tra thành phần/đơn vị (Component (Unit)
Test)
Kiểm tra tích hợp (Intergration Test)
Kiểm tra hệ thống (System Test)
Kiểm tra chấp nhận (Acceptance Test)
Trang 13Các kỹ thuật cơ bản về kiểm soát chất lượng
phần mềm
Khách hàng mong muốn trang Web của
họ phải có thể hoạt động 24/7 Nếu bạn
là 1 QC bạn nên áp dụng phương pháp
kiểm thử gì
Kiểm thử hồi quy (Regression Test)
Kiểm thử chức năng (Function Test)
Kiểm tra Phi chức năng (Non-Functional
Test)
Kiểm tra thành phần/đơn vị (Component (Unit)
Test)
Trang 14Các kỹ thuật cơ bản về kiểm soát chất lượng
phần mềm
Tính chất nào là cần thiết cho tất cả các
mô hình phát triển phần mềm:
Mỗi mức kiểm tra phải có cùng mục tiêu
Nên có nhiều thời gian cho kiểm thử hơn
thời gian cho phát triển (Development)
Thiết kế Test-Case chỉ bắt đầu khi giai
đoạn hiện thực (Development) đã hoàn thành
QC nên bắt đầu đọc những tài liệu liên
quan sớm nhất có thể
Trang 15Cá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à soá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 dữ liệu (data flow structure )
Trang 16Các kỹ thuật kiểm tra tĩnh
Những lỗi nào sau đây được tìm thấy bằng phương pháp rà soát (Review) hơn là 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 trong việc hiện thực những Interface
c) Code không tốt cho việc bảo trì
d) Code không đạt về tốc độ (performance)
e) Những lỗi trong tài liệu yêu cầu
A) a,c,e
B) a,b,d
C) b,d,e
D) a,c,d
Trang 17Các kỹ thuật kiểm tra tĩnh
Những phát biểu nào sau đây là đúng:
Kiểm thử động không cần phải chạy
chương trình
Rà soát (Review) tài liệu có thể dùng công
cụ mà không cần người tham gia
Chi phí sửa lỗi của kiểm thử động thường cao hơn kiểm thử tĩnh
Kiểm thử động thường gồm nhiều buổi
meeting hơn kiểm thử tĩnh
Trang 18Các kỹ thuật kiểm tra động
Tổng quan về 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 quyết định
Đồ thị Nhân quả
Kiểm thử hộp trắng
Luồng điều khiển
Kỹ thuật dựa trên kinh nghiệm
Chọn kỹ thuật kiểm thử
Trang 19Cá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 mỗi lần đặt hàng: ít nhất là 5
Trang 20Các kỹ thuật kiểm tra động
Cho bảng quyết định sau
Test case và kết quả mong đợi sau đây là hợp lệ:
23 tuổi với Insurance Class là A thì Premium là 90 và Excess là
Trang 21Các kỹ thuật kiểm tra động
Cho đoạn code sau:
Xác định số lượng Test case ít nhất để có thể đạt độ phủ
100% cho câu lệnh và 100% cho nhánh
Độ phủ câu lệnh = 1, Độ phủ cho nhánh = 3
Độ phủ câu lệnh = 2, Độ phủ cho nhánh = 3
Độ phủ câu lệnh = 2, Độ phủ cho nhánh = 2
Độ phủ câu lệnh = 3, Độ phủ cho nhánh = 3
Trang 22Các kỹ thuật kiểm tra động
Cho lược đồ luồng sau
Hiện đang có 1 Test case đi qua
Test case đi qua A, B, D, E và G
Test case đi qua A, C, D, E, F, E
và G; Và Test case đi qua A, B,
D, E và G
Test case đi qua A, C, D và G
Trang 23Tổng quan về chuẩn chất lượng CMMI
Giới thiệu về mô hình CMMI
Nguyên nhân ra đời
Những thành phần trong mô hình CMMI
Những kiểu mô hình CMMI
Trang 24Tổng quan về chuẩn chất lượng CMMI
Chọn phát biểu sai về CMMI:
CMMI ra đời vì có quá nhiều mô hình,
nhiều chuẩn không thống nhất
CMMI giúp chúng ta tối ưu những đoạn
code dư thừa
CMMI giúp đào tạo và đánh giá nhân viên
tốt hơn
Một số công ty ở VN đã đạt được CMMI
mức 5
Trang 25Tổng quan về chuẩn chất lượng CMMI
Tiêu chuẩn nào được viện kỹ nghệ Mỹ
(SEI) sử dụng để thẩm định CMMI cho
các công ty
CMM (Capability Maturity Model) và
SCAMPI (Standard CMMI Appraisal Method for Process Improvement)
CMMI-DEV (development)
SCAMPI (Standard CMMI Appraisal
Method for Process Improvement)
CMM (CapabilityMaturity Model)
Trang 26Chương 9:
Quy trình lên kế hoạch dự án
Planning Data
Establish
Estimates
Obtain Commitment
to the Plan
Develop a Project Plan
Project Plans
Project Monitoring and Control
SG3
Trang 27 Hãy sắp xếp theo thứ tự những bước khi
lên kế hoạch 1 dự án (Project Planning)
(resource): nhân sự, thiết bị…
Trang 28CHẤT LƯỢNG