Đồ án Xây dựng phần mềm quản lý ngân hàng câu hỏi trắc nghiệm tuyển sinh đại học

Mục lục

Danh sách các hình . 10

Chương 1. Mở đầu . 14

1.1 Yêu cầu thực tếvà lý do chọn đềtài .14

1.2 Mục đích, đối tượng và phạm vi nghiên cứu .14

Chương 2. Nghiên cứu lý thuyết trắc nghiệm . 16

2.1 Tổng quan vềtrắc nghiệm khách quan .16

2.1.1 Luận đềvà Trắc nghiệm khách quan .16

2.1.2 Những nguyên tắc chung của trắc nghiệm.19

2.1.3 Những trường hợp dùng trắc nghiệm.20

2.1.4 Trắc nghiệm chuẩn mực và Trắc nghiệm tiêu chí.21

2.1.4.1 Trắc nghiệm chuẩn mực.21

2.1.4.2 Trắc nghiệm tiêu chí .22

2.1.4.3 So sánh trắc nghiệm chuẩn mực và Trắc nghiệm tiêu chí .22

2.2 Tính tin cậy và tính giá trịcủa bài trắc nghiệm .24

2.2.1 Tính tin cậy (Reliability).24

2.2.2 Tính giá trị(Validity) .27

2.2.3 Mối liên hệgiữa tính tin cậy và tính giá trị.28

2.3 Quy hoạch một bài trắc nghiệm .28

2.3.1 Xác định mục tiêu học tập.28

2.3.1.1 Các khái niệm.28

2.3.1.2 Mục tiêu học tập là cơsởcho việc soạn bài trắc nghiệm .30

2.3.2 Phân tích nội dung môn học.32

2.3.3 Thiết kếdàn bài trắc nghiệm.33

2.3.4 Sốcâu hỏi trong bài trắc nghiệm .34

2.3.5 Mức độkhó của các câu trắc nghiệm.35

2.4 Các hình thức câu trắc nghiệm.36

2.4.1 Câu trắc nghiệm Đúng-Sai (true-false question).36

2.4.2 Câu trắc nghiệm đa lựa chọn (multiple choice question).37

2.4.3 Câu trắc nghiệm đối chiếu cặp đôi (matching question).39

2.4.4 Câu trắc nghiệm điền khuyết (filling question) .39

2.5 Phân tích câu trắc nghiệm .40

2.5.1 Độkhó của câu trắc nghiệm (difficulty index) .41

2.5.1.1 Định nghĩa độkhó của câu trắc nghiệm.41

2.5.1.2 Công thức tính độkhó.41

2.5.1.3 Độkhó vừa phải câu trắc nghiệm .41

2.5.2 Độphân cách của câu trắc nghiệm (discrimination index).42

2.5.2.1 Định nghĩa độphân cách của câu trắc nghiệm.42

2.5.2.2 Các phương pháp tính độphân cách .43

2.5.2.3 Kết luận từ độphân cách.46

2.6 Độtin cậy của bài trắc nghiệm.46

2.6.1 Định nghĩa độtin cậy .46

2.6.2 Các phương pháp tính độtin cậy của bài trắc nghiệm .47

2.6.2.1 Trắc nghiệm hai lần (test - retest) .47

2.6.2.2 Các dạng trắc nghiệm tương đương (equivalent forms) .48

2.6.2.3 Phương pháp phân đôi bài trắc nghiệm (split halves method).48

2.6.2.4 Công thức Kuder – Richardson.50

2.6.3 Kết luận từ độtin cậy .53

Chương 3. Phân tích . 54

3.1 Phân tích hiện trạng.54

3.2 Xác định yêu cầu .54

3.2.1 Yêu cầu chức năng .54

3.2.2 Yêu cầu phi chức năng .55

3.2.2.1 Yêu cầu hệthống.55

3.2.2.2 Yêu cầu vềchất lượng.55

3.2.3 Phương án thực hiện phần mềm.56

3.3 Sơ đồsửdụng.57

3.4 Sơ đồkiến trúc tổng thể(mức phân tích).60

3.5 Sơ đồlớp .61

3.5.1 Sơ đồcác lớp đối tượng (mức phân tích).61

Danh sách các lớp đối tượng .62

Chương 4. Thiết kế. 63

4.1 Sơ đồkiến trúc tổng thể(mức thiết kế).63

4.1.1 Danh sách các lớp đối tượng của phần mềm .65

4.2 Thiết kếdữliệu .68

4.2.1 Sơ đồlogic dữliệu .68

4.3 Sơ đồtruyền động (sơ đồhoạt động chi tiết) một sốxửlý quan trọng .70

4.3.1 Nhập câu hỏi .70

4.3.2 Kết xuất câu hỏi .71

4.3.3 Trộn đềthi .72

Chương 5. Triển khai, thực nghiệm và kiểm tra . 73

5.1 Kỹthuật Automation (tự động hóa) .73

5.1.1 Sơnét vềAutomation.73

5.1.2 Automation với Microsoft Office 2003 .75

5.1.2.1 Automation với Microsoft Office Word 2003 .75

5.1.2.2 Automation với Microsoft Excel Word 2003 .77

5.2 Thực hiện.79

5.2.1 Cách tổchức trong lập trình.79

5.2.2 Các công thức được sửdụng .79

5.2.3 Qui tắc đặt tên các đối tượng .79

5.2.4 Qui tắc đặt tên cho các điều khiển trong các màn hình .80

5.2.5 Quy tắc đặt tên biến.80

5.3 Thực nghiệm và kiểm tra .81

Chương 6. Kết luận. 85

6.1 Những kết quả đạt được .85

6.2 So sánh với một sốchương trình liên quan.86

6.3 Các hướng phát triển .88

6.4 Nhận xét .88

Tài liệu tham khảo . 90

