Giáo án điện tử Khoa học máy tính 11 kết nối Bài 23: Kiểm thử và đánh giá chương trình

Bài giảng điện tử Tin học 11 - Định hướng Khoa học máy tính kết nối tri thức. Giáo án powerpoint Bài 23: Kiểm thử và đánh giá chương trình. Giáo án thiết kế theo phong cách hiện đại, nội dung đầy đủ, đẹp mắt, tạo hứng thú học tập cho học sinh. Thầy, cô giáo có thể tham khảo.

Xem: => Giáo án tin học 11 theo định hướng khoa học máy tính kết nối tri thức

Click vào ảnh dưới đây để xem 1 phần giáo án rõ nét

Giáo án điện tử Khoa học máy tính 11 kết nối Bài 23: Kiểm thử và đánh giá chương trình
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 23: Kiểm thử và đánh giá chương trình
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 23: Kiểm thử và đánh giá chương trình
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 23: Kiểm thử và đánh giá chương trình
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 23: Kiểm thử và đánh giá chương trình
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 23: Kiểm thử và đánh giá chương trình
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 23: Kiểm thử và đánh giá chương trình
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 23: Kiểm thử và đánh giá chương trình
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 23: Kiểm thử và đánh giá chương trình
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 23: Kiểm thử và đánh giá chương trình
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 23: Kiểm thử và đánh giá chương trình
Giáo án điện tử Khoa học máy tính 11 kết nối Bài 23: Kiểm thử và đánh giá chương trình

Các tài liệu bổ trợ khác

Xem toàn bộ: Giáo án điện tử khoa học máy tính 11 kết nối tri thức

CHÀO MỪNG CẢ LỚP ĐẾN VỚI BÀI HỌC HÔM NAY!

KHỞI ĐỘNG

Làm thế nào để biết trong các thuật toán giải cùng một bài toán thì thuật toán nào là tốt nhất?

Có những tiêu chí nào để đánh giá tính "tối ưu" của một thuật toán?

BÀI 23: KIỂM THỬ VÀ ĐÁNH GIÁ CHƯƠNG TRÌNH

NỘI DUNG BÀI HỌC

Vai trò của kiểm thử chương trình

Kiểm tra tính đúng của chương trình

Đánh giá hiệu quả chương trình

01 VAI TRÒ CỦA KIỂM THỬ CHƯƠNG TRÌNH

Hoạt động 1:

Ở lớp 10, em đã học một số phương pháp kiểm thử chương trình. Hãy thảo luận với các bạn về các phương pháp kiểm thử sau, nêu ý nghĩa của chúng trong việc đánh giá độ tin cậy và chứng minh tính đúng của chương trình:

  1. Tạo các bộ dữ liệu kiểm thử (test) để kiểm tra dữ liệu đầu ra có chính xác hay không.
  2. Thiết lập điểm dừng hoặc cho chương trình chạy theo từng lệnh để kiểm tra và tìm ra lỗi (bug) của chương trình.
  3. Thực hiện in dữ liệu trung gian trong quá trình kiểm thử để tìm ra lỗi của chương trình (nếu có).

Nêu ý nghĩa của kiểm thử chương trình?

Kiểm thử sẽ giúp tăng độ tin cậy của chương trình nhưng chưa chứng minh được tính đúng của thuật toán và chương trình.

Lưu ý

Một thuật toán đúng chỉ có thể được chứng minh là đúng bằng các công cụ toán học (và khoa học máy tính), còn kiểm thử bằng các bộ test sẽ không được coi là phương pháp chứng minh tính đúng của thuật toán, mà chỉ là biện pháp làm tăng độ tin cậy của chương trình.

Câu hỏi củng cố kiến thức (SGK - tr.107)

Câu 1: Giả sử em thiết lập chương trình giải bài toán nào đó. Em đã kiểm thử với 10 bộ dữ liệu và tất cả các kết quả đều đúng. Khi đó có thể kết luận chương trình đó đúng hay chưa?

Chưa thể kết luận

Câu 2: Giả sử một chương trình kiểm thử với 10 bộ dữ liệu cho kết quả 9 lần, 1 lần sai. Chương trình đó là sai hay đúng?

Có thể kết luận ngay chương trình đó là sai.

02 KIỂM TRA TÍNH ĐÚNG CỦA CHƯƠNG TRÌNH

Hoạt động 2:

Quan sát chương trình mô tả thuật toán sắp xếp chèn. Hãy thảo luận và đưa ra các lập luận để kiểm tra tính đúng của thuật toán sắp xếp chèn.

1  def InsertionSort(A,n):

2    for i in range(1,n):

3       value = A[i]

4       k = i – 1

5       #di chuyển các phần tử A[k] > value qua phải

6       while k >= 0 and A[k] > value

7         A[k+1] = A[k]

8         k = k – 1

9       A[k+1] = value

Chia lớp thành 6 nhóm, thực hiện các nhiệm vụ sau:

  • Nhóm 1, 4: Tìm hiểu và thực hiện Trao đổi 1. Thực hiện kiểm thử chương trình thông qua các bộ test, ghi kết quả xem đúng hay sai, yêu cầu kiểm thử càng nhiều càng tốt.
  • Nhóm 2, 5: Tìm hiểu và thực hiện Trao đổi 2. Chứng minh thuật toán trên là đúng.
  • Nhóm 3, 6: Tìm hiểu và thực hiện Trao đổi 3. Chứng minh tính đúng của thuật toán bằng lí luận toán học.

GHI NHỚ

Tính đúng của thuật toán cần được chứng minh bằng lập luận toán học. Sử dụng các bộ dữ liệu kiểm thử có thể làm tăng độ tin cậy của chương trình nhưng chưa chứng minh được tính đúng của thuật toán.

