Tên đối tượng Diễn giải MH_HeGiaoVien Màn hình giao tiếp giữa giáo viên với phần mềm MH_SoanBaiTap Màn hình dùng để giáo viên soạn bài tập MH_DapAn Màn hình dùng để giáo viên soạn đáp án
Trang 1KHOA 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)
Trang 3- Lớp đối tượng giao tiếp người dùng
o Mô tả các thông tin trong màn hình giao diện
o Mô tả hình thức bố trí nội dung màn hình giao diện
o Mô tả các thao tác của người dùng trên màn hình giao diện
- Lớp đối tượng xử lý chính
o Mô tả các thông tin về đối tượng
o Mô tả các hành động (hàm xử lý) mà đối tượng chịu trách nhiệm thực hiện
- Lớp đối tượng giao tiếp bộ nhớ
o Mô tả chi tiết các thông tin về đối tượng phải lưu trữ
o Mô tả các hành động giao tiếp với bộ nhớ phụ (lấy dữ liệu, thêm, sửa đổi hoặc xóa dữ liệu)
Trang 4Tên đối tượng Diễn giải
MH_HeGiaoVien Màn hình giao tiếp giữa giáo viên
với phần mềm MH_SoanBaiTap Màn hình dùng để giáo viên soạn
bài tập MH_DapAn Màn hình dùng để giáo viên soạn
đáp án MH_LyThuyet Màn hình soạn lý thuyết
Đối tượng giao tiếp người dùng
Phân hệ giáo viên
MH_XemBaiGiai Màn hình dùng để xem các bài
giải của học sinh gởi đến để chấm điểm
Đối tượng giao tiếp người dùng
Đối tượng xử
lý chính
Đối tượng giao tiếp bộ nhớ phụ
Chuyển điều khiển
Chuyển điều khiển
Bộ nhớphụ
Nhận biến
cố
Cập nhật và truy xuất
Trang 5KHOA CNTT –
ĐH KHTN
43
MH_SoanQDCD Màn hình soạn các quy định dùng
để chấm điểm bài giải của học sinh
MH_ThemSachBT Màn hình thêm sách bài tập MH_HeHocSinh Màn hình giao tiếp giữa học sinh
với phần mềm MH_GiaiBT Màn hình dùng để học sinh giải
bài tập MH_XemBaiGiai Màn hình dùng để học sinh xem
lại bài giải của mình MH_XemDapAn Màn hình để học sinh xem đáp án
của bài tập
Phân hệ học sinh
MH_XemLyThuyet Màn hình để học sinh học lý
thuyết CGiaoVien Lớp điều khiển, quản lý toàn bộ
các lớp đối tượng trong hệ thống CSachBaiTap Lớp xử lý sách bài tập
CBaiTap Lớp xử lý bài tập CBaiHoc Lớp xử lý bài học lý thuyết CDapAn Lớp xử lý đáp án của một bài tập CBaiGiai Lớp xử lý bài giải của một bài
tập, gồm có hai lớp con dưới đây CBaiGiaiTuDo Lớp xử lý bài giải loại giải tự do
Đối tượng
xử lý chính
CBaiGiaiDapAn Lớp xử lý bài giải loại giải theo
Trang 6KHOA CNTT –
ĐH KHTN
44
đáp án Đối tượng
giaotiếp
bộ nhớ
CSDL Lớp xử lý mọi vấn đề về truy xuất
hay cập nhật dữ liệu
Bảng 6: Bảng danh sách các lớp đối tượng của chương trình
Với thiết kế 3 lớp như trên, hệ thống các đối tượng của phần mềm phối hợp với nhau hoạt động theo các sơ đồ phối hợp tổng thể sau đây
Trang 7MH_GiaiBT MH_XemBaiGiai MH_XemDapAn
CDapAn CSachBaiTap
Trang 9Sách bài tập Bài học
Trang 103 NoiDung Memo Nội dung bài giải
4 ThoiDiem DateTime Thời điểm bắt đầu giải
5 ThoiGian Number Thời gian để giải xong
tính theo phút
6 HoanTat Yes/No Thụôc tính cho biết bài
giải đã hoàn tất chưa
7 NhanXet Text Các đánh giá về bài giải
Trang 11STT Thuộc tính Kiểu dữ liệu Diễn giải
1 MaBH AutoNumber Mã số của bài học
Ngoài ra còn có thêm hai bảng phụ để chứa các tham số dùng trong chương trình và bảng chứa các biểu thức dương dùng để phát sinh bài tập
Bảng tham số
STT Thuộc
tính
Kiểu dữ liệu
Giá trị mặc định
Diễn giải
1 TS1 Number 10 Thang điểm tối đa cho bài giải
2 TS2 Number 1 Số điểm cộng cho mỗi bất đẳng thức
trung gian chứng minh xong
3 TS3 Number 0 Số điểm bị trừ cho một lần bị nhắc nhở
4 TS4 Number 0 Số điểm trừ cho một lần xem bước giải
tiếp (đối với bài giải đáp án)
Trang 12KHOA CNTT –
ĐH KHTN
50
Bảng từ khoá
STT Thuộc tính Kiểu dữ liệu Diễn giải
Bảng BIEUTHUCDUONG
STT Thuộc tính Kiểu dữ liệu Diễn giải
1 MaBT AutoNumber Mã số của biểu thức dương
2 BieuThucDuong Text Nội dung của biểu thức dương
Trang 13KHOA CNTT –
ĐH KHTN
51
II THIẾT KẾ CHI TIẾT
Nội dung được trình bày ở phần này bao gồm:
Diễn giải chi tiết theo từng màn hình: mô tả chi tiết nội dung màn hình
và các biến cố của màn hình
Hệ thống hàm của các lớp đối tượng: mô tả các hàm xử lí của tất cả
các lớp đối tượng khác
Sơ đồ hoạt động chi tiết một số xử lý
1 Diễn giải chi tiết theo từng màn hình
Mỗi màn hình sẽ được mô tả chi tiết theo các nội dung sau
- Nội dung màn hình ( các thuộc tính của màn hình)
- Danh sách các biến cố xảy ra trên màn hình đó và thuật toán xử lý các
biến cố đó
1.1 MH_HeHocSinh
1.1.1 Nội dung màn hình
STT Thuộc tính Loại Diễn giải
1 tabControlLopDoiTuong TabControl TabControl chứa các đối
tượng chính
2 Panel Panel Khung để đặt các màn hình
con lên, ví dụ như MH_GiaiBT…
3 tabPageSachBaiTap TabPage Tabpage chứa tất cả các bài
tập của một sách bài tập
Trang 14KHOA CNTT –
ĐH KHTN
52
4 tabPageSachBaiHoc TabPage Tabpage chứa các bài học lý
thuyết trong sách bài học
5 tabControlSachBaiTap TabPage Tabpage chứa tất cả các bài
tập của một quyển sách bài tập
6 mainMenu MainMenu Thực đơn chính của màn
Trang 16tabControlDoiTuong_SelectionChanged
2 Chọn sách
bài tập khác
Người dùng click chọn sách bài tập khác trong các tab Sách bài tập
tabctrlSachBaiTap_SelectionChanged
4 Chọn mục
xem bài giải
Người dùng nhấp phải vào bài tập để chọn Xem bài giải
Biến cố này do lớp CBaiTap
xử lý
ChonMucXemBaiGiai
5 Chọn mục
xem đáp án
Người dùng nhấp chuột phải vào bài tập để chọn mục Xem đáp án.trọng thực đơn
ChonMucXemDapAn
6 Chọn mục
thêm sách bài tập
Người dùng nhấp phải trên danh sách các sách bài tập để chọn mục Thêm sách mới trong thực đơn
Trang 171 rtbDeBai RichTextBox Dùng để hiển thị để bài tập đang
giải
2 ckKiemTraTungBuoc Đánh dấu vào ô này để chọn chế
độ giải kiểm tra từng bước
3 ckDanhSoTuDong CheckBox Đánh dấu vào ô này để chọn chế
độ đánh số bước giải tự động
4 ckHoTroGiaiNhanh CheckBox Đánh dấu vào ô này để chọn chế
độ hỗ trợ giải nhanh bằng cách phát sinh một phần bước giải
5 tabPageBaiGiaiTuDo TabPage TabPage chứa bài giải tự do
6 tabPageBaiGiaiDapAn TabPage TabPage chứa bài giải theo đáp
Trang 18KHOA CNTT –
ĐH KHTN
56
học sinh giải bài tập
10 ckTrangThai CheckBox Nhấn vào nút này để bắt đầu giải
hay tạm dừng
11 ckXemGoiY CheckBox Người dùng check vào ô này nếu
muốn hiển thị gợi ý cho bước giải tiếp theo trong đáp án
12 tbGoiY TextBox TextBox để hiển thị gợi ý cho
bước giải tiếp theo trong đáp án
13 btnBuocGiaiTiep Button Nhấp vào nút này để hiển thị
bước giải tiếp theo trong đáp án cho học sinh trong lúc giải bài
14 btnQuayLui Button Nhấp vào nút này để quay lui
một bước giải trước đó
15 btnKiemTraBaiBai Button Nhấp vào nút này để kiểm tra bài
giải trong trường hợp người dùng không chọn kiểm tra từng bước
16 btnKhung<1-13> Button Các nút để tạo khung bước giải
tương ứng
Trang 19Editor để giải bài tập
14 15
7
8
Trang 20KHOA CNTT –
ĐH KHTN
58
1.2.2 Danh sách các biến cố
1 Click chuột vào điều
khiển số 8
Người dùng nhấn vào đây để bắt đầu hay tạm ngưng việc giải
ckTrangThai_CheckedChanged
2 Chọn loại bài giải
khác
Người dùng nhấn chọn tab loại giải là giải tự
do hay giải theo đáp
án
tabBaiGiai_SelectedIndexChanged
4 Click vào điều khiển
số 2
(ckKiemTraTungBu
oc)
Người dùng bật / tắt chế độ giải Kiểm tra từng bước
ckKiemTraTungBuoc_CheckedChanged
5 Click vào điều khiển
số 10
(btnKiemTraBaiGiai
)
Người dùng nhấn nút kiểm tra bài giải
btnKiemTraBaiGiai_Click
6 Click vào điều khiển
số 9 (btnQuayLui)
Người dùng nhấn nút quay lui để quay lui về một bước giải trước
btnQuayLui_Cli
ck
Trang 21Biến cố này sẽ được
xử lý trong trường hợp chế độ giải là Kiểm tra từng bước
rtbBaiGiai_KeyDown
Click vào điều khiển
btnQuayLui
Click chuột vào nút này hiển thị bước giải tiếp theo trong đáp
btnBuocGiaiTiep_Click
8 Click chuột vào mục
Lưu bài giải
Người dùng nhấn phím phải chọn mục Lưu bài giải trong khi đang giải hoặc sau khi giải xong
mucLuuBaiGiai.Click
9 Click chọn mục
Import bài giải
Người dùng nhấn phải vào edior bài giải và
chọn mục Import bài
giải để import một bài
giải từ file vào edior
mucImportBaiGiai.Click
Trang 22chọn mục Export bài
giải để export một bài
giải ra file
mucExportBaiGiai.Click
1.3 MH_XemBaiGiai
1.3.1 Nội dung màn hình
1 lvDSBaiGiai ListView ListView chứa danh sách các bài giải
của bài tập được chọn
2 rtbNoiDung RichTextBox Chứa nội dung của bài giải được
chọn
3 rtbNhanXet RichTextBox Chứa nhận xét về bài giải
4 btnPrint Button Chức năng in bài giải ra giấy
Trang 23lvDSBaiGiai_SelectedIndexChanged
2 Click chọn
nút In
Người dùng muốn in bài giải ra giấy
btnPrint_Click
1-lvDSBaiGiai
2-rtbNoiDung
3-rtbNhanXet 4-btnPrint
Trang 241 lvDSDapAn ListView Listview chứa danh sách các đáp
án của bài tập được chọn
2 rtbNoiDung RichTextBox Chứa nội dung đáp án được chọn
3 btnPrint Button Chức năng in đáp án ra giấy
Hình 23: Màn hình xem đáp án
1-lvDSDapAn
2-rtbNoiDung 3-btnPrint
Trang 25Người dùng click chọn đáp án cần xem trong lvDSDapAn
lvDSDapAn_SelectedIndexChanged
1 rtbNoiDung RichTextBox Hiển thị nội dung bài học lý thuyết được
chọn
2 toolBarBaiHoc ToolBar Chứa các chức năng in ấn và import bài
học lý thuyết
Trang 271 tabControlLopDoiTuong TabControl TabControl chứa các đối
tượng chính
2 panel Panel Khung để đặt các màn hình
con lên, ví dụ như MH_SoanBaiTap …
3 tabPageSachBaiTap TabPage Tabpage chứa tất cả các bài
tập của một quyển sách bài tập
4 tabPageSachBaiHoc TabPage Tabpage chứa các bài học
lý thuyết trong sách bài học
5 cmBaiHoc ContextMenu Thực đơn chứa các chức
năng của đối tượng bài học
6 cmiBaiHoc_ChuongMoi MenuItem Mục thêm một chương bài
học mới
7 cmiBaiHoc_SoanMoi MenuItem Mục thêm một bài học mới
8 cmBaiTap ContextMenu Thực đơn chứa các chức
năng của bài tập, bao gồm:
- Soạn đáp án
- Thêm bài tập mới
- Xóa bài tập
Trang 2815 mnGD_HuongDan MenuItem Chức năng Hướng dẫn
16 mnGD_GioiThieu MenuItem Chức năng Giới thiêu về
chương trình
Trang 29tabControlLopDoiTuong_SelectedIndexChanged
2- panel: khung đặt màn hình con
1-tabControlLopDoiTuong
3- tabPageSacBaiTap
4- tabPageSacBaiHoc
9- mainMenu
Trang 30Người dùng click phải vào phần màn hình thể hiện sách
bài tập và chọn mục Thêm
mới bài tập trong thực đơn
mniBaiTap_Them_Click
1.7 MH_SoanLyThuyet
1.7.1 Nội dung màn hình
1 toolBarDinhDang ToolBar Thanh công cụ để định dạng văn bản lý
thuyết
2 rtbLyThuyet RichTextBox Đây là một hộp văn bản để giáo viên
soạn lý thuyết vào
3 cmSoanLyThuyet ContextMenu Chứa các chức năng in ấn, export bài
học
Trang 31cmiLuuBaiSoan_Click
2 Chọn mục export
bài soạn
Chọn mục Export bài học
cmiExport_Click
3 Chọn mục in bài
soạn
In bài soạn ra giấy
cmiIn_Click
1-toolBarDinhDang
2- rtbLyThuyet
3- cmSoanLyThuyet
Trang 321 cbDoKho ComboBox Mức độ khó của một bài tập
2 txtThoiGianLamBai TextBox Thời gian được tính bằng phút
3 txtDeBai TextBox Nội dung của đề bài
4 btnDocFile Button Đọc đề bài từ file
5 btnLuuBT Button Lưu bài tập lên CSDL
6 btnExport Button Export bài tập ra file
7 btnPhatSinh Button Phát sinh đề bài
8 cmBaiTap ContextMenu Thực đơn chứa các mục :
- Đọc từ file
- Lưu bài soạn
- Export
Trang 334 Click button Luu
Trang 34cbDoKho_SelectionChangeCommitted
6 Gõ vào nội dung
8 Chọn mục Đọc
file đề bài
Thay vì phải gõ ta chọn đọc từ một file đề bài tập có sẵn
btnPhatSinhDe_Clic
k
1.9 MH_SoanDapAn
1.9.1 Nội dung màn hình
1 txtDeBai TextBox Đề bài tập
2 txtDapAn TextBox Bài giải đáp án
3 lvDapAn ListView Danh sách các đáp án của bài tập
4 Các btnKhungBuocGiai Button Chứa khung của các loại bước
giải
Trang 36cmiLuuBaiSoan_Click
4 Chọn mục
Thêm đáp án mới
Người dùng muốn thêm một đáp án mới của bài tập
cmiThemMoi_Click
5 Chọn mục
Nhập từ file
Người dùng muốn nhập đáp án từ file
cmiNhapTuFile_Click
6 Click chọn nút
Quay lui
Người dùng muốn quay lại bước giải trước đó
btnQuayLui_Click
7 Nhấn phím
trong txtDapAn
Người dùng gõ vào txtDapAn
txtDapAn_KeyPress
Trang 374 txtDiemTruBDSai TextBox Điểm trừ cho một biến
đổi sai
5 txtDiemTruXemBG TextBox Điểm trừ một lần xem
bước giải tiếp
6 btnExport Button Export quy định ra file
để gửi cho phân hệ học sinh
7 btnKetThuc Button Nhấn nút này để kết
thúc soạn
8 Các groupbox để gom
nhóm
Trang 38btnKetThuc_Click
2 Click vào nút
Export
Chọn chức năng export quy định ra file
Gõ vào điểm cộng cho một bất đẳng thức trung gian
txtDiemCongBDTTG_KeyPress
txtDiemTruBDSai
Gõ vào điểm trừ cho một biến đổi sai
txtDiemTruBDSai_KeyPress