intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

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

Chia sẻ: 653543 653543 | Ngày: | Loại File: PDF | Số trang:64

96
lượt xem
12
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

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ử.

Chủ đề:
Lưu

Nội dung Text: 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

  1. ĐẢM BẢO VÀ KIỂM SOÁT CHẤT LƯỢNG Chương 2: Các yếu tố cơ bản trong kiểm soát chất lượng phần mềm HCM – 10/2012 1/5/2016 1
  2. Nội dung 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ử 1/5/2016 Trang 2
  3. Quy trình phát triển phần mềm Làm sao đi được tới ROME du lịch một chuyến nhỉ? 1/5/2016 Trang 3
  4. Quy trình phát triển phần mềm 1/5/2016 Trang 4
  5. Quy trình phát triển phần mềm 1/5/2016 Trang 5
  6. Quy trình phát triển phần mềm 1 Yêu cầu phần mềm 4 2 3 Phân tích Phân tích Thiết kế Thiết kế Lập trình 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 6
  7. Quy trình phát triển phần mềm Qui trình phần mềm là gì?  Chuỗi hoạt động  Theo thứ tự nhất định  Sản xuất phần mềm Qui trình công nghệ phần mềm là tổ hợp các bước, các giai đoạn phải trải qua khi thực hiện việc sản xuất phần mềm. 1/5/2016 Trang 7
  8. Nội dung 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 testing Quy trình Testing cơ bản Các kiểu kiểm thử 1/5/2016 Trang 8
  9. Tại sao phải kiểm thử (testing) phần mềm? Xét các 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 đúng – gây ra nhiều vấn đề:  Tiền bạc  Thời gian  Tổn hại tính mạng con người 1/5/2016 Trang 9
  10. Những hậu quả do lỗi phần mềm gây ra Vụ sụp đổ của 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 về 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 mất ngay khi bắt đầu, bị thiệt hại khoảng 125 triệu USD  Nguyên nhân: dùng sai đơn vị trong chương trình 1/5/2016 Trang 10
  11. Tại sao phải kiểm thử (testing) phần mềm?  “Lỗi phần mềm là chuyện hiển nhiên của cuộc sống. Chúng ta dù cố gắng đến mức nào thì thực tế là ngay cả những lập trình viên xuất sắc nhất cũng không có thể lúc nào cũng viết được những đoạn mã không có lỗi. Tính trung bình, ngay cả một lập trình viên loại tốt thì cũng có từ 1 đến 3 lỗi trên 100 dòng lệnh. Người ta ước lượng rằng việc Testing để tìm ra các lỗi này chiếm phân nửa khối lượng công việc phải làm để có được một phần mềm hoạt động được”. (Software Testing Techniques, Second Edition, by Boris Beizer, Van Nostrand Reinhold, 1990, ISBN 1850328803). 1/5/2016 Trang 11
  12. Nguyên nhân các khiếm khuyết Con người tạo ra lỗi ... … Hệ quả là xuất hiện khiếm khuyết ... … hệ thống thực hiện công việc sai xót 1/5/2016 Trang 12
  13. Nguyên nhân các khiếm khuyết Con người tạo ra lỗi (error – mistake) Hệ quả là xuất hiện khiếm khuyết(sai lầm/ sai sót - fault, rối - bug)  Dòng mã, hệ thống, phần mềm, tài liệu • Dư thừa • Thiếu xót Khi mã thực thi, hệ thống thực hiện công việc sai xót -> thực hiện không mong đợi (failure – hỏng hóc) Hệ quả không mong đợi (Incident) 1/5/2016 Trang 13
  14. Nguyên nhân các khiếm khuyết Khiếm khuyết có thể xảy ra bởi  Áp lực về thời gian  Mã phức tạp  Hạ tầng phức tạp  Thay đổi công nghệ  Tương tác nhiều hệ thống  Tác động từ bên ngoài … 1/5/2016 Trang 14
  15. Nội dung 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 Triết lý của việc kiểm thử Những định nghĩa cơ bản Các kiểu kiểm thử 1/5/2016 Trang 15
  16. Testing phần mềm là gì? Testing phần mềm là qui trình chứng minh phần mềm không có lỗi. Mục đích của Testing phần mềm là chỉ ra rằng phần mềm thực hiện đúng các chức năng mong muốn. Testing phần mềm là qui trình thi hành phần mềm với ý định tìm kiếm các lỗi của nó. Testing phần mềm được xem là qui trình cố gắng tìm kiếm các lỗi của phần mềm theo tinh thần "hủy diệt". 1/5/2016 Trang 16
  17. Testing phần mềm là gì?  Mục tiêu  Tìm khiếm khuyết  Ngăn ngừa khiếm khuyết  Chứng minh được phần mềm hoạt động đúng như đã thiết kế  Chứng minh được phần mềm đáp ứng yêu cầu của user  Góp phần chứng minh chất lượng của phần mềm  Tăng tin tưởng mức chất lượng và thông tin cung cấp 1/5/2016 Trang 17
  18. Phần mềm đáp ứng yêu cầu của user 1/5/2016 Trang 18
  19. Phần mềm đáp ứng yêu cầu của user 1/5/2016 Trang 19
  20. Khác biệt giữa Gỡ rối(Debug) và Testing Testing:  Cho thấy các trường hợp không mong đợi do khiếm khuyết phần mềm  Testers Gỡ rối (Debug):  Hoạt động phát triển  Xác định nguyên nhân và sửa chữa mã lỗi  Testing lại khiếm khuyết có được sửa đúng  Developers 1/5/2016 Trang 20
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2