Phụlục A. Danh sách các mẫu nhập . 91

A.1 Mẫu nhập câu hỏi trắc nghiệm .91

A.2 Mẫu đềthi: .92

A.3 Mẫu bảng trảlời .92

A.4 Mẫu đáp án .94

A.5 Mẫu nhập đánh giá .94

Hồsơphân tích hệthống. 95

A.1 Sơ đồluồng dữliệu .95

A.1.1 Quản lý tác giả.96

A.1.1.1 Thêm tác giả.96

A.1.1.2 Cập nhật tác giả.96

A.1.1.3 Xóa tác giả.97

A.1.2 Quản lý khối thi.98

A.1.2.1 Thêm khối thi .98

Cập nhật khối thi .99

A.1.2.2 Xóa khối thi.99

A.1.3 Quản lý môn thi.100

A.1.3.1 Thêm môn thi .100

A.1.3.1 Cập nhật môn thi .101

A.1.3.2 Xóa môn thi.102

A.1.4 Quản lý nội dung môn học .103

A.1.4.1 Thêm nội dung môn học .103

A.1.4.2 Cập nhật nội dung môn học .103

A.1.4.3 Xóa nội dung môn học .104

A.1.5 Quản lý mục tiêu môn học .105

A.1.5.1 Thêm mục tiêu môn học.105

A.1.5.2 Cập nhật mục tiêu môn học.105

A.1.5.3 Xóa mục tiêu môn học .106

A.1.6 Nhập câu hỏi.107

A.1.7 Tìm kiếm câu hỏi.107

A.1.8 Cập nhật câu hỏi .108

A.1.9 Soạn đềthi .109

A.1.10 Đánh giá đềthi và các câu trắc nghiệm.110

A.2 Mô tảchi tiết các lớp đối tượng chính .110

A.2.1 Lớp Câu trắc nghiệm.110

A.2.2 Lớp Câu trắc nghiệm đa lựa chọn .111

A.2.3 Lớp Câu trắc nghiệm đúng sai .111

A.2.4 Lớp Phương án trảlời .112

A.2.5 Lớp Đềthi .112

A.2.6 Lớp Dàn bài trắc nghiệm.112

A.2.7 Lớp Yêu cầu chi tiết .112

Phụlục B. Hồsơthiết kế. 113

B.1 Chi tiết các bảng dữliệu .113

B.1.1 Bảng KHOI.113

B.1.2 Bảng MON_HOC .114

B.1.3 Bảng KHOI_MONHOC.114

B.1.4 Bảng NOI_DUNG_MON_HOC .114

B.1.5 Bảng NOI_DUNG_CON .115

B.1.6 Bảng MUC_TIEU_MON_HOC.115

B.1.7 Bảng MUC_TIEU_CON .115

B.1.8 Bảng TAC_GIA.117

B.1.9 Bảng CAU_HOI_DA_LUA_CHON.117

B.1.10 Bảng DANH_SACH_LUA_CHON.119

B.1.11 Bảng CAU_HOI_DUNG_SAI .119

B.2 Thiết kếchi tiết các lớp đối tượng.122

B.2.1 Thiết kếlớp đối tượng giao tiếp người dùng.122

B.2.1.1 Lớp MH_Chinh .122

B.2.1.2 Lớp MH_TacGia .123

B.2.1.3 Lớp MH_Khoi .127

B.2.1.4 Lớp MH_MonHoc.131

B.2.1.5 Lớp MH_NhapDanhSachMonHocThuocKhoi .135

B.2.1.6 Lớp MH_NhapDanhSachKhoiChuaMonHoc .137

B.2.1.7 Lớp MH_NoiDungMonHoc .139

B.2.1.8 Lớp MH_MucTieuMonHoc .144

B.2.1.9 Lớp MH_ThemCauHoi .149

B.2.1.10 Lớp MH_ChinhSuaCauHoi.154

B.2.1.11 Lớp MH_TimKiemCauHoi .159

B.2.1.12 Lớp MH_TuyChonPhatSinhCapNhat .163

B.2.1.13 Lớp MH_TaoDeThi.167

B.2.1.14 Lớp MH_TronDe.173

B.2.1.15 Lớp MH_DanhGiaDeThi .176

B.2.2 Thiết kếlớp đối tượng xửlý nghiệp vụ.177

B.2.2.1 Lớp CauTN.177

B.2.2.2 Lớp CauTN DaLuaChon .180

B.2.2.3 Lớp CauTNDungSai.183

B.2.2.4 Lớp PhuongAnTraLoi .185

B.2.2.5 Lớp YeuCau .185

B.2.2.6 Lớp TieuChuanTimKiem .186

B.2.2.7 Lớp XL_CauHoi.187

B.2.2.8 Lớp XL_Khoi .191

B.2.2.9 Lớp XL_MonHoc .192

B.2.2.10 Lớp XL_MucTieuMonHoc .195

B.2.2.11 Lớp XL_NoiDungMonHoc .199

B.2.2.12 Lớp XL_TacGia .202

Quản lý kho dữliệu đềthi trắc nghiệm tuyển sinh đại học

9

B.2.2.13 Lớp ThongTinDanhGia .203

B.2.2.14 Lớp DisOrderTest.204

B.2.2.15 Lớp ExcelRender.206

B.2.2.16 Lớp WordParser .209

B.2.2.17 Lớp TestParser.210

B.2.2.18 Lớp CauTNDaLuaChonParser .213

B.2.2.19 Lớp CauTNDungSaiParser.214

B.2.2.20 Lớp WordRender.216

B.2.2.21 Lớp TestRender .219

B.2.2.22 Lớp CauTNDaLuaChonRender.219

B.2.2.23 Lớp CauTNDungSaiRender .220

B.2.3 Thiết kếlớp đối tượng xửlý lưu trữ.220