Câu hỏi củng cố kiến thức (SGK - tr.108)

Câu 1: Chương trình sau giải bài toán: Yêu cầu nhập số tự nhiên n và tính tổng 1 + 2 +…+ n.

1  n = int(input("Nhập số tự nhiên n: "))

2  S = 0

3  for i in range(n+1):

4      S = S + i

5  print(S)

Chương trình trên có đúng không?

Chương trình đúng

Câu 2: Chương trình sau giải bài toán đếm số các ước số thực sự của số tự nhiên n.

1  def dem(n):

2      count = 0

3      k = 2

4      while k < n:

5          if n%k ==0:

6              count = count + 1

7          k = k + 1

8      return count

Chương trình trên đúng hay sai?

Chương trình sai vì chưa tính số 1

03 ĐÁNH GIÁ HIỆU QUẢ CHƯƠNG TRÌNH

Hoạt động 3:

Thảo luận về các tiêu chí đánh giá tính hiệu quả của thuật toán hay chương trình giải một bài toán:

  1. Tiêu chí quan trọng nhất là thời gian chạy chương trình phải nhanh, không cần quan tâm đến không gian bộ nhớ sử dụng của chương trình.
  2. Tiêu chí tiết kiệm bộ nhớ là quan trọng nhất, sau đó mới đến thời gian chạy chương trình.
  3. Các tiêu chí 1 và 2 không quan trọng mà quan trọng là chương trình được viết một cách đơn giản, rõ ràng, dễ hiểu và áp dụng.

Hiệu quả hay tính tối ưu của chương trình được xem xét trên cơ sở nào?

Tính hiệu quả của chương trình/ thuật toán được xem xét trên cơ sở đánh giá độ phức tạp tính toán.

Hai loại độ phức tạp tính toán phổ biến nhất đó là:

Độ phức tạp thời gian: được xác định là thời gian thực hiện chương trình/thuật toán.

Độ phức tạp không gian: được xác định là tài nguyên của máy tính trong đó có phần bộ nhớ được sử dụng để thực hiện chương trình.

Ngoài ra để đánh giá hiệu quả chương trình, đôi khi còn cần quan tâm tới các tiêu chí như tính dễ hiểu, rõ ràng, ngắn gọn, dễ bảo trì, dễ cài đặt,…của chương trình.

Chú ý

Thời gian chạy và không gian tính toán của thuật toán được kí hiệu là T(n) và S(n), trong đó n là kích thước đầu vào của bài toán. Nếu đầu vào là 1 dãy thì n là độ dài dãy đã cho.

GHI NHỚ

 

Trên chỉ là 1 phần của giáo án. Giáo án khi tải về có đầy đủ nội dung của bài. Đủ nội dung của học kì I + học kì II

MỘT VÀI THÔNG TIN:

  • Word được soạn: Chi tiết, rõ ràng, mạch lạc
  • Powerpoint soạn: Hiện đại, đẹp mắt để tạo hứng thú học tập
  • Word và powepoint đồng bộ với nhau

Phí giáo án:

  • Giáo án word: 300k/học kì - 400k/cả năm
  • Giáo án Powerpoint: 400k/học kì - 450k/cả năm
  • Trọn bộ word + PPT: 500k/học kì - 600k/cả năm

=> Khi đặt: nhận đủ giáo án cả năm ngay và luôn

CÁCH TẢI:

  • Bước 1: Chuyển phí vào STK: 10711017 - Chu Văn Trí- Ngân hàng ACB (QR)
  • Bước 2: Nhắn tin tới Zalo Fidutech - nhấn vào đây để thông báo và nhận giáo án

Xem toàn bộ: Giáo án điện tử khoa học máy tính 11 kết nối tri thức

ĐẦY ĐỦ GIÁO ÁN CÁC BỘ SÁCH KHÁC

GIÁO ÁN WORD LỚP 11 KẾT NỐI TRI THỨC

 

GIÁO ÁN POWERPOINT LỚP 11 KẾT NỐI TRI THỨC

GIÁO ÁN CHUYÊN ĐỀ LỚP 11 KẾT NỐI TRI THỨC

GIÁO ÁN DẠY THÊM 11 KẾT NỐI TRI THỨC

CÁCH ĐẶT MUA:

Liên hệ Zalo: Fidutech - nhấn vào đây

Tài liệu giảng dạy

Xem thêm các bài khác

GIÁO ÁN POWERPOINT CHỦ ĐỀ 1. MÁY TÍNH VÀ XÃ HỘI TRI THỨC

GIÁO ÁN POWERPOINT CHỦ ĐỀ 2. TỔ CHỨC LƯU TRỮ, TÌM KIẾM VÀ TRAO ĐỔI THÔNG TIN

GIÁO ÁN POWERPOINT CHỦ ĐỀ 3. ĐẠO ĐỨC, PHÁP LUẬT VÀ VĂN HÓA TRONG MÔI TRƯỜNG SỐ

GIÁO ÁN POWERPOINT CHỦ ĐỀ 4. GIỚI THIỆU CÁC HỆ CƠ SỞ DỮ LIỆU

GIÁO ÁN POWERPOINT CHỦ ĐỀ 5. HƯỚNG NGHIỆP VỚI TIN HỌC

Giáo án điện tử Khoa học máy tính 11 kết nối Bài 16: Công việc quản trị cơ sở dữ liệu

GIÁO ÁN POWERPOINT CHỦ ĐỀ 6. KĨ THUẬT LẬP TRÌNH

 
Chat hỗ trợ
Chat ngay