Chất lượng là gì?
Khái niệm về 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ụ chính của QC
Những nhiệm vụ chính của QA
Những kỹ năng của QC
Những kỹ năng của QA
Những chứng nhận quốc tế của QA & QC
28 trang |
Chia sẻ: thuychi16 | Lượt xem: 941 | Lượt tải: 2
Bạn đang xem trước 20 trang tài liệu Đảm bảo và kiểm soát chất lượng - Ôn tập, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ĐẢM BẢO VÀ KIỂM SOÁT
CHẤT LƯỢNG
HCM – 10/2012
Ôn Tập
1 5/14/2014
Chương 1:
Tổng quát về Đảm Bảo và Kiểm Soát chất lượng
phần mềm
Chất lượng là gì?
Khái niệm về 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ụ chính của QC
Những nhiệm vụ chính của QA
Những kỹ năng của QC
Những kỹ năng của QA
Những chứng nhận quốc tế của QA & QC
5/14/2014 Trang 2
Chương 1:
Tổ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
mềm?
Khả năng thay đổi được (Changeability)
Tính hấp dẫn (Attractiveness)
Khả năng chịu lỗi (Fault tolerant)
Tính thừa kế (Inheritance)
5/14/2014 Trang 3
Chương 1:
Tổ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
5/14/2014 Trang 4
Chương 2:
Cá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
5/14/2014 Trang 5
Chương 2:
Các yếu tố cơ bản trong kiểm soát chất lượng
phần mềm
Những nguyên lý tổng quát trong
testing
Phơi bày biểu hiện của khiếm khuyết
Không thể vét cạn hết các trường hợp
Testing sớm
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)
5/14/2014 Trang 6
Chương 2:
Các yếu tố cơ bản trong kiểm soát chất lượng
phần mềm
Quy trình Testing cơ bản
Lập kế hoạch & Kiểm soát Test
Phân tích thiết kế Test-Case
Thực hiện Test
Đánh giá - Lập báo cáo
Kết thúc Testing
Triết lý của việc Testing
Ai sẽ thực hiện testing chương trình
Kỹ năng giao tiếp
Những định nghĩa cơ bản
Defect Density (mật độ lỗi)
Coverage (độ bao phủ)
5/14/2014 Trang 7
Chương 2:
Cá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
(Bug)?
Tính không cẩn thận
Quá tập trung vào chi tiết
Áp lực về thời gian
Sử dụng code của người khác
5/14/2014 Trang 8
Chương 2:
Cá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
thử
Giúp xác định những trường hợp không
cần kiểm thử
Giúp xác định những yêu cầu đặc biệt của
khách hàng
5/14/2014 Trang 9
Chương 3:
Cá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
Thiết kế phần mềm
Lập trình
Kiểm nghiệm phần mềm
Triển khai và 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 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)
5/14/2014 Trang 11
Chương 3:
Cá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)
5/14/2014 Trang 12
Chương 3:
Cá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)
5/14/2014 Trang 13
Chương 3:
Cá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ể
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à 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 )
5/14/2014 Trang 15
Chương 4:
Cá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
5/14/2014 Trang 16
Chương 4:
Cá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
5/14/2014 Trang 17
Chương 5:
Cá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ử
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 mỗi lần đặt hàng: ít nhất là 5
sản phẩm và nếu số lượng sản phẩm
bằng hay nhiều hơn 100 thì sẽ giảm giá
20%. Nếu áp dụng phương pháp phân
tích giá trị biên thì bạn sẽ 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 quyết định sau
5/14/2014 Trang 20
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à
2500
51 tuổi với Insurance Class là C thì Premium là 70 và Excess là
500
31 tuổi với Insurance Class là B thì Premium là 90 và Excess là
2500
43 tuổi với Insurance Class là C thì Premium là 70 và Excess là
1000
Chương 5:
Các kỹ thuật kiểm tra động
Cho đoạn code sau:
Read A
Read B
IF A < 0 THEN
Print “A negative”
ELSE
Print “A positive”
ENDIF
IF B < 0 THEN
Print “B negative”
ELSE
Print “B positive”
ENDIF
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
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 đang có 1 Test case đi qua
A, B, D và G. Cần phải thêm
những Test case nào sau đây để
đảm bảo đạt 100% độ phủ câu
lệnh và độ phủ nhánh
Test case đi qua A, C, D, E, F, E
và G
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
5/14/2014 Trang 22
Chương 6:
Tổ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 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 chính trong CMMI
CMMI là gì?
Những thành phần trong mô hình CMMI
Những kiểu mô hình CMMI
Những dạng thể hiện CMMI
Những cấp độ trong CMMI
SCAMPI: A, B and C
Tất cả mọi người đều có thế sử dụng CMMI?
5/14/2014 Trang 23
Chương 6:
Tổ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
5/14/2014 Trang 24
Chương 6:
Tổ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)
5/14/2014 Trang 25
Chương 9:
Quy trình lên kế hoạch dự án
5/14/2014 Trang 26
Planning
Data
Establish
Estimates
Obtain
Commitment
to the Plan
Develop a
Project Plan
Project
Plans
Project
Monitoring and
Control
SG1 SG2
SG3
Chương 7-10
Hãy sắp xếp theo thứ tự những bước khi
lên kế hoạch 1 dự án (Project Planning)
I. Xác định những 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 những chức năng chính trong 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
28 5/14/2014