B.2.3.1 Lớp LT_Bang .220

B.2.3.2 Lớp LT_Khoi.222

B.2.3.3 Lớp LT_MonHoc .223

B.2.3.4 xLớp LT_TacGia.224

B.2.3.5 Lớp LT_NoiDungMonHoc .225

B.2.3.6 Lớp LT_MucTieuMonHoc.227

B.2.3.7 Lớp LT_CauTNDaLuaChon .228

B.2.3.8 Lớp LT_CauTNDungSai.231

pdf237 trang | Chia sẻ: lethao | Lượt xem: 3267 | Lượt tải: 1download
Bạn đang xem trước 20 trang tài liệu Đồ án Xây dựng phần mềm quản lý ngân hàng câu hỏi trắc nghiệm tuyển sinh đại học, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
u trắc nghiệm đa lựa chọn 25 YeuCau Lớp đối tượng yêu cầu đề thi 26 PhuongAnTraLoi Lớp đối tượng phương án trả lời 27 DisOrderTest Lớp đối tượng xử lý việc xáo trộn câu hỏi để tạo đề thi 28 ExcelRender Lớp đối tượng xử lý việc đọc và kết xuất trên tập tin Excel 29 WordParser Lớp đối tượng xử lý việc đọc toàn bộ tập tin Word 30 TestParser Lớp đối tượng xử lý việc đọc nội dung câu trắc nghiệm tổng quát trên tập tin Word 31 CauTNDaLuaChonPars er lý nghiệp vụ Lớp đối tượng xử lý việc đọc nội dung câu trắc nghiệm đa lựa chọn trên tập tin Word Xây dựng phần mềm quản lý ngân hàng câu hỏi trắc nghiệm tuyển sinh đại học 67 32 CauTNDungSaiParser Lớp đối tượng xử lý việc đọc nội dung câu trắc nghiệm đúng sai trên tập tin Word 33 WordRender Lớp đối tượng xử lý việc kết xuất ra tập tin Word. 34 TestRender Lớp đối tượng xử lý việc kết xuất câu trắc nghiệm tổng quát ra tập tin Word. 35 CauTNDaLuaChonRen der Lớp đối tượng xử lý việc kết xuất câu trắc nghiệm đa lựa chọn ra tập tin Word. 36 CauTNDungSaiRender Lớp đối tượng xử lý việc kết xuất câu trắc nghiệm đúng sai ra tập tin Word. 37 LT_Khoi Lớp đối tượng xử lý việc lưu trữ khối 38 LT_MonHoc Lớp đối tượng xử lý việc lưu trữ môn học 39 LT_TacGia Lớp đối tượng xử lý việc lưu trữ tác giả 40 LT_NoiDungMonHoc Lớp đối tượng xử lý việc lưu trữ nội dung môn học 41 LT_MucTieuMonHoc Lớp đối tượng xử lý việc lưu trữ mục tiêu môn học 42 LT_DanBaiTracNghie m Lớp đối tượng xử lý việc lưu trữ dàn bài trắc nghiệm 43 LT_CauTNDungSai Lớp đối tượng xử lý việc lưu trữ câu trắc nghiệm đúng sai 44 LT_CauTNDaLuaChon Lớp đối tượng xử lý việc lưu trữ câu trắc nghiệm đa lựa chọn 45 LT_ThongTinCSDL Lớp đối tượng xử lý lưu trữ Lớp đối tượng xử lý việc lưu trữ thông tin cơ sở dữ liệu Xây dựng phần mềm quản lý ngân hàng câu hỏi trắc nghiệm tuyển sinh đại học 68 46 LT_Bang Lớp đối tượng xử lý việc lưu trữ tất cả các thông tin 4.2 Thiết kế dữ liệu 4.2.1 Sơ đồ logic dữ liệu CAU_HOI_DA_LUA_CHON MaCH : S(17) NoiDungXML : S NoiDungText : S DapAn : N DoKho : R DoPhanCach : R MaTGBS : N MaMH : N MaNDMH : N MaNDC : N MaMTMH : N MaMTC : N SoLanXuatHien : N CAU_HOI_DUNG_SAI MaCH : S(17) NoiDungXML : S NoiDungText : S DapAn : N DoKho : R DoPhanCach : R MaTGBS : N MaMH : N MaNDMH : N MaNDC : N MaMTMH : N MaMTC : N SoLanXuatHien : N TAC_GIA MaTG : N TenTG : S(40) BangCap : S(30) DonViCongTac : S(30) DiaChi : S(80) DienThoai : S(15) GhiChu : S)50_ DANH_SACH_LUA_CHON MaCH : S(17) MaLuaChon : N NoiDungXML : S NoiDungText : S MUC_TIEU_MON_HOC MaMTMH : N TenMTMH : S(30) GhiChu : S(50) MUC_TIEU_CON MaMTMH : N MaMTC : N TenMTC : S(30) GhiChu : S(50) MON_HOC MaMH : N TenMH : S(15) KHOI MaKhoi : N TenKhoi : S(6) GhiChu : S(50) KHOI_MONHOC MaKhoi : N MaMH : N NOI_DUNG_MON_HOC MaMH : N MaNDMH : N TenNDMH : S(30) GhiChu : S(50) NOI_DUNG_CON MaMH : N MaNDMH : N MaNDC : N TenNDC : S(30) GhiChu : S(50) Hình 10. Sơ đồ logic dữ liệu Xây dựng phần mềm quản lý ngân hàng câu hỏi trắc nghiệm tuyển sinh đại học 69 Danh sách các bảng dữ liệu : STT Tên Ý nghĩa Ghi chú 1 KHOI Lưu trữ khối thi 2 MON_HOC Lưu trữ môn học 3 KHOI_MONHOC Lưu trữ các môn học thuộc khối 4 NOI_DUNG_MON_HOC Lưu trữ nội dung môn học thuộc môn học 5 NOI_DUNG_CON Lưu trữ nội dung con thuộc nội dung môn học 6 MUC_TIEU_MON_HOC Lưu trữ mục tiêu nhận thức môn học 7 MUC_TIEU_CON Lưu trữ mục tiêu con thuộc mục tiêu môn học 8 TAC_GIA Lưu trữ tác giả biên soạn câu trắc nghiệm 9 CAU_HOI_DA_LUA_CHON Lưu trữ câu hỏi trắc nghiệm loại đa lựa chọn 10 DANH_SACH_LUA_CHON Lưu trữ danh sách các lựa chọn của câu trắc nghiệm đa lựa chọn 11 CAU_HOI_DUNG_SAI Lưu trữ câu hỏi trắc nghiệm loại đúng sai Bảng 17. Danh sách các bảng dữ liệu Xây dựng phần mềm quản lý ngân hàng câu hỏi trắc nghiệm tuyển sinh đại học 70 4.3 Sơ đồ truyền động (sơ đồ hoạt động chi tiết) một số xử lý quan trọng 4.3.1 Nhập câu hỏi Hình 11. Sơ đồ truyền động xử lý nhập câu hỏi Xây dựng phần mềm quản lý ngân hàng câu hỏi trắc nghiệm tuyển sinh đại học 71 4.3.2 Kết xuất câu hỏi Hình 12. Sơ đồ truyền động xử lý kết xuất câu hỏi Xây dựng phần mềm quản lý ngân hàng câu hỏi trắc nghiệm tuyển sinh đại học 72 4.3.3 Trộn đề thi Hình 13. Sơ đồ truyền động xử lý trộn đề thi Xây dựng phần mềm quản lý ngân hàng câu hỏi trắc nghiệm tuyển sinh đại học 73 Chương 5. Triển khai, thực nghiệm và kiểm tra 5.1 Kỹ thuật Automation (tự động hóa) 5.1.1 Sơ nét về Automation Automation (trước đây được biết đến với tên gọi là OLE Automation) là một cơ chế cho phép một ứng dụng A thao tác với các đối tượng được cài đặt trong ứng dụng B, hoặc phơi bày các đối tượng của ứng dụng A để các ứng dụng khác có thể truy xuất và thao tác được các đối tượng này. Nói cách khác, Automation là một cơ chế cho phép điều khiển ứng dụng B từ ứng dụng A. Có 2 loại automation : - Automation cục bộ (Local Automation): các đối tượng và chức năng của ứng dụng A được phơi bày nằm trên cùng một máy với ứng dụng B. - Automation từ xa (Remote Automation): các đối tượng và chức năng của ứng dụng A được phơi bày nằm trên một máy khác với máy chứa ứng dụng B, khi đó ứng dụng B phải truy cập đến ứng dụng A qua hệ thống mạng. Các khái niệm : - Automation server : là các ứng dụng (thuộc kiểu COM server) phơi bày (expose) các chức năng của nó thông qua giao diện COM (COM interface) cho các ứng dụng khác. Các ứng dụng sử dụng các chức năng đó gọi là các Automation client. - Automation client : là các ứng dụng sử dụng, thao tác các đối tượng, chức năng được phơi bày của Automation server. Có 2 loại Automation client : o Client động : là các client lấy thông tin về các thuộc tính và phương thức của Automation Server trong lúc chạy chương trình (run time). o Client tĩnh : là các client lấy thông tin về các hàm và phương thức của Automation server trong lúc biên dịch (compile time). Xây dựng phần mềm quản lý ngân hàng câu hỏi trắc nghiệm tuyển sinh đại học 74 Hình 14. Mô hình sử dụng Automation Việc phơi bày các đối tượng của server giúp cho các client có thể thực hiện tự động hóa các chức năng bằng cách truy xuất trực tiếp vào các đối tượng và chức năng đã được công bố của automation server. Công bố các đối tượng như vậy sẽ rất có lợi khi một ứng dụng muốn cung cấp các chức năng của nó cho các ứng dụng khác. Chẳng hạn như một ứng dụng xử lý văn bản có thể cung cấp chức năng bắt lỗi chính tả cho các ứng dụng khác sử dụng. Với cơ chế này, các lâp trình viên, các nhà phát triển phần mềm dễ dàng xây dựng những ứng dụng mới dựa trên những chức năng được cung cấp sẵn bởi các automation server. Automation thể hiện rõ các khía cạnh kỹ thuật trong lập trình hướng đối tượng ở mức ứng dụng như : tính dùng lại (reusability), tính đóng gói (encapsulation). Xây dựng phần mềm quản lý ngân hàng câu hỏi trắc nghiệm tuyển sinh đại học 75 Rất nhiều ứng dụng thương mại, chẳng hạn như Microfsoft Office (bao gồm toàn bộ các sản phẩm như Word, Excel, PowerPoint, Access, ...) hay Microsoft Visual C++, cho phép điền khiển tự động hóa nhiều chức năng của chúng. Thí dụ ta có thể sử dụng các macro VBScript để điều khiển tự động hóa việc build, chỉnh sửa code, hay debug ... 5.1.2 Automation với Microsoft Office 2003 Mỗi ứng dụng của bộ Microsoft Office 2003 đều có các đặc điểm cho phép chúng ta tạo các giải pháp riêng. Chẳng hạn, Microsoft Office Excel cung cấp các công cụ toán học, công cụ phân tích và công cụ báo cáo .... trong khi đó Microsoft Office Word cho phép tạo và quản lý các tài liệu, theo dõi phiên bản các tài liệu giữa nhiều nhóm người sử dụng, tạo các form và template ... Các ứng dụng Office khác cũng đều có khả năng mạnh mẽ như vậy. Ta có thể tích hợp các đặc điểm của các ứng dụng Office vào trong chính ứng dụng của chúng ta. Automation là một kỹ thuật quan trọng trong việc tích hợp các đặc điểm của Office vào trong ứng dụng. 5.1.2.1 Automation với Microsoft Office Word 2003 Các đối tượng Microsoft Office Word 2003 được sắp xếp theo thứ tự phân cấp, và 2 lớp chính ở vị trí cao nhất trong cây phân cấp là lớp Application(lớp ứng dụng) và lớp Document (lớp tài liệu). Hai lớp này rất quan trọng bởi vì hầu hết mọi thao tác khi xử lý thì lúc nào chúng ta cũng xử lý trên ứng dụng Word hay xử lý trên các tài liệu Word. Mô hình đối tượng Word tượng tư như giao diện sử dụng của chương trình. Đối tượng Application đại diện cho toàn bộ ứng dụng, mỗi đối tượng Document đại diện cho một tài liệu Word đang được xử lý, đối tượng Paragraph tương ứng với mỗi đoạn trong tài liệu, và các lớp khác cũng tương tự như vậy. Mỗi đối tượng này đề có các phương thức và thuộc tính cho phép thao tác và giao tiếp với chúng. Mô hình các đối tượng chính của Word Xây dựng phần mềm quản lý ngân hàng câu hỏi trắc nghiệm tuyển sinh đại học 76 Hình 15. Mô hình đối tượng Word ¾ Application : đại diện cho ứng dụng Word, là cha của tất cả mọi loại đối tượng. Ta có thể sử dụng hàm và các thuộc tính của nó điều khiển chương trình Word. ¾ Document : là đối tượng chính của việc lập trình với Word. Khi mở hay tạo mới một tài liệu Word, thì một đối tượng Document cũng được tạo tương ứng và được thêm vào tập hợp Documents trong Word. Tài liệu đang được mở gọi là tài liệu hiện hành và được truy xuất thông qua thuộc tính ActiveDocumnt của đối tượng Application. ¾ Selection : đại diện cho một vùng dữ liệu đang được chọn. Khi thực hiện các thao tác soạn thảo trên Word, chẳng hạn như tô đậm văn bản, ta chọn hay đánh dấu đoạn văn bản và áp dụng định dạng. Đối tượng Selection luôn tồn tại trong tài liệu. Nếu không có gì được chọn thì nó đại diện cho vị trí của con trỏ hiện tại . ¾ Range : đại diện cho các vùng kề nhau trong tài liệu, được xác định bằng vị trí ký tự đầu tiên và vị trí ký tự kết thúc. Ta có thể có nhiều đối tượng Range trong cùng 1 tài liệu. Đối tượng Range có các đặc điểm sau : o Nó có thể chỉ là vị trí con trỏ hiện tại, hay là một phạm vi văn bản, hay là toàn bộ văn bản. Xây dựng phần mềm quản lý ngân hàng câu hỏi trắc nghiệm tuyển sinh đại học 77 o Nó bao gồm các ký tự không được “hiển thị” như khoảng cách, tab, ký tự đánh dấu paragraph o Nó có thể là vùng văn bản đang được chọn, hay có thể là vùng văn bản khác với vùng văn bản đang được chọn. o Không được lưu trữ với tài liệu và chỉ tồn tại khi chạy mã lập trình. ¾ Bookmark : đối tượng Bookmark tương tự như đối tượng Range ở chỗ nó đại diện cho một vùng dữ liệu kề nhau, với vị trí đầu và vị trí cuối. Ta sử dụng Bookmark để đánh dấu một vị trí trong tài liệu, hay như là một đối tượng chứa văn bản trong tài liệu. Bookmark có thể chỉ là vị trí con trỏ hiện tại hoặc là toàn bộ tài liệu. Bạn có thể có nhiều Bookmark trong 1 tài liệu. Bookmark có những đặc điểm sau làm cho nó khác biệt với đối tượng Range : o Ta có thể đặt tên cho Bookmark o Bookmark được lưu với tài liệu, vì thế nó không mất đi ngay cả khi không chạy mã lập trình hoặc đã đóng tài liệu. o Mặc định, Bookmark được ẩn, nhưng có thể làm cho hiển thị bằng cách thiết lập thuộc tính ShowBookMarks của đối tượng View thành giá trị True.(Đối tượng View là thành viên của đối tượng Application và Document) 5.1.2.2 Automation với Microsoft Excel Word 2003 Để phát triển ứng dụng sử dụng Microsoft Office Excel 2003, chúng ta phải tương tác với các đối tượng trong mô hình đối tượng của Excel. Trong hầu hết các phần, ta sẽ thấy rằng mô hình đối tượng này tương ứng với giao diện sử dụng, điều này cũng giống với việc sử dụng mô hình đối tượng trong Microsoft Office Word 203. Các lớp đối tượng chính : ¾ Application : Đối tượng Application đại diện cho ứng dụng Excel. Đối tượng Application cung cấp rất nhiều thông tin về : ứng dụng đang chạy, các Xây dựng phần mềm quản lý ngân hàng câu hỏi trắc nghiệm tuyển sinh đại học 78 tùy chọn được áp dụng vào thể hiện đó, các đối tượng hiệnt tại đang được người sử dụng mở ... ¾ WorkBook : Đối tượng Workbook đại diện một workbook trong ứng dụng Excel. Nhiều biến, thuộc tính thành viên của lớp Application cũng chính là biến, thuộc tính của lớp Workbook. Như vậy, có thể sử dụng thuộc tính để tương tác với một workbook được chỉ định hoặc với workbook hiện hành. ¾ Worksheet : Tương ứng với sheet trong 1 Workbook. Mặc dù lớp Worksheet cung cấp một lượng lớn các hàm, biến, thuộc tính nhưng hầu hết đều tương tự như các hàm, biến, thành phần của 2 lớp Application và Workbook. ¾ Range : Đối tượng Range là đối tượng mà bạn sẽ sử dụng nhiều nhất trong ứng dụng Excel. Trước khi thao tác với các vùng trong Excel, bạn phải chỉ định chúng như là một đối tượng Range và sử dụng với các phương thức, thuộc tính của đối tượng Range này. Một đối tượng Range có thể là một ô, một dòng, một cột hay là một tập hợp các ô (có thể kề nhau hay không kề nhau), hay thậm chí là một nhóm các ô trên các sheet khác nhau. Xây dựng phần mềm quản lý ngân hàng câu hỏi trắc nghiệm tuyển sinh đại học 79 5.2 Thực hiện 5.2.1 Cách tổ chức trong lập trình Kiến trúc phần mềm được xây dựng theo cơ chế 3 tầng : - Tầng giao tiếp với người sử dụng : Tương ứng với tầng này là thư mục ManHinh - Tầng giao tiếp với bộ nhớ phụ : Tương ứng với tầng này là các thư mục LuuTru - Tầng xử lý : là tầng trung gian giao tiếp giữa 2 tầng trên, thực hiện các xử lý quan trọng như : đọc câu hỏi từ tập tin Word, kết xuất câu hỏi, xáo trộn câu hỏi, kết xuất đề thi ... 5.2.2 Các công thức được sử dụng - Công thức tính độ khó câu trắc nghiệm : - Công thức tính độ phân cách câu trắc nghiệm : sử dụng công thức tương quan điểm nhị phân - Công thức tính độ tin cậy của bài trắc nghiệm 5.2.3 Qui tắc đặt tên các đối tượng STT Tên đối tượng Cách đặt tên Ví dụ r = kk – 1 ) pq - 1( 2σ ∑ D = ]Y)( - Y][NX)( - X[N 2222 ∑∑∑∑ YX ∑∑∑ - XYN Độ khó câu i = Số người trả lời đúng câu i Tổng số người làm bài trắc nghiệm Xây dựng phần mềm quản lý ngân hàng câu hỏi trắc nghiệm tuyển sinh đại học 80 1 Các đối tượng màn hình MH_ MH_Chinh, MH_TacGia 2 Các đối tượng xử lý XL_ XL_TacGia, XL_Mon 3 Các đối tượng xử lý khác Đặt tên tự do theo ý nghĩa CauTN,CauTNDaLuaChon 4 Các đối tượng lưu trữ LT_ LT_TacGia, LT_Mon Bảng 18. Qui tắc đặt tên các đối tượng 5.2.4 Qui tắc đặt tên cho các điều khiển trong các màn hình Mỗi cửa sổ có thể có nhiều điều khiển. Những điều khiển này có tên mặc định, nhưng nên đặt lại tên để có nhiều mô tả và làm cho ứng dụng của bạn dễ quản lý. Sau đây chúng em xin được trình bày đề nghị những tiền tố cho các điều khiển trên màn hình trong đề tài của mình. STT Tên điều khiển Cách đặt tên Ví dụ 1 Button btn_ btnDongY, btnThoat 2 CheckBox check checkHienThi 3 Grid grid_ gridTacGia, gridMonHoc 4 Label lb_ lbTacGia, lbMonHoc 5 TextBox txt_ txtTacGia, txtMonHoc Bảng 19. Qui tắc đặt tên các điều khiển trên màn hình 5.2.5 Quy tắc đặt tên biến Dưới đây là những mô tả ký hiệu cho các biến thuộc kiểu dữ liệu cơ bản STT Tên kiểu dữ liệu Cách đặt tên Ví dụ 1 Số nguyên i_ iDiem, iDem 2 Boolean b_ bVisible, bXuatMaCauHoi 3 Số thực f_ fDoKho, fDoPhanCach 4 Chuỗi s_ sTacGia, sMonHoc Bảng 20. Quy tắc đặt tên biến Xây dựng phần mềm quản lý ngân hàng câu hỏi trắc nghiệm tuyển sinh đại học 81 5.3 Thực nghiệm và kiểm tra • Dữ liệu thử nghiệm là một bài trắc nghiệm gồm 10 câu • Kiểm tra trên 10 thí sinh • Các bài làm của thí sinh hoàn toàn độc lập với nhau • Dưới đây là đáp án và bài làm của các thí sinh: Câu hỏi 1 2 3 4 5 6 7 8 9 10 Đáp án A B D B A C C A D B Thí sinh 1 A B D B A C C B D B Thí sinh 2 A B D B A C C A D B Thí sinh 3 A B D A A C B A D B Thí sinh 4 A B D C B B C A B B Thí sinh 5 C B D B A B B B C A Thí sinh 6 A C D B A C A D A B Thí sinh 7 A C D C B C B B C A Thí sinh 8 B B C A B D A A D C Thí sinh 9 D B C B A A A B A B Thí sinh 10 A B A B B D A B D B Bảng 21. Bài làm của các thí sinh Xây dựng phần mềm quản lý ngân hàng câu hỏi trắc nghiệm tuyển sinh đại học 82 • Tính độ khó và độ phân cách câu trắc nghiệm 1: ™ Lập bảng tính toán giá trị cần thiết: Thí sinh Tổng điểm (Y) Điểm câu trắc nghiệm 1(X) X2 Y2 XY 1 9 1 1 81 9 2 10 1 1 100 10 3 8 1 1 64 8 4 6 1 1 36 6 5 4 0 0 16 0 6 6 1 1 36 6 7 3 1 1 9 3 8 3 0 0 9 0 9 4 0 0 16 0 10 5 1 1 25 5 Tổng 58 7 7 392 47 Bảng 22. Điểm bài làm và điểm câu trắc nghiệm 1 ™ Tính độ khó câu trắc nghiệm 1[ 2.5.1.2 ]: ™ Tính độ phân cách câu trắc nghiệm 1[ 2.5.2.2.2 ]: Độ khó câu 1 = Số người trả lời đúng câu i Tổng số người làm bài trắc nghiệm = N X∑ = 10 7 = 0.7 D = ]Y)( - Y][NX)( - X[N 2222 ∑∑∑∑ = ]58 - 392 x ][107 - 7 x 10[ 22 10 x 47 – 7 x 58 = 0.59 YXXYN ∑∑−∑ Xây dựng phần mềm quản lý ngân hàng câu hỏi trắc nghiệm tuyển sinh đại học 83 • Tính toán tương tự cho các câu trắc nghiệm còn lại ta được độ khó và độ phân cách của các câu trắc nghiệm như sau: Câu trắc nghiệm Độ khó Độ phân cách 1 0.7 0.59 2 0.8 0.28 3 0.7 0.5 4 0.6 0.28 5 0.6 0.54 6 0.5 0.59 7 0.3 0.7 8 0.4 0.33 9 0.5 0.51 10 0.7 0.68 Bảng 23. Độ khó và độ phân cách của các câu trắc nghiệm Xây dựng phần mềm quản lý ngân hàng câu hỏi trắc nghiệm tuyển sinh đại học 84 Tính độ tin cậy của bài trắc nghiệm[ 2.6.2.4 ] Câu Độ khó (p) q = 1 - p pq 1 0.7 0.3 0.21 2 0.8 0.2 0.16 3 0.7 0.3 0.21 4 0.6 0.4 0.24 5 0.6 0.4 0.24 6 0.5 0.5 0.24 7 0.3 0.7 0.21 8 0.4 0.6 0.24 9 0.5 0.5 0.25 10 0.7 0.3 0.21 Tổng 2.22 Bảng 24. Tính pq 2σ = N 2Y∑ - ( Y∑ )2 N(N - 1) = 10 x 392- 582 10 x 9 = 6.18 r = kk – 1 ) pq - 1( 2σ ∑ = 10 9 ) 18.6 2.22 - 1( = 0.71 Xây dựng phần mềm quản lý ngân hàng câu hỏi trắc nghiệm tuyển sinh đại học 85 Chương 6. Kết luận 6.1 Những kết quả đạt được ¾ Về chức năng quản lý câu trắc nghiệm : có thể quản lý tốt số lượng lớn các câu trắc nghiệm thuộc hầu hết các môn học (Toán, Lý, Hóa, Anh văn ...) và các lĩnh vực khác nhau (giáo dục, xã hội, tâm lý, kinh tế ...) ¾ Về chức năng soạn thảo câu trắc nghiệm, kết xuất câu trắc nghiệm : o Người sử dụng soạn câu trắc nghiệm trực tiếp trên tập tin Word vì thế có thể soạn với định dạng bất kỳ, nội dung bất kỳ : có thể sử dụng được tất cả các loại ký hiệu toán học, hóa học, vật lý, hình vẽ ... mà Microsoft Word có hỗ trợ. o Người sử dụng có thể kết xuất câu trắc nghiệm ra trên tập tin Word với cấu trúc, định dạng và nội dung tương tự với cấu trúc, định dạng, nội dung đã được soạn thảo ban đầu. ¾ Về chức năng soạn dàn bài trắc nghiệm (soạn đề thi) : o Hộ trợ người sử dụng lập dàn bài trắc nghiệm theo đúng yêu cầu cần có của một dàn bài trắc nghiệm : phân loại theo khối thi, môn thi, nội dung môn học, các mục tiêu của môn học, loại câu hỏi, độ khó, độ phân cách ... o Chức năng được xây dựng với hệ thống phân cấp quen thuộc, gần gũi và dễ dàng sử dụng. ¾ Về chức năng kết xuất đề thi : o Hỗ trợ tốt trong việc xáo trộn đề (xáo trộn thứ tự câu hỏi, xáo trộn thứ tự các phương án trả lời trong câu hỏi) với tỉ lệ trùng cho phép giữa các đề được chỉ định bởi người sử dụng o Hỗ trợ tốt việc xáo trộn dạng câu hỏi phức hợp (dạng câu hỏi : Câu A và C đúng), một chức năng mà hiện nay, hầu như chưa có chương trình nào có thể xử lý được. Xây dựng phần mềm quản lý ngân hàng câu hỏi trắc nghiệm tuyển sinh đại học 86 o Người sử dụng có thể chỉ định số đề thi sẽ được phát sinh, định dạng đánh số thứ tự câu hỏi, đánh số các phương án trả lời .... o Kết xuất tốt ra file Word các đề thi, bảng trả lời cho thí sinh, bảng đáp án tương ứng với các đề thi ... o Khả năng tùy biến định dạng cao vì tập tin được kết xuất theo Template (.dot) của Microsoft Word, khi người sử dụng có nhu cầu thay đổi chỉ cần thay đổi tập tin Template (.dot) tương ứng ¾ Về chức năng đánh giá : o Hỗ trợ việc kết xuất bảng đáp án và bảng nhập kết quả làm bài của thí sinh ra tập tin Excel o Người sử dụng nhập kết quả làm bài vào bảng nhập kết quả và sử dụng chương trình để chấm điểm bài làm và đánh giá các độ đo của các câu trắc nghiệm đã được chọn trong đề thi 6.2 So sánh với một số chương trình liên quan Hiện nay, ở Việt Nam, có rất ít hoặc hầu như không có bất cứ chương trình nào hỗ trợ quản lý các câu trắc nghiệm. Theo sự tìm hiểu của chúng em thì chính thức, có một nhóm phát triển của Trung tâm phát triển Công nghệ Thông tin của Trường Đại học Sư phạm Thành phố Hồ Chí Minh là đã và đang phát triển một hệ thông tương tự, tên gọi là TQS (Test Question System). Chúng em xin được so sánh và đánh giá hệ thống đã xây dựng với hệ thống này. Xây dựng phần mềm quản lý ngân hàng câu hỏi trắc nghiệm tuyển sinh đại học 87 Chức năng, đặc điểm TQS Chương trình của nhóm đã phát triển ™ Hỗ trợ 2 dạng câu trắc nghiệm đa lựa chọn và câu trắc nghiệm đúng sai Có Có ™ Quản lý, phân loại theo nội dung 1 cấp nội dung 2 cấp nội dung ( đúng theo các tài liệu lý thuyết trắc nghiệm) ™ Quản lý các mục tiêu của câu trắc nghiệm Không Có ™ Hình thức nhập câu hỏi vào ngân hàng dữ liệu - Hỗ trợ nhập trên chương trình (chỉ nhập được các nội dung đơn giản) Có Không - Hỗ trợ nhập từ file Word Có, nhưng xử lý còn đơn giản, không thể nhập được các đối tượng phức tạp như công thức toán học, hóa học, hình ảnh ... tích hợp ngay trong câu trắc nghiệm. Hỗ trợ tốt việc soạn thảo câu hỏi với nội dung bất kỳ - Hỗ trợ nhập phương án trả lời dạng phức hợp (là dạng câu hỏi : Câu A, B đều đúng hoặc Câu A, C đều sai) Không hổ trợ Hỗ trợ và đã xử lý, cập nhật lại phương án trả lời phức hợp sau khi đã xáo trộn các phương án trả lời trong quá trình trộn đề ™ Hỗ trợ kết xuất ra file Word Không hỗ trợ Hỗ trợ kết xuất đầy đủ với các template mà người dùng có thể tùy biến trước hoặc sau khi kết xuất ™ Hỗ trợ việc soạn dàn bài trắc nghiệm Không hỗ trợ Hỗ trợ soạn dạng bài trắc nghiệm với cây phân cấp, dễ quản lý, thân thiện với người sử dụng. ™ Hỗ trợ chấm điểm bài thi Có. Người sử dụng nhập bài làm thí sinh bằng cách Có. Người sử dụng nhập bài làm của thí sinh vào Xây dựng phần mềm quản lý ngân hàng câu hỏi trắc nghiệm tuyển sinh đại học 88 sử dụng chuột chọn kết quả bài làm thí sinh trên màn hình tập tin Excel, chấm điểm ngay trên tập tin Excel. Có thể điều chỉnh lại module đọc tập tin để thích hợp với output của các máy chấm điểm tự động. ™ Hỗ trợ đánh giá câu trắc nghiệm Có (áp dụng công thức Pearson ) Có (áp dụng công thức Pearson ) Bảng 25. Bảng so sánh chức năng của đề tài với chương trình đã được phát triển 6.3 Các hướng phát triển Trong phạm vi một luận văn Đại học, luận văn cơ bản đã đạt được các yêu cầu đặt ra. Tuy nhiên, các kết quả đạt được vẫn còn thiếu so với hiện trạng thực tế do hạn chế về thời gian. Trong thời gian tới, nếu có điều kiện, luận văn sẽ cố gắng phát triển các chức năng sau : - Hỗ trợ đầy đủ các hình thức trắc nghiệm khác như : Câu trắc nghiệm ghép cặp, câu trắc nghiệm điền khuyết. - Kết xuất các bảng đáp án, bảng trả lời tự động phù hợp với máy chấm điểm tự động hoặc các phần mềm chấm điểm. 6.4 Nhận xét Luận văn đã xây dựng thành công một chương trình quản lý hệ thống ngân hàng câu hỏi trắc nghiệm. Việc xây dựng chương trình được thực hiện theo qui trình công nghệ phần mềm hướng đối tượng, theo mô hình ba lớp. Chúng tôi đã kết hợp được các công việc liên quan đến vấn đề thi trắc nghiệm như soạn đề thi trắc nghiệm, chọn lọc câu hỏi, đánh giá, cập nhật lại hệ thống câu hỏi với mục đích làm cho hệ thống ngân hàng câu hỏi ngày càng tốt hơn, đáp ứng được yêu chất lượng về đề thi, cũng như yêu cầu phân loại thí sinh của các kỳ thi tuyển. Bên cạnh đó chúng tôi cũng cố gắng chuẩn hóa tối đa các thao tác trong chương trình so với các thao tác trong các chương trình ứng dụng quen thuộc trên máy tính như Microsoft Excel, Microsoft Visio, Microsoft Access, .... đặc biệt, cho phép người dùng soạn thảo các Xây dựng phần mềm quản lý ngân hàng câu hỏi trắc nghiệm tuyển sinh đại học 89 câu trắc nghiệm bằng chính chương trình Microsoft Word 2003, một chương trình rất thân thiện và quen thuộc đối với tất cả những người sử dụng máy tính. Chính vì sử dụng Microsoft Word làm trình soạn thảo câu trắc nghiệm, mà người sử dụng có thể nhập nội dung của file Word với nội dung bất kỳ, định dạng bất kỳ : có thể chèn các công thức toán học, công thức hóa học, hình ảnh, biểu tượng, ký hiệu chuyên ngành ... mà không sợ bị mất định dạng hoặc không hiển thị được khi kết xuất ra đề thi. Đây là điều mà hầu hết các chương trình về trắc nghiệm chưa làm được. Chương trình có khả năng mở rộng thành một hệ thống lớn hỗ trợ nhiều hình thức câu hỏi trắc nghiệm khác nhau từ nhiều nguồn câu hỏi. Có thể sử dụng được cho bất cứ nhu

Các file đính kèm theo tài liệu này:

  • pdfXây dựng phần mềm quản lý ngân hàng câu hỏi trắc nghiệm tuyển sinh đại học.pdf