Tài liệu tham khảo công nghệ thông tin Phần mềm hỗ trợ giải toán bất đẳng thức
Trang 1GVHD : thầy Nguyễn Tiến Huy
SVTH : Lê Thu Thuỷ 9912700
Nguyễn Bạch Thuỷ Tiên 9912706
Tp Hồ Chí Minh 7-2003
Trang 2Chúng em xin gửi lời cảm ơn thầy Nguyễn Tiến Huy, người đã tận tình hướng
dẫn cho chúng em trong quá trình tìm hiểu và thực hiện đề tài “Xây dựng phần
mềm hỗ trợ giải toán bất đẳng thức “
Một lần nữa, chúng em xin gửi lời cảm ơn đến tất cả những người đã tạo điều kiện tốt nhất để chúng em có thể hoàn thành đề tài
TP Hồ Chí Minh,
Trang 3KHOA CNTT –
ĐH KHTN
3
MỤC LỤC
PHẦN I : MỞ ĐẦU 10
I GIỚI THIỆU 10
II MỤC TIÊU CỦA LUẬN VĂN 11
PHẦN II : HIỆN TRẠNG VÀ YÊU CẦU 12
I KHẢO SÁT HIỆN TRẠNG 12
1 Hiện trạng tổ chức 12
2 Hiện trạng tin học 14
2.1 Phần mềm MathBook 14
2.2 Phần mềm Matlab 14
2.3 Phần mềm Mathematica 14
II XÁC ĐỊNH YÊU CẦU 15
1 Bảng trách nhiệm cho các yêu cầu 17
2 Danh sách các biểu mẫu 19
3 Phạm vi của đề tài 21
III PHƯƠNG ÁN THỰC HIỆN PHẦN MỀM 24
PHẦN III : MÔ HÌNH HÓA 25
I SƠ ĐỒ SỬ DỤNG 26
1 Sơ đồ sử dụng tổng thể 26
2 Sơ đồ sử dụng cho từng yêu cầu cụ thể 27
2.1 Sơ đồ sử dụng cho yêu cầu giải bài tập 28
2.2 Sơ đồ sử dụng cho yêu cầu xem lại bài giải 29
2.3 Sơ đồ sử dụng cho yêu cầu xem đáp án 29
2.4 Sơ đồ sử dụng cho yêu cầu xem tóm tắt lý thuyết 30
2.5 Sơ đồ sử dụng cho yêu cầu chấm điểm bài giải 30
2.6 Sơ đồ sử dụng cho yêu cầu soạn tóm tắt lý thuyết 31
2.7 Sơ đồ sử dụng cho yêu cầu soạn đề bài tập 31
2.8 Sơ đồ sử dụng cho yêu cầu phát sinh đề bài tập 32
2.9 Sơ đồ sử dụng cho yêu cầu soạn đáp án 32
2.10 Sơ đồ sử dụng cho yêu cầu soạn quy định chấm điểm 33
II SƠ ĐỒ LỚP 33
1 Danh sách các lớp đối tượng 33
2 Sơ đồ lớp đối tượng 35
3 Cấu trúc của biểu thức 36
4 Cấu trúc của bước giải 37
III M Ô Tả CHI TIếT CÁC LớP ĐốI TƯợNG CHÍNH 38
PHẦN IV : THIẾT KẾ PHẦN MỀM 41
I THIẾT KẾ TỔNG THỂ 41
1 Thành phần xử lý 41
2 Tổ chức dữ liệu 47
II THIẾT KẾ CHI TIẾT 51
1 Diễn giải chi tiết theo từng màn hình 51
1.1 MH_HeHocSinh 51
1.2 MH_GiaiBT 55
1.3 MH_XemBaiGiai 60
1.4 MH_XemDapAn 62
Trang 4KHOA CNTT –
ĐH KHTN
4
1.5 MH_XemLyThuyet 63
1.6 MH_HeGiaoVien 65
1.7 MH_SoanLyThuyet 68
1.8 MH_SoanBaiTap 70
1.9 MH_SoanDapAn 72
1.10 MH_SoanQDCD 75
1.11 MH_ThemSachBT 77
2 Hệ thống hàm của các lớp đối tượng 78
2.1 Các lớp dùng chung 78
2.2 Phân hệ học sinh 87
2.3 Phân hệ giáo viên 94
3 Sơ đồ hoạt động chi tiết và thuật giải một số xử lí 106
3.1 Kiểm tra bước giải đúng 107
3.2 Xử lý biến cố nhấn Enter khi giải bài tập 116
3.3 Kiểm tra bước giải mới của bài giải 117
3.4 Xử lý biến cố chọn chức năng giải bài tập 118
3.5 Xử lý biến cố đổi chế độ giải 119
3.6 Lưu bài giải 120
3.7 Lưu lý thuyết 121
3.8 Lưu bài tập 122
3.9 Lưu đáp án 123
3.10 Chấm điểm 124
PHẦN V : THỰC HIỆN VÀ KIỂM TRA 126
I TÓM TẮT KẾT QUẢ THỰC HIỆN 126
II DỮ LIỆU THỬ NGHIỆM VÀ KIỂM TRA 127
PHẦN VI : TỔNG KẾT 132
PHẦN VII : PHỤ LỤC 134
I PHỤ LỤC 1: BẢNG MÔ TẢ CÁC KÍ HIỆU BIỂU DIỄN CÚ PHÁP 134
II PHỤ LỤC 2: BẢNG PHÂN LOẠI BƯỚC GIẢI 134
III PHỤ LỤC 3: BẢNG TỪ KHÓA CHO BƯỚC GIẢI 137
IV PHỤ LỤC 4: BẢNG DANH SÁCH ĐIỀU KIỆN ĐỂ CÁC BẤT ĐẲNG THỨC HIỂN NHIÊN ĐÚNG 138 V PHỤ LỤC 5: SƠ ĐỒ BIỂU DIỄN CÁC CÚ PHÁP 139
1 Các sơ đồ biểu điễn cú pháp bước giải 139
2 Các sơ đồ biểu diễn cú pháp biểu thức, bất đẳng thức 147
Trang 5KHOA CNTT –
ĐH KHTN
5
DANH MỤC HÌNH
HÌNH 1: SƠ ĐỒ GIAO TIẾP GIỮA HAI PHÂN HỆ 24
HÌNH 2: SƠ ĐỒ SỬ DỤNG PHẦN MỀM MƯC TỔNG THỂ 26
HÌNH 3: SƠ ĐỒ SỬ DỤNG YÊU CẦU GIẢI BÀI TẬP 28
HÌNH 4: SƠ ĐÒ SỬ DỤNG YÊU CẦU XEM BÀI GIẢI 29
HÌNH 5: SƠ ĐÒ SỬ DỤNG YÊU CẦU XEM ĐÁP ÁN 29
HÌNH 6: SƠ ĐÒ SỬ DỤNG YÊU CẦU XEM LÝ THUYẾT 30
HÌNH 7: SƠ ĐÒ SỬ DỤNG YÊU CẦU CHẤM ĐIỂM 30
HÌNH 8: SƠ ĐÒ SỬ DỤNG YÊU CẦU SOẠN LÝ THUYẾT 31
HÌNH 9: SƠ ĐÒ SỬ DỤNG YÊU CẦU SOẠN BÀI TẬP 31
HÌNH 10: SƠ ĐÒ SỬ DỤNG YÊU CẦU PHÁT SINH B ÀI TẬP 32
HÌNH 11: SƠ ĐÒ SỬ DỤNG YÊU CẦU SOẠN ĐÁP ÁN 32
HÌNH 12: SƠ ĐÒ SỬ DỤNG YÊU CẦU SOẠN QUY ĐỊNH CHẤM ĐIỂM 33
HÌNH 13: SƠ ĐỒ LỚP 35
HÌNH 14: SƠ ĐỒ BIỂU DIỄN CẤU TRÚC BIỂU THỨC 36
HÌNH 15: SƠ ĐỒ BIỂU DIỄN CẤU TRÚC BƯỚC GIẢI 37
HÌNH 16: MÔ HÌNH BA LỚP CỦA PHẦN MỀM 42
HÌNH 17: SƠ ĐỒ PHỐI HỢP TỔNG THỂ PHÂN HỆ HỌC SINH 45
HÌNH 18: SƠ ĐỒ PHỐI HỢP TỔNG THỂ PHÂN HỆ GIÁO VIÊN 46
HÌNH 19: SƠ ĐỒ LOGIC 47
HÌNH 20: MÀN HÌNH CHÍNH HỆ HỌC SINH 53
HÌNH 21: MÀN HÌNH GIẢI BÀI TẬP 57
HÌNH 22: MÀN HÌNH XEM BÀI GIẢI 61
HÌNH 23: MÀN HÌNH XEM ĐÁP ÁN 62
HÌNH 24: MÀN HÌNH XEM LÝ THUYẾT 64
HÌNH 25: MÀN HÌNH CHÍNH HỆ GIÁO VIÊN 67
HÌNH 26: MÀN HÌNH SOẠN LÝ THUYẾT 69
HÌNH 27: MÀN HÌNH SOẠN BÀI TẬP 71
HÌNH 28: MÀN HÌNH SOẠN ĐÁP ÁN 73
HÌNH 29: MÀN HÌNH SOẠN QUY ĐịNH CHẤM ĐIỂM 76
HÌNH 30: MÀN HÌNH THÊM SÁCH BÀI TẬP 77
HÌNH 31: SƠ ĐỒ BIỂU DIỄN THUẬT TOÁN KIỂM TRA BƯỚC GIẢI LOẠI 1 107
Trang 6KHOA CNTT –
ĐH KHTN
6
HÌNH 32: SƠ ĐỒ BIỂU DIỄN THUẬT TOÁN KIỂM TRA BƯỚC GIẢI LOẠI 4 109
HÌNH 33: SƠ ĐỒ BIỂU DIỄN THUẬT TOÁN KIỂM TRA BƯỚC GIẢI LOẠI 5 110
HÌNH 34: SƠ ĐỒ BIỂU DIỄN THUẬT TOÁN KIỂM TRA BƯỚC GIẢI LOẠI 6 111
HÌNH 35: SƠ ĐỒ BIỂU DIỄN THUẬT TOÁN KIỂM TRA BƯỚC GIẢI LOẠI 7 112
HÌNH 36: SƠ ĐỒ BIỂU DIỄN THUẬT TOÁN KIỂM TRA BƯỚC GIẢI LOẠI 8 113
HÌNH 37: SƠ ĐỒ BIỂU DIỄN THUẬT TOÁN KIỂM TRA BƯỚC GIẢI LOẠI 9 114
HÌNH 38: SƠ ĐỒ BIỂU DIỄN THUẬT TOÁN KIỂM TRA BƯỚC GIẢI LOẠI 12 115
HÌNH 39: SƠ ĐỒ BIỂU DIỄN THUẬT TOÁN XỬ LÝ BIẾNCỐ NHẤN ENTER KHI GIẢI BÀI TẬP .116
HÌNH 40: SƠ ĐỒ BIỂU DIỄN THUẬT TOÁN XỬ LÝ BIẾN CỐ CHỌN CHƯC NĂNG GIẢI BÀI TẬP 118
HÌNH 41: SƠ ĐỒ BIỂU DIỄN THUẬT TOÁN XỬ LÝ BIẾNCỐ ĐỔI CHẾ ĐỘ GIẢI 119
HÌNH 42: SƠ ĐỒ BIỂU DIỄN THUẬT TOÁN LƯU BÀI GIẢI 120
HÌNH 43: SƠ ĐỒ BIỂU DIỄN THUẬT TOÁN LƯU LÝ THUYẾT 121
HÌNH 44: SƠ ĐỒ BIỂU DIỄN THUẬT TOÁN LƯU BÀI TẬP SOẠN 122
HÌNH 45: SƠ ĐỒ BIỂU DIỄN THUẬT TOÁN LƯU ĐÁP ÁN 123
HÌNH 46: SƠ ĐỒ BIỂU DIỄN THUẬT TOÁN CHẤM ĐIỂM 124
Trang 7KHOA CNTT –
ĐH KHTN
7
DANH MỤC BẢNG
BảNG 1: BẢNG DANH SÁCH YÊU CẦU CỦA GIÁO VIÊN 16
BảNG 2: BẢNG DANH SÁCH YÊU CẦU CỦA HỌC SINH 17
BảNG 3: BẢNG TRÁCH NHIỆM CHO YÊU CẦU CỦA GIÁO VIÊN 17
BảNG 4: BẢNG TRÁCH NHIỆM CHO YÊU CẦU CỦA HỌC SINH 18
BảNG 5: BẢNG DANH SÁCH CÁC LỚP ĐỐI TƯỢNG CHÍNH 33
BảNG 6: BẢNG DANH SÁCH CÁC LỚP ĐỐI TƯỢNG CỦA CHƯƠNG TRÌNH 42
Trang 8bộ nhớ luồng dữ liệu (thông tin) lớp đối tượng
mối quan hệ một - nhiều mối quan hệ nhiều - nhiều mối quan hệ kế thừa
luồng xử lý
Trang 9KHOA CNTT –
ĐH KHTN
9
TÓM TẮT
Đề tài: Phần mềm hỗ trợ giải toán bất đẳng thức
Nội dung của luận văn có thể chia thành các phần như sau:
Phần 1 - Phần mở đầu Phần 2 - Hiện trạng và yêu cầu : trình bày về hiện trạng và phác thảo các yêu
cầu của bài toán
Phần 3 - Mô hình hóa : mô hình hóa các yêu cầu của bài toán Phần 4 - Thiết kế phần mềm: trình bày về các lớp đối tượng của chương trình
và sự phối hợp hoạt động giữa chúng
Phần 5 - Thực hiện và kiểm tra : trình bày tổng quát về môi trường thực hiện
và các bộ dữ liệu kiểm tra
Phần 6 - Phần tổng kết: đánh giá về các kết quả đã thực hiện trong luận văn và
đưa ra hướng phát triển
Phần 7 - Phần phụ lục
Trang 10ta có thể chỉnh sửa mà không cần phải bôi xóa, canh lề, viết hoa, chỉnh màu, … chỉ bằng một động tác bấm chuột Chính vì vậy, xu hướng tin học hóa đã và đang được xem xét, thực hiện một cách nghiêm túc trên nhiều lĩnh vực và hoạt động như : thương mại điện tử, đào tạo dạy học từ xa, điện hoa, voice chat, thậm chí còn có các dịch vụ tìm bạn hay bạn đời qua mạng internet
Trong lĩnh vực giáo dục và đào tạo, hãy xem xét một công việc mà các học sinh phổ thông phải thực hiện hàng ngày đó là làm bài tập về nhà Khi giải một bài toán bằng tay trên giấy học sinh sẽ phải sử dụng nhiều công cụ như tập vở, giấy nháp, tài liệu hướng dẫn,bút, máy tính, thước, … các công cụ này chiếm một diện tích đáng kể trên bàn học và dễ dẫn tới tình trạng lộn xộn, lầm lẫn Khi cần chỉnh sửa hay làm lại các bài tập học sinh phải bôi xóa, hay đôi khi phải vứt bỏ các giấy tờ làm bài tập cũ điều này dẫn tới một sự lãng phí không nhỏ Hơn nữa, đối với việc làm bài tập ở nhà, khi gặp khó khăn, không tìm được lời giải cho một bài toán học sinh sẽ dễ dàng choáng ngợp trước nhiều
Trang 11II MỤC TIÊU CỦA LUẬN VĂN
Đứng trước thực trạng như vậy luận văn hướng tới việc xây dựng và phát triển một chương trình ứng dụng trên máy tính hỗ trợ cho việc dạy và học của giáo viên và học sinh ngoài những giờ lên lớp Tuy nhiên xây dựng một chương trình hỗ trợ được tất cả các môn học là một lĩnh vực lớn, đòi hỏi nhiều thời gian, trong luận văn này chúng tôi chỉ tập trung vào xây dựng chương trình hỗ trợ cho một môn học Mục tiêu của luận văn được đề ra như sau :
Xây dựng một chương trình cung cấp các công cụ hỗ trợ cho việc dạy và học của giáo viên và học sinh trong môn bất đẳng thức, chương trình sẽ mô phỏng việc dạy, trong đó :
Giáo viên có thể soạn bài giảng và bài tập cùng với đáp án của bài tập ngay trên máy Nếu muốn, giáo viên có thể gửi ngay bài giảng đến cho học sinh Giáo viên cũng có thể in bài giảng của mình ra giấy
Học sinh trong thời gian tự học ở nhà có thể tra cứu các phần lý thuyết nhanh hơn Trong lúc giải bài tập học sinh có thể được sự hỗ trợ để kiểm tra bài giải của mình, có thể xem lại bài giải nhanh chóng thay vì phải tìm lại trong tập
Trang 12là giáo viên và học sinh
Đối với giáo viên
¾ Soạn trước bài giảng ở nhà
¾ Lên lớp, giảng bài cho học sinh, cho học sinh làm bài tập áp dụng, giao bài tập về nhà cho học sinh
¾ Vào tiết sửa bài, cho học sinh lên bảng làm bài và sửa bài làm của học sinh
¾ Cho học sinh làm các bài kiểm tra định kỳ và chấm điểm bài làm của học sinh
Đối với học sinh
¾ Ở lớp, nghe giáo viên giảng bài Nêu lên thắc mắc ( nếu có)
¾ Về nhà, làm các bài tập giáo viên giao cho
¾ Làm các bài kiểm tra vào các tiết kiểm tra môn học
Trang 13o Loại chung: là các chức năng hoàn toàn có thể áp dụng cho các phần mểm giảng dạy khác chứ không riêng phần mềm hỗ trợ giải toán bất
đẳng thức, nhóm chức năng này bao gồm :
Trang 14Đây là một phần mềm tính toán MathBook cho phép thực hiện các phép toán đại số và số học (cộng, trừ, nhân, chia, sin, cos,…), giải được hệ phương trình tối đa là 7 ần, tính diện tích các hình, phát sinh số ngẫu nhiên, chuyển đổi giữa các đơn vị đo lường
Ngay từ cái tên của phần mềm đã cho ta hiểu sơ sơ về chức năng của nó Matlab (viết tắt của Matrix Laboratory) là phần mềm thực hiện tính toán trên ma trận và trên số Đây là một ngôn ngữ thủ tục với hàng loạt hàm toán học đã được xác định trước giúp cho việc lập trình trên Matlab trở nên đơn giản Ngôn ngữ được sử dụng ở đây tương tự như một số ngôn ngữ quen thuộc đã học như Pascal, C… Tuy nhiên do giao diện của Matlab hỗ trợ cơ chế dòng lệnh nên gây ra không ít khó khăn khi sử dụng
Matlab xử lý tính toán trên ma trận nên thường được dùng trong xử lý đồ hoạ và giải hệ phương trình
Đây là phần mềm chuyên về tính toán Nó hỗ trợ cho phần lớn các lĩnh vực toán học từ số học (lấy dư, tìm ước số chung…), đại số (giải và biện luận
Trang 15Từ những hiện trạng thực tế trên ta thấy rằng học sinh, nhất là học sinh nước ta rất cần có một công cụ để hỗ trợ cho các em trong quá trình rèn luyện kỹ năng giải toán bất đẳng thức Và đó chính là lý do chúng tôi thực hiện đề tài này
II XÁC ĐỊNH YÊU CẦU
Việc khảo sát yêu cầu được tiến hành 2 nhóm đối tượng sử dụng chính là học sinh và giáo viên Sau khi khảo sát, công việc của 2 nhóm đối tượng trên được trình bày thành bảng như sau:
Trang 16GV_YC2 Soạn đề bài
tập
BM1 QD1 GV_YC3 Soạn đáp án BM2 QD2
HS_YC4 Chấm điểm GV_YC5 Soạn quy
định chấm điểm
BM5 QD5
Bộ phận : Học sinh
Mã số : HS
HS_YC1 Giải bài tập BM2 HS_YC2 Xem lại bài
giải
BM3 HS_YC3 Xem đáp án BM4
Trang 17KHOA CNTT –
ĐH KHTN
17
HS_YC4 Chấm điểm HS_YC5 Xem tóm tắt
lý thuyết
1 Bảng trách nhiệm cho các yêu cầu
Để xác định rõ cách thức thực hiện mỗi công việc của người dùng cũng như trách nhiệm của phần mềm để đáp ứng đối với các thao tác của người dùng,
ta lập ra bảng phân công trách nhiệm cho các yêu cầu
1 Soạn bài tập Cung cấp thông tin về đề
bài tập cùng với mức độ khó, thời gian làm bài
Phát sinh theo
biểu mẫu BM1
2 Soạn lý thuyết
Cung cấp thông tin chủ
đề của bài soạn và nội dung bài soạn
3 Phát sinh đề bài tập
Phát sinh bài tập mới theo công thức
4 Soạn quy định chấm điểm
Cung cấp thông tin theo
BM5, QD5
Cập nhật thông tin
Bảng 3: Bảng trách nhiệm cho yêu cầu của giáo viên
Trang 18KHOA CNTT –
ĐH KHTN
18
1 Giải bài tập Nhập vào các
bước giải theo
BM2,QD2
Kiểm tra bước giải đúng và thông báo
Danh sách các loại bước giải ( xem
phần phần Phụ lục
2)
2 Xem bài giải Chọn bài tập,
sau đó chọn một bài giải trong danh sách bài giải đã có của bài tập đó
Xuất bài giải theo biểu mẫu
BM3
3 Xem đáp án Chọn bài tập,
sau đó chọn một đáp án trong danh sách ( nếu bài tập có nhiều đáp án)
Xuất đáp án theo biểu mẫu
BM4
4 Chấm điểm Xuất đánh giá
và điểm số bài tập theo biểu
mẫuBM6 ,
QD6
Thực hiện ngay khi bài giải hoàn tất hoặc hết giờ làm bài
Bảng 4: Bảng trách nhiệm cho yêu cầu của học sinh
Trang 19KHOA CNTT –
ĐH KHTN
19
2 Danh sách các biểu mẫu
BM3 : Danh sách bài giải
STT Tên bài giải Thời điểm Thời gian làm Điểm số
1 …
2 Nội dung bài giải: Đánh gía bài giải:
BM2 : Danh sách bước giải
Trang 20KHOA CNTT –
ĐH KHTN
20
BM6 : Đánh giá kết quả bài giải ( dựa vào quy định chấm điểm)
Thời gian làm bài:
Số lần nhắc nhở:
Điểm số:
QD 6: Đúng hoàn toàn : D1 điểm ;
Hết giờ, chưa giải xong: 0 ; Mỗi biến đổi sai : trừ D2 điểm Mỗi lần xem bước giải kế tiếp (giải theo đáp án) : trừ D3 điểm Chứng minh một bất đẳng thức trung gian : cộng D4 điểm
BM5 : Soạn quy định chấm điểm
Điểm trừ cho một biến đổi sai: D2 Điểm trừ cho một lần xem bước giải tiếp theo D3 Điểm cộng cho bất đẳng thức trung gian D4
Trang 21KHOA CNTT –
ĐH KHTN
21
3 Phạm vi của đề tài
Cho phép thực hiện các phép biến đổi trên bất đẳng thức như sau:
- Biến đổi các biểu thức ở 2 vế (khai triển, rút gọn)
1 Bước giải biến đổi tương
đương từ một bước giải trước đó
Ù x^2+y>0
Trang 22KHOA CNTT –
ĐH KHTN
22
2 Bước giải suy ra từ một
bước giải trước đó
=> x^2+1>0
3 Bước giải đưa ra một bất
đẳng thức, hoặc đẳng thức đúng
Ta co x^2+y^2>0
4 Bước giải áp dụng bất đẳng
thức Cauchy để đưa ra một bất đẳng thức có dạng Cauchy
ADC x,y,z ta duoc …
5 Bước giải áp dụng bất đẳng
thức Bunhiaxcopki
ADB (x,y),(z,t) ta duoc …
6 Bước giải có thể suy ra từ 2
hay nhiều bước giải trước
đó ( áp dụng tính chất bắc cầu, cộng, nhân vế các bất đẳng thức ….)
Tu (1),(2),(2) suy ra …
7 Bước giải suy ra được nhờ
cộng vế các bất đẳng thức trong các bước giải được chọn trước đó)
Cong ve (1),(2) ta duoc
8 Bước giải suy ra được nhờ
nhân vế các bất đẳng thức trong các bước giải được chọn trước đó)
Nhan ve (1),(2) ta duoc
Trang 2312 kiểm tra bất đẳng thức trong
bước giải nào đó có phải là bất đẳng thức đúng
Trang 24KHOA CNTT –
ĐH KHTN
24
III PHƯƠNG ÁN THỰC HIỆN PHẦN MỀM
¾ Phần mềm sẽ bao gồm 2 phân hệ : hệ học sinh và hệ giáo viên
o Hệ giáo viên có các chức năng để hỗ trợ cho giáo viên thực hiện công việc của mình
o Hệ học sinh cài đặt các chức năng hỗ trợ cho học sinh
¾ Các phân hệ giao tiếp với nhau thông qua file hoặc email
¾ Sự giao tiếp giữa 2 phân hệ có thể được minh họa theo sơ đồ sau:
Hình 1: Sơ đồ giao tiếp giữa hai phân hệ
Phân hệ giáo viên
Phân hệ học sinh
Đề bài tập
Bài giải học sinh Quy định chấm điểmĐáp án
Bài học
Trang 25KHOA CNTT –
ĐH KHTN
25
Phần này sẽ mô hình hóa các yêu cầu đã xác định thành các sơ đồ, bao gồm
2 phần chính:
Trình bày sơ đồ sử dụng : mô hình hóa các yêu cầu dưới dạng sơ đồ sử dụng, gồm có:
¾ Sơ đồ sử dụng tổng thể
¾ Các sơ đồ sử dụng chi tiết
Trình bày sơ đồ lớp : xác định các lớp đối tượng chính, xác định các thuộc tính và phân công trách nhiệm cho các lớp đồng thời vẽ sơ đồ quan hệ giữa các lớp đối tượng
Trang 26Xem lý thuyết
Xem bài giải
Soạn đáp án
Soạn lý thuyết
Soạn qui định chấm điểm
Soạn bàitập
Chấm điểm
Phát sinh
đề bài tập
Xem đáp án2.1
2.3
2.4 2.2
Trang 27KHOA CNTT –
ĐH KHTN
27
2 Sơ đồ sử dụng cho từng yêu cầu cụ thể
Mô hình hóa các yêu cầu của bài toán theo sơ đồ sau
Trong đó :
D1: Thông tin do người dùng nhập vào D3: Dữ liệu đọc từ bộ nhớ cần thiết cho xử lý X D4: Dữ liệu cần lưu trữ vào bộ nhớ
D6: Dữ liệu sẽ được kết xuất
Người dùng
Xử lý X
D6D1
D4D3
Trang 28KHOA CNTT –
ĐH KHTN
28
Việc giải bài tập trước hết là kiểm tra các bước giải có đúng không
Hình 3: Sơ đồ sử dụng yêu cầu giải bài tập
D1: Thông tin về một bước giải ( bất đẳng thức tương đương, hoặc đặt ẩn
phụ, hoặc một bất đẳng thức đã được chứng minh để áp dụng…)
D3: Thông tin về đề bài tập và bài giải ( các bước giải đúng trước đó) D4: D1
D6: Thông báo nếu bước giải không đúng
Xử lý kiểm tra bước giải
- Nhận D1 từ người dùng
- Đọc D3 tương ứng từ bộ nhớ phụ
- Kiểm tra bước giải có đúng không
- Nếu không đúng, xuất D6 ra màn hình
Học sinh
Xử lý kiểm tra bước giải D3
D6
D4D1
Trang 29KHOA CNTT –
ĐH KHTN
29
Hình 4: Sơ đồ sử dụng yêu cầu xem bài giải
Hình 5: Sơ đồ sử dụng yêu cầu xem đáp án
Học sinh
Xem đáp án
D3
D6 D1
D1: Thông tin về bài tập, mã số đáp án
được chọn để xem
D3: Các đáp án của bài tập D6: nội dung của đáp án được chọn
D6 D1
D1: Thông tin về bài tập, mã số bài giải
Trang 30KHOA CNTT –
ĐH KHTN
30
Hình 6: Sơ đồ sử dụng yêu cầu xem lý thuyết
Hình 7: Sơ đồ sử dụng yêu cầu chấm điểm
Học sinh
Chấm điểm
D6D1
D3 D4
D1: Nội dung bài giải
D3: Bảng qui định chấm điểm D4:Điểm số + đánh giá
D3: Tóm tắt lý thuyết D6: D3
Xử lý xem tóm tắt lý thuyết
- Đọc D3 từ bộ nhớ phụ
- Xuất D6 ra màn hình
Trang 31KHOA CNTT –
ĐH KHTN
31
Hình 8: Sơ đồ sử dụng yêu cầu soạn lý thuyết
Hình 9: Sơ đồ sử dụng yêu cầu soạn bài tập
Giáo viên
Soạn đề bài tậpD1
D4
Giáo viên
Sọan tóm tắt lý thuyếtD1
D1: Thông tin về bài tập bất đẳng thức (mã
sách bài tập chứa nó,mức độ khó, nội dung, thời gian cần thiết để làm bài)
D4: D1+ Mã số bài tập
Xử lý soạn đề bài tập
- Nhận D1 từ người dùng
- Nếu hợp lệ ghi D4 vào bộ nhớ phụ
- Nếu không, thông báo lỗi
Trang 32KHOA CNTT –
ĐH KHTN
32
Hình 10: Sơ đồ sử dụng yêu cầu phát sinh bài tập
Hình 11: Sơ đồ sử dụng yêu cầu soạn đáp án
- Nếu thỏa thì ghi D4 vào bộ nhớ phụ
Nếu không thì báo lỗi
Giáo viên
Phát sinh đề bài tập D6
D4D3
D3: Các biểu thức và bất đẳng thức được
dùng cho việc phát sinh bài tập
D4 : Nội dung đề bài được phát sinh D6: D4
Xử lý phát sinh bài tập:
- Đọc D3 từ bộ nhớ phụ
- Ghi D4 vào bộ nhớ phụ và xuất D6
ra cho người dùng
Trang 33KHOA CNTT –
ĐH KHTN
33
Hình 12: Sơ đồ sử dụng yêu cầu soạn quy định chấm điểm
II SƠ ĐỒ LỚP
Để mô tả lớp đối tượng, sử dụng ký hiệu sau:
1 Danh sách các lớp đối tượng
Sau khi phân tích, xác định được danh sách các lớp đối tượng chính sau
D4
D1: Các quy định chấm điểm ( thang điểm
tối đa, số điểm trừ khi biến đổi sai, số điểm trừ cho một lần xem gợi ý, số điểm cộng khi chứng minh được một bất đẳng thức trung gian)
Trang 35hình 15
Trang 36KHOA CNTT –
ĐH KHTN
36
3 Cấu trúc của biểu thức
Để thực hiện các biến đổi trên bất đẳng thức, trước hết, cấn phải xây dựng lớp biểu thức, trong đó thực hiện các công việc sau:
Kiểm tra hai biểu thức bằng nhau
Cộng, trừ, nhân, chia hai biểu thức với nhau
Xét dấu một biểu thức
Ta sử dụng mẫu composite để thiết kế lớp biểu thức theo sơ đồ dưới đây:
Hình 14: Sơ đồ biểu diễn cấu trúc biểu thức
BieuThuc
*
Trang 37KHOA CNTT –
ĐH KHTN
37
4 Cấu trúc của bước giải
Các bước giải được chia thành 13 loại( xem chi tiết ở phụ lục 2) có mối quan hệ theo sơ đồ dưới
BuocGiaiLoai7
BuocGiaiLoai11
BuocGiaiLoai9 BuocGiaiLoai6
Trang 38- Thời gian làm bài
- Nội dung đề bài
- Xem bài giải
Trang 39KHOA CNTT –
ĐH KHTN
39
- Nội dung bài giải
- Thời gian giải
- Thời điểm bắt đầu
- Điểm số
- Kiểm tra bước giải mới
- Xử lý bước giải
- Thêm bước giải
- Lưu bài giải
- Import bài giải
- Kiểm tra bài giải toàn bộ
- Khởi tạo bước giải
- Kiểm tra bước giải đúng ( hàm ảo)