Bài giảng Đảm bảo và kiểm soát chất lượng phần mềm: Chương 2 - Nguyễn Mạnh Tuấn

64 9 0
Bài giảng Đảm bảo và kiểm soát chất lượng phần mềm: Chương 2 - Nguyễn Mạnh Tuấn

Đ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

Chương 2 trình bày các yếu tố cơ bản trong kiểm soát chất lượng phần mềm. Nội dung chính được trình bày trong chương này gồm có: Quy trình phát triển phần mềm, tại sao phải kiểm thử (testing) phần mềm? Testing là gì? Những nguyên lý tổng quát trong kiểm thử, quy trình kiểm thử cơ bản, các kiểu kiểm thử.

ĐẢM BẢO VÀ KIỂM SOÁT CHẤT LƯỢNG Chương 2: Các yếu tố kiểm soát chất lượng phần mềm HCM – 10/2012 1/5/2016 Nội dung Quy trình phát triển phần mềm Tại phải kiểm thử (testing) phần mềm? Testing gì? Những nguyên lý tổng quát kiểm thử Quy trình kiểm thử Các kiểu kiểm thử 1/5/2016 Trang Quy trình phát triển phần mềm Làm tới ROME du lịch chuyến nhỉ? 1/5/2016 Trang Quy trình phát triển phần mềm 1/5/2016 Trang Quy trình phát triển phần mềm 1/5/2016 Trang Quy trình phát triển phần mềm Yêu cầu phần mềm Phân tích Phân tích Thiết kế Lập trình Thiết kế Thiết kế Lập trình Lập trình Lập trình Kiểm thử Phần mềm 1/5/2016 Trang Quy trình phát triển phần mềm Qui trình phần mềm gì?  Chuỗi hoạt động  Theo thứ tự định  Sản xuất phần mềm Qui trình cơng nghệ phần mềm tổ hợp bước, giai đoạn phải trải qua thực việc sản xuất phần mềm 1/5/2016 Trang Nội dung Quy trình phát triển phần mềm Tại phải kiểm thử (testing) phần mềm? Testing gì? Những nguyên lý tổng quát testing Quy trình Testing Các kiểu kiểm thử 1/5/2016 Trang Tại phải kiểm thử (testing) phần mềm? Xét phần mềm thực tế  Chuyển đổi tiền tệ  Hệ thống ATM  Hệ thống điều khiển máy bay, tàu điện, tên lửa… Hoạt động không – gây nhiều vấn đề:  Tiền bạc  Thời gian  Tổn hại tính mạng người 1/5/2016 Trang Những hậu lỗi phần mềm gây Vụ sụp đổ Ariane 5, 1996  Bị tan tành sau 40 giây cất cánh, bị thiệt hại khoảng ½ tỉ USD  Nguyên nhân: bị lỗi xử dụng số thực Do chuyển đổi từ 64bit integer sang 16 bit integer có dấu => bị tràn số Phóng tên lửa vào Sao Hỏa, 1999  Bị biến bắt đầu, bị thiệt hại khoảng 125 triệu USD  Nguyên nhân: dùng sai đơn vị chương trình 1/5/2016 Trang 10 Hoạt động kết thúc Testing Cơng việc  Kiểm tra công việc phân theo kế hoạch tất khiếm khuyết giải  Hoàn tất cất giữ Testware (các scripts, môi trường Testing, hạ tầng) để sử dụng sau  Bàn giao testware đến tổ chức bảo trì  Phân tích học học 1/5/2016 Trang 50 Nội dung Tại phải kiểm thử (testing) phần mềm? Testing gì? Những nguyên lý tổng quát testing Quy trình Testing Các kiểu kiểm thử 1/5/2016 Trang 51 Các kiểu kiểm thử Testing Type  Kiểm thử Chức - Function Test  Kiểm thử Phi chức - Non-Functional Test  Kiểm thử Hồi quy - Regression Test  Kiểm thử cài đặt  Kiểm thử khả tương thích  Kiểm thử phá hủy  Kiểm thử hiệu suất phần mềm  Kiểm thử tính khả dụng  Kiểm thử bảo mật  Tính tồn cầu địa hóa 1/5/2016 Trang 52 Kiểm thử chức Function Test  Chức mà chương trình đáp ứng mơ tả rõ ràng tài liệu:  Trường hợp sử dụng (Use case)  Yêu cầu chức  Có thể thực tất cấp độ Test  Không quan tâm đến khía cạnh khác giao diện đẹp, xấu, dễ sử dụng hay không, thời gian xử lý nhanh hay chậm,  Test chức hoàn thành từ hướng:  Dựa u cầu (Requirement) • Bản mơ tả tóm lược chức cần Test hay không cần Test  Dựa quy trình nghiệp vụ • Dựa nghiệp vụ ngày • Hay trường hợp sử dụng thực tế 1/5/2016 Trang 53 Kiểm tra Phi chức Non-Functional Test Test chức làm hệ thống tốt hơn, khơng có chức hệ thống hoạt động khó chấp nhận người sử dụng Có thể thực tất cấp độ Test ISO/IEC 9126, 2001 định nghĩa nhiều tiêu chí chất lượng Phi chức 1/5/2016 Trang 54 ISO/IEC 9126, 2001  Tính hiệu (Efficiency)  Tính (Functionality)  Tính phù hợp (Suitability)  Thời gian xử lý (Time behavior)  Tính xác (Accuracy)  Sử dụng tài nguyên (Utilization)  Khả tương tác  Khả bảo trì (Interoperability) (Maintainability)  Tính bảo mật/an tồn (Security)  Khả phân tích (Analysability)  Tính tin cậy (Reability)  Khả thay đổi  Tính hồn thiện (Maturity) (Changeability)  Khả chịu lỗi (Fault tolerant)  Tính ổn định (Stability)  Khả phục hồi (Recoverability)  Khả kiểm thử (Testability)  Tính khả dụng (Usability)  Dễ hiểu (Understandability)  Tính khả chuyển (Portability)  Dễ học (Learnability)  Khả thích nghi (Adaptability)  Khả vận hành (Operability)  Khả cài đặt (Installability)  Tính hấp dẫn (Attractiveness)  Khả chung sống (Co-existence)  Khả thay (Replaceability) 1/5/2016 Trang 55 Kiểm thử hồi quy Regression Test Mỗi lần module thêm vào phần mềm thay đổi:  Các đường dẫn luồng liệu  Các thay đổi gây nên vấn đề với chức làm việc hoàn hảo trước Kiểm thử hồi qui việc thực lại số tập kiểm thử thực trước để đảm bảo thay đổi không sinh hiệu ứng không mong muốn 1/5/2016 Trang 56 Kiểm thử hồi quy Regression Test  Kiểm thử hồi quy thực thủ cơng, cách thực lại tập tất trường hợp kiểm thử thực tự động  Bộ kiểm thử hồi quy (tập kiểm thử thực thi) gồm ba lớp trường hợp kiểm thử khác nhau:  Một mẫu đại diện kiểm thử thực tất chức phần mềm  Các trường hợp kiểm thử bổ sung tập trung vào chức phần mềm có khả bị tác động có thay đổi  Các kiểm thử tập trung vào thành phần 1/5/2016 Trang 57 Kiểm thử hồi quy Regression Test  Ví dụ:  Một phần mềm phát triển kiểm tra chạy tốt chức A, B C  Thay đổi code chức C: • Nếu kiểm tra chức C chưa đủ, cần phải kiểm tra lại tất chức khác liên quan đến chức C (A, B) • Lý C thay đổi, làm A B khơng cịn làm việc  Hệ kiểm thử hồi quy:  Thường tốn nhiều thời gian công sức  Không phép bỏ qua dẫn đến tình trạng phát sinh tái xuất lỗi nghiêm trọng, ta “tưởng rằng” lỗi khơng có kiểm tra sửa chữa 1/5/2016 Trang 58 Các kiểu kiểm thử khác Kiểm thử cài đặt  Đảm bảo hệ thống cài đặt theo file hướng dẫn thiết bị thực tế Kiểm thử khả tương thích  Với hệ điều hành  Hoặc với phần mềm ứng dụng khác (có thể phiên cũ hay hệ điều hành)  Hoặc môi trường thiết bị phần cứng khác destop, laptop, tablet hay smart phone… 1/5/2016 Trang 59 Các kiểu kiểm thử khác Kiểm thử phá hủy  Cố gắng làm hỏng phần mềm hệ thống  Nó xác minh phần mềm có chức nhận đầu vào khơng hợp lệ khơng mong muốn Kiểm thử hiệu suất phần mềm Kiểm thử tính khả dụng Kiểm thử bảo mật Tính tồn cầu địa hóa 1/5/2016 Trang 60 ĐẢM BẢO VÀ KIỂM SOÁT CHẤT LƯỢNG 1/5/2016 61 Bài tập  1) Hãy nêu cách thức để test phần lớn trường hợp hình bên với chi phí thấp hiệu chấp nhận 1/5/2016 Trang 62 Bài tập  2) Viết kế hoạch Test theo mẫu cho dự án cụ thể  3) Viết test case sau cho hình login theo mẫu test case slide 36:  Login thành công  Login thất bại: • User không tồn • Pass sai • … 1/5/2016 Trang 63 Chương Những mơ hình phát triển phần mềm Testing mơ hình vịng đời phần mềm Kiểm chứng chứng thực (V & V) Các mức kiểm tra Các kiểu kiểm tra 1/5/2016 Trang 64 ... Góp phần chứng minh chất lượng phần mềm  Tăng tin tưởng mức chất lượng thông tin cung cấp 1/5 /20 16 Trang 17 Phần mềm đáp ứng yêu cầu user 1/5 /20 16 Trang 18 Phần mềm đáp ứng yêu cầu user 1/5 /20 16... phải kiểm thử (testing) phần mềm? Testing gì? Những nguyên lý tổng quát kiểm thử Quy trình Kiểm thử Triết lý việc kiểm thử Những định nghĩa Các kiểu kiểm thử 1/5 /20 16 Trang 15 Testing phần. .. phát triển phần mềm Tại phải kiểm thử (testing) phần mềm? Testing gì? Những nguyên lý tổng quát kiểm thử Quy trình kiểm thử Các kiểu kiểm thử 1/5 /20 16 Trang Quy trình phát triển phần mềm Làm

Ngày đăng: 08/05/2021, 13:12

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan