Đặc biệt trong công tác giáo dục, việc tin học hóa góp phần nâng cao chất lượng dạy và học, một trong những ứng dụng quan trọng đó là ứng dụng tin học hóa trong thi trắc nghiệm để đảm bả
Trang 1LỜI CẢM ƠN
Sau một thời gian thực hiện khóa luận tốt nghiệp, đến nay công việc liên quan đến khóa luận đã được hoàn tất Trong suốt thời gian thực hiện khóa luận em đã nhận được rất nhiều sự giúp đỡ Ở phần đầu của khóa luận này cho phép em gửi lời cảm ơn chân thành và sâu sắc đến những người đã giúp
đỡ em
Đầu tiên, em xin gửi lời cảm ơn chân thành đến quý Thầy, Cô khoa Công nghệ Thông tin trường Đại học Sư phạm Hà Nội 2 đã tận tình giảng dạy, truyền đạt những kiến thức, kinh nghiệm quý báu và đã khích lệ cho em trong suốt quá trình học tập tại khoa
Em xin gửi lời cảm ơn sâu sắc đến Thầy Trịnh Đình Vinh, người đã tận tình hướng dẫn, động viên, và giúp đỡ em trong suốt thời gian qua, cho em sự bình tĩnh và tự tin, giúp em rút ra nhiều bài học kinh nghiệm quý báu mỗi khi
em vấp phải những khó khăn Em khó có thể hoàn thành được đề tài này nếu không nhờ sự tận tình chỉ bảo của thầy
Và em xin chân thành cảm ơn đến tất cả anh, chị, bạn bè đã và đang động viên, chia sẻ, giúp đỡ em trong suốt thời gian học tập cũng như thực hiện khóa luận này
Cuối cùng là lời cảm ơn đặc biệt gửi đến gia đình của em, những người
đã tiếp thêm cho em sức mạnh, luôn luôn che chở, yêu thương, bên cạnh em mỗi khi em gặp khó khăn
Em xin chân thành cảm ơn!
Hà Nội, tháng 5 năm 2012
Vũ Trà Giang
Trang 2LỜI CAM ĐOAN
Đề tài khóa luận “ Chương trình tổ chức quản lý thi trắc nghiệm ” sau
một thời gian nghiên cứu đã được hoàn thành và thu được một số kết quả nhất định Vì vậy, em xin cam đoan:
Đề tài là công trình nghiên cứu do cá nhân em thực hiện, không sao chép dưới bất kì hình thức nào, và khoá luận được thực hiện dưới sự hướng dẫn và chỉ bảo tận tình của thầy giáo Trịnh Đình Vinh
Kết quả thu được trong đề tài hoàn toàn trung thực, không trùng với kết quả của những tác giả khác
Nếu sai, em xin chịu toàn bộ trách nhiệm
Hà Nội, tháng 5 năm 2012
Người cam đoan
Vũ Trà Giang
Trang 3MỤC LỤC
Trang
Lời cảm ơn
Lời cam đoan
Lời nói đầu 1
Bố cục khóa luận 3
Chương 1: Mở đầu 4
1.1 Yêu cầu thực tế và lý do chọn đề tài 4
1.2 Mục đích và nhiệm vụ nghiên cứu 5
1.2.1.Mục đích 5
1.2.2.Nhiệm vụ, yêu cầu của hệ thống 5
1.3 Phạm vi nghiên cứu của đề tài 6
1.4 Giới thiệu quy trình làm việc của chương trình 6
1.5 Ý nghĩa khoa học và thực tiễn của đề tài 8
Chương 2: Cơ sở lí thuyết chung 9
2.1 Giới thiệu về ngôn ngữ lập trình Visual Basic.NET 9
2.1.1 Tổng quan về ngôn ngữ 9
2.1.2 Cấu trúc của một ứng dụng 10
2.1.3 Chúng ta có thể làm gì với VB.NET 11
2.1.4 Tóm tắt ngôn ngữ VB.NET 12
2.1.5 Đối tượng không thể thiếu trong ứng dụng CSDL ADO.NET 21
2.1.6 Thiết kế giao diện 23
2.2 Giới thiệu về Microsoft Access 29
2.2.1 Tổng quan về hệ quản trị cơ sở dữ liệu Access 29
2.2.2 Một số khái niệm 29
2.2.3 Các mối quan hệ 30
2.3 Tổng quan về trắc nghiệm 31
Trang 4Chương 3: Phân tích và thiết kế hệ thống 33
3.1 Khảo sát hiện trạng hệ thống 33
3.1.1 Khảo sát hệ thống thi trắc nghiệm kiểu cũ 33
3.1.2 Yêu cầu hệ thống 36
3.2 Sơ đồ phân cấp chức năng 40
3.3 Sơ đồ luồng dữ liệu mức khung cảnh 45
3.4 Sơ đồ luồng dữ liệu mức đỉnh 46
3.5 Sơ đồ luồng dữ liệu mức dưới đỉnh 49
3.5.1 Chức năng đăng nhập hệ thống 49
3.5.2 Chức năng sinh viên thi 50
3.5.3 Chức năng quản lý tài khoản 51
3.5.4 Chức năng quản lý câu hỏi 52
3.5.5 Chức năng quản lý lớp học 53
3.5.6 Chức năng quản lý thi, điểm 54
3.6 Thiết kế chương trình 55
3.6.1 Mô hình thực thể liên kết 55
3.6.2 Thiết kế cơ sở dữ liệu 58
3.7 Thiết kế giao diện 61
Chương 4 Kết quả thực hiện chương trình 62
4.1 Giới thiệu chương trình 62
4.2 Giới thiệu một số chức năng quản lý của hệ thống chương trình 62
4.2.1 Form load, form mở đầu 62
4.2.2 Form đăng nhập hệ thống 64
4.2.3 Form quản lý câu hỏi 67
4.2.4 Form quản lý tạo bộ đề 68
4.2.5 Form quản lý tài khoản 69
4.2.6 Form quản lý thi, in đề thi – đáp án 70
4.2.7 Form quản lý lớp học 74
Trang 54.2.8 Form quản lý điểm 74
4.2.9 Form thi 76
Kết luận và hướng phát triển 77
Tài liệu tham khảo 79
Phụ lục 80
Trang 6DANH MỤC HÌNH VẼ
Trang
Hình 1: Cách thức điều khiển ADO Data để kết nối ứng dụng với CSDL 23
Hình 2: Trang dự án 24
Hình 3: Cửa sổ thiết kế 25
Hình 4: Hộp công cụ 28
Hình 5: Sơ đồ phân cấp chức năng chương trình tổ chức thi trắc nghiệm 41
Hình 6: Sơ đồ phân cấp chức năng của quản lý câu hỏi 42
Hình 7: Sơ đồ phân cấp chức năng của quản lý bộ đề 43
Hình 8: Sơ đồ phân cấp chức năng của quản lý tài khoản 43
Hình 9: Sơ đồ phân cấp chức năng của quản lý thi 44
Hình 10: Sơ đồ phân cấp chức năng của quản lý lớp học 44
Hình 11: Sơ đồ phân cấp chức năng của quản lý điểm, kết quả 45
Hình 12 Sơ đồ luồng dữ liệu mức khung cảnh 46
Hình 13: Sơ đồ luồng dữ liệu mức đỉnh 48
Hình 14: Sơ đồ mức đỉnh của chức năng đăng nhập 49
Hình 15: Sơ đồ mức đỉnh của chức năng sinh viên thi 50
Hình 16: Sơ đồ mức đỉnh của chức năng quản lý tài khoản 51
Hình 17: Sơ đồ mức đỉnh của chức năng quản lý câu hỏi, đề thi 52
Hình 18: Sơ đồ mức đỉnh của chức năng quản lý lớp học 53
Hình 19: Sơ đồ mức đỉnh của chức năng thi, điểm 54
Hình 20: Mô hình thực thể liên kết 57
Hình 21: Relationship thiết lập quan hệ giữa các bảng dữ liệu 60
Hình 22: Form load hệ thống 63
Hình 23: Form mở đầu của hệ thống 63
Hình 24: Sơ đồ mô tả thuật toán đăng nhập của hệ thống 64
Trang 7Hình 25: Form đăng nhập giáo viên 65
Hình 26: Form đăng nhập sinh viên 66
Hình 27: Form quản lý câu hỏi 67
Hình 28: Form tạo đề thủ công 68
Hình 29: Form tạo đề tự động 69
Hình 30: Form quản lý tài khoản giáo viên 69
Hình 31: Form quản lý tài khoản sinh viên 70
Hình 32: Form quản lý thi 71
Hình 33: Danh sách sinh viên dự thi 72
Hình 34: Form in đề thi – đáp án 72
Hình 35: Đề thi 73
Hình 36: Đáp án 73
Hình 37: Form quản lý lớp học 74
Hình 38: Form quản lý điểm thi 75
Hình 39: In kết quả sinh viên thi theo ngày 75
Hình 40: Form thi 76
Trang 8~ 1 ~
LỜI NÓI ĐẦU
Ngày nay, chúng ta đang sống trong một thế giới có nền khoa học phát triển rất hiện đại Thế kỷ 20 là thế kỷ của công nghệ thông tin nói chung và của tin học nói riêng Đó là một trong những thành tựu vĩ đại nhất mà con người đã đạt được trong thiên niên kỷ này Tin học giữ vai trò đặc biệt quan trọng trong các hoạt động của toàn nhân loại Nhân loại ứng dụng tin học vào phục vụ cho nghiên cứu khoa học, cho công nghệ sản xuất, phục vụ cho ngành quản lý kinh tế, sản xuất kinh doanh, du lịch, y tế tạo điều kiện cho nền sản xuất xã hội ngày càng phát triển đồng thời giảm bớt đáng kể sức lao động của con người, đưa mức sống con người ngày càng cao hơn
Ở Việt Nam, tin học cũng đang hoà nhập với thế giới để bắt kịp, sánh vai cùng với sự phát triển chung của các nước năm châu Máy vi tính đã và đang dần dần được sử dụng rộng rãi ở hầu hết các lĩnh vực như kinh tế, văn hoá xã hội, giáo dục, y tế, quốc phòng Tin học đã giúp cho các nhà quản lý điều hành công việc một cách có khoa học, chính xác, nhẹ nhàng, mang lại hiệu quả cao hơn so với trước khi chưa đưa máy tính vào Đặc biệt trong công tác giáo dục, việc tin học hóa góp phần nâng cao chất lượng dạy và học, một trong những ứng dụng quan trọng đó là ứng dụng tin học hóa trong thi trắc nghiệm để đảm bảo chất lượng, tính khách quan, chính xác và khoa học của một kỳ thi được đặt lên hàng đầu
Sự kết hợp giữa phương pháp thi trắc nghiệm và tin học không những đáp ứng được các yếu tố trên mà còn giúp tiết kiệm chi phí tổ chức, thời gian công sức của giáo viên đồng thời còn mang lại kết quả nhanh chóng và độ chính xác cao
Với những suy nghĩ, lý do trên và được sự giúp đỡ, góp ý tận tình của
thầy Trịnh Đình Vinh em đã tìm hiểu và xây dựng “Chương trình tổ chức
Trang 9~ 2 ~
quản lý thi trắc nghiệm”, với mong muốn đóng góp một phần kiến thức nhỏ
bé của mình vào công cuộc đổi mới của nền giáo dục nước nhà
Do trình độ còn hạn chế, nên chương trình không tránh khỏi những thiếu sót Vì vậy, em hy vọng nhận được những góp ý, giúp đỡ của thầy cô, anh chị và các bạn để hệ thống thi trắc nghiệm khách quan dần được hoàn thiện và có thể được đưa vào áp dụng trong thực tiễn
Qua đây, em xin gửi lời cảm ơn chân thành và sâu sắc đến thầy
TS.Trịnh Đình Vinh – người thầy đã trực tiếp hướng dẫn, chỉ bảo, giúp đỡ
em trong thời gian qua để em có thể hoàn thành đề tài này
Em xin chân thành cảm ơn!
Hà Nội, tháng 5 năm 2012
Sinh viên thực hiện
Vũ Trà Giang
Trang 10Lời nói đầu
Chương 1 Mở đầu: Trình bày nhu cầu thực tế, khách quan, lý do thực
hiện đề tài, các mục tiêu, nhiệm vụ, phạm vi ứng dụng và trình bày quy trình hoạt động của hệ thống
Chương 2: Cơ sở lý thuyết chung: Giới thiệu về ngôn ngữ Visual
Basic.Net và hệ quản trị cơ sở dữ liệu Access
Chương 3: Phân tích và thiết kế hệ thống
Chương 4: Kết quả thực hiện chương trình
Kết luận và hướng phát triển
Tài liệu tham khảo
Phụ lục
Trang 11~ 4 ~
CHƯƠNG 1
MỞ ĐẦU
1.1 YÊU CẦU THỰC TẾ VÀ LÝ DO CHỌN ĐỀ TÀI
Những năm gần đây sự phát triển của công nghệ thông tin đã và đang làm thay đổi toàn bộ thế giới Mọi ngành nghề, mọi lĩnh vực như kinh tế, khoa học, công nghiệp đang dần dần được tin học hóa và làm cho công việc trở nên
dễ dàng, nhanh chóng và chính xác hơn Đặc biệt là trong lĩnh vực giáo dục
và đào tạo, tin học hóa đã góp phần nâng cao chất lượng dạy và học của giáo viên, sinh viên và học sinh Trong công tác giáo dục đào tạo luôn có những buổi thi để đánh giá chất lượng dạy và học để từ đó biết phát huy những điểm mạnh và khắc phục lỗi, cải tiến phương pháp dạy và học cho phù hợp Tuy nhiên, muốn đánh giá được chính xác thì phải đo lường trước, không có số đo thì không thể đưa ra những nhận xét hữu ích Từ trước đến nay, giáo dục đã
có những hình thức đo lường, đánh giá kết quả học tập của người học như vấn đáp, quan sát, viết Trong đó thì hình thức thi trắc nghiệm là một hình thức
đo lường có tính khách quan, tính chính xác cao và đang dần được áp dụng nhiều trong các kì thi vốn vẫn rất phức tạp trong việc ra đề, chấm thi Tuy nhiên, để có thể áp dụng hình thức thi trắc nghiệm thì cần phải có một tập hợp lớn các câu hỏi trắc nghiệm được gọi là ngân hàng câu hỏi, đáp án, bộ đề và kèm theo đó là phương pháp quản lý hiệu quả các câu hỏi, quá trình tổ chức thi và chấm thi Công việc này đòi hỏi phải tốn nhiều công sức và không đảm bảo sự chính xác cần thiết nếu thực hiện bằng thao tác thủ công Tuy nhiên, với sự giúp đỡ của máy tính các vấn đề đã nêu trên sẽ được giải quyết một cách nhanh chóng với độ chính xác cao và mang lại hiệu quả tốt nhất
Chính vì vậy, là một người sinh viên ngành Công nghệ thông tin em rất
mong muốn tìm hiểu và xây dựng “ Chương trình tổ chức quản lý thi trắc
Trang 12~ 5 ~
nghiệm” để góp phần kiến thức và công sức bé nhỏ của mình vào công cuộc
đổi mới giáo dục, giải quyết được các vấn đề về chất lượng, nhân lực, thời gian và chi phí
1.2 MỤC ĐÍCH VÀ NHIỆM VỤ NGHIÊN CỨU
hệ thống quản lý thi trắc nghiệm với các chức năng như soạn thảo câu hỏi, tạo
và phát sinh các đề thi, đơn giản hoá các khâu thi và chấm thi
Khi chưa ứng dụng công nghệ thông tin vào trong thi trắc nghiệm thì các công việc vẫn được làm thủ công như soạn câu hỏi, đề thi, lập hội đồng thi, lập danh sách sinh viên, danh sách giáo viên, danh sách lớp, dọc phách, tổ chức chấm thi, in ấn, báo cáo kết quả cho sinh viên… Việc lưu trữ một số lượng lớn các câu hỏi, đề thi, bài làm của sinh viên là rất cồng kềnh, không an toàn Lưu trữ ngân hàng câu hỏi, đề thi để phục vụ cho các lần thi sau là không khả quan do có thể bị mất, rách… Và hơn nữa trong công tác chấm thi đánh giá chất lượng của sinh viên không đảm bảo sự khách quan, công bằng
Do vậy, phần mềm sẽ giúp cho giáo viên tổ chức kỳ thi một cách nhanh chóng, hiệu quả, tiết kiệm và đặc biệt có tính khách quan cao trong đánh giá kết quả thi của các sinh viên, đảm bảo sự công bằng chứ không phức tạp và tốn kém như hệ thống thi thủ công kiểu cũ Và giúp cho sinh viên tham gia các kì thi một cách dễ dàng với giao diện thân thiện, dễ sử dụng
1.2.2 Nhiệm vụ, yêu cầu đối với hệ thống
- Hệ thống chương trình sau khi thiết kế phải có tính khả thi, cung cấp một cách đầy đủ thông tin và giao diện thân thiện và dễ sử dụng
Trang 13~ 6 ~
- Lưu trữ ngân hàng câu hỏi, đề thi
- Lưu trữ danh sách sinh viên, giáo viên
- Tự động hoá các công việc tạo đề, chấm thi và xử lý kết quả thi
- Có khả năng cập nhật, bổ sung, sửa đổi hoặc huỷ bỏ thông tin
- Lập các báo cáo, thống kê nhanh chóng, kịp thời, chính xác
- Giảm nhẹ được công việc của giáo viên, gây hứng thú cho sinh viên
và đảm bảo đầy đủ các yêu cầu cần có của thi trắc nghiệm
- Đóng vai trò tích cực nâng cao hiệu quả, chất lượng giáo dục, đào tạo trong nhà trường
- Dễ phát triển: Khi cần có thể thay đổi một số chi tiết nào đó mà ít ảnh hưởng đến hệ thống
1.3 PHẠM VI NGHIÊN CỨU CỦA ĐỀ TÀI
“ Chương trình tổ chức quản lý thi trắc nghiệm” là phần mềm được xây
dựng theo hình thức thi trắc nghiệm trên máy tính cá nhân trong các kỳ thi cử
ở trường đại học
1.4 GIỚI THIỆU QUI TRÌNH LÀM VIỆC CỦA CHƯƠNG TRÌNH
“Chương trình tổ chức quản lý thi trắc nghiệm” được viết bằng ngôn ngữ Visual Basic.Net và hệ quản trị cơ sở dữ liệu là Access
Chương trình được chia làm hai phân quyền như sau:
Đối với sinh viên:
- Nhận tên đăng nhập (mã số sinh viên) và mật khẩu ( mã số sinh viên)
do giáo viên cấp
- Đăng nhập vào hệ thống để thực hiện công việc làm bài thi
Đối với giáo viên:
Trang 14- Quản lý câu hỏi, bộ đề
- Báo cáo, tìm kiếm và thống kê: sinh viên, giáo viên, câu hỏi, kết quả thi của sinh viên theo lớp, theo ngày thi…
Mô tả hoạt động của hệ thống:
Khi giáo viên hoặc sinh viên truy cập vào hệ thống, hệ thống sẽ kiểm tra quyền sử dụng của người dùng, sau đó sẽ trao quyền và các tài nguyên của hệ thống cho người đó
Giáo viên sau khi đã được kiểm tra quyền sử dụng có thể cập nhật ngân hàng câu hỏi, đề thi, xem, xoá, sửa hay bổ sung ngân hàng câu hỏi Các câu hỏi kiểm tra phải phù hợp với nội dung, yêu cầu theo đúng tiêu chuẩn quy định của Bộ Giáo dục và giáo trình của nhà trường đề ra Việc soạn thảo câu hỏi và tạo bộ đề thi sẽ được tiến hành trước khi cho sinh viên vào thi, các công đoạn đó bao gồm:
+ Nhập nội dung câu hỏi
+ Nhập các phương án (có 4 phương án trong đó có một phương án đúng) + Nhập đáp án đúng
+ Nhập số lượng câu trong đề và thời gian làm bài
+ Tạo bộ đề thi ngẫu nhiên
Sau khi dữ liệu được cập nhật đầy đủ thì giáo viên sẽ tổ chức thi cho sinh viên.Công việc thi được tiến hành như sau :
Trang 15~ 8 ~
Sau khi vào phòng thi, giáo viên có thể lựa chọn bộ đề thi cho sinh viên Sau đó, sinh viên đăng nhập vào hệ thống để làm bài thi, trong quá trình điền thông tin máy sẽ kiểm tra tính hợp lệ thông tin của sinh viên đảm bảo không có sinh viên nào được phép làm hai bài trong một lần thi
Sau khi đề được tạo, sinh viên bắt đầu làm bài kiểm tra Sinh viên trả lời các câu hỏi mà hệ thống đưa ra Với mỗi câu hỏi có 4 phương án trả lời, sinh viên sẽ chọn một phương án đúng trong 4 phương án Sinh viên có thể quan sát được toàn bộ các câu hỏi trong bộ đề của mình và có thể làm câu nào trước cũng được Nếu làm xong sinh viên có thể CLICK kết thúc để máy ghi kết quả, nếu quá thời gian quy định thì máy sẽ tự động tính điểm theo thang điểm qui định và thoát khỏi chương trình Mọi truy nhập vào hoạt động làm bài ở thời điểm này đều bị ngăn cấm
Sau khi thi xong đợt thi giáo viên sẽ in kết quả ra giấy có thể xoá toàn
bộ kết quả thi để đảm bảo tính khách quan cho những lần thi sau
Nếu số máy tính không đủ cho sinh viên, hệ thống cho phép giáo viên
in đề thi ra giấy theo dạng trắc nghiệm cho sinh viên làm bài trên giấy
1.5 Ý NGHĨA KHOA HỌC VÀ THỰC TIẾN CỦA ĐỀ TÀI
Phần mềm được xây dựng để đáp ứng yêu cầu cơ bản nhất của một kỳ thi
và làm giảm bớt phần nào khó khăn, phức tạp trong khâu tổ chức một kỳ thi Phần mềm có thể áp dụng cho tất cả các môn thi, kì thi trong các trường trung học,phổ thông, đại học và cao đẳng
Trang 16~ 9 ~
CHƯƠNG 2
CƠ SỞ LÝ THUYẾT CHUNG
2.1 GIỚI THIỆU NGÔN NGỮ LẬP TRÌNH VISUAL BASIC.NET
(VB.NET)
2.1.1 Tổng quan về ngôn ngữ
Visual Basic.NET là con đường nhanh nhất và đơn giản nhất để tạo những ứng dụng cho Microsoft Windows Bất kể bạn là một nhà chuyên nghiệp hay là người mới lập trình Windows thì Visual Basic.NET cung cấp cho bạn một tập hợp các công cụ hoàn chỉnh để nhanh chóng phát triển các ứng dụng Vậy Visual Basic.NET là gì?
Thành phần "Visual" nói đến phương thức dùng để tạo giao diện đồ hoạ người sử dụng (GUI) Thay vì viết những dòng mã để mô tả sự xuất hiện
và vị trí những thành phần giao diện, ta chỉ cần thêm vào những đối tượng đã định nghĩa trước ở vị trí nào đó trên màn hình
Thành phần "Basic" nói đến ngôn ngữ "BASIC" (Beginners All Purpose Symbolic Instruction Code) một ngôn ngữ được dùng bởi nhiều nhà lập trình hơn bất cứ một ngôn ngữ nào khác trong lịch sử máy tính
Thành phần NET là tầng trung gian giữa các ứng dụng và hệ điều hành Tầng NET cung cấp mọi dịch vụ cơ bản giúp ta tạo được công dụng mà ứng dụng đòi hỏi, giống như hệ điều hành cung cấp các dịch vụ cơ bản cho ứng dụng ví dụ như đọc hay viết các tập tin vào đĩa cứng,…
Tóm lại, Visual Basic.NET (VB.NET) là ngôn ngữ khuynh hướng đối tượng do Microsoft thiết kế VB.NET không kế thừa VB6 hay bổ sung, phát triển từ VB6 mà là ngôn ngữ hoàn toàn mới và rất lợi hại, không những lập
Trang 17~ 10 ~
nền tảng vững chắc theo kiểu mẫu đối tượng như các ngôn ngữ lập trình hùng mạnh khác đã vang danh C++, Java mà còn dễ học, dễ phát triển và còn tạo mọi cơ hội hoàn hảo để giúp ta giải đáp những vấn đề khúc mắc khi lập trình Hơn nữa, dù không khó khăn gì khi cần tham khảo, học hỏi hay đào sâu những gì xảy ra bên trong … hậu trường OS, Visual Basic.NET (VB.NET) giúp ta đối phó với các phức tạp khi lập trình trên nền Windows và do đó, ta chỉ tập trung công sức vào các vấn đề liên quan đến dự án, công việc hay doanh nghiệp mà thôi
2.1.2 Cấu trúc của một ứng dụng
Một ứng dụng thực ra là một tập các chỉ dẫn trực tiếp đến máy tính để thi hành một hoặc nhiều tác vụ Cấu trúc của một ứng dụng là phương pháp trong đó các chỉ dẫn được tổ chức, đó là nơi mà chỉ dẫn được lưu giữ và thi hành theo một trình tự nhất định
Vì một ứng dụng Visual Basic.NET, trên cơ bản là một đối tượng, cấu trúc mã đóng để tượng trưng cho các mô hình vật lý Bằng việc định nghĩa những đối tượng chứa mã và dữ liệu Form tượng trưng cho những thuộc tính, quy định, cách xuất hiện và cách xử lý Mỗi Form trong một ứng dụng, có một quan hệ Module form dùng để chứa mã của nó
Mỗi module chứa những thủ tục, sự kiện, đoạn mã Form có thể chứa nhiều điều khiển Tương ứng với mỗi điều khiển trên form có một tập hợp các thủ tục sự kiện trong module đó Một thủ tục để đáp ứng những sự kiện trong những đối tượng khác nhau phải được đặt trong cùng module chuẩn (với tên
có đuôi.BAS) Một lớp module (.cls) được dùng để tạo những đối tượng, có thể được gọi từ những thủ tục bên trong ứng dụng Coi module chuẩn như một điều khiển vì nó chỉ chứa mã
Trang 18~ 11 ~
2.1.3 Chúng ta có thể làm gì với Visual Basic.NET ?
Tạo giao diện người sử dụng: Giao diện người sử dụng có lẽ là thành phần quan trọng nhất đối với một ứng dụng Đối với người sử dụng, giao diện chính là ứng dụng; họ không cần quan tâm đến thành phần mã thực thi bên dưới
Ứng dụng của ta có được phổ biến hay không phụ thuộc vào giao diện
Sử dụng những điều khiển chuẩn của Visual Basic.NET: Sử dụng những điều khiển ấy để lấy thông tin mã của người sử dụng nhập vào và để hiển thị kết xuất trên màn hình Ví dụ: hộp văn bản, nút lệnh, hộp danh sách
Lập trình với đối tượng: Những đối tượng là thành phần chính để lập trình Visual Basic Đối tượng có thể là form, điều khiển, cơ sở dữ liệu
Lập trình với phần hợp thành: Khi cần sử dụng khả năng tính toán của Microsoft Excel, định dạng một tài liệu sử dụng thanh công cụ của Microsoft Word, lưu trữ và xử lý dữ liệu với Microsoft Jet Tất cả những điều này có thể thực hiện bằng cách xây dựng những ứng dụng sử dụng thành phần ActiveX Tuy nhiên người sử dụng có thể tạo ActiveX riêng
Đáp ứng những sự kiện phím và con chuột: Sử dụng phím nóng, kéo và thả chuột như tính năng của OLE
Làm việc với văn bản đồ hoạ: Xử lý văn bản, chèn hình theo ý muốn
Gỡ rối và quản lý lỗi
Xử lý ổ đĩa thư mục và file: Qua phương thức cũ là lệnh Open, Write#
và một tập hợp những công cụ mới như FSO (File System Object)
Thiết kế cho việc thi hành và tính tương thích: Chia sẻ hầu hết những tính năng ngôn ngữ cho ứng dụng
Phân phối ứng dụng: Sau khi tạo xong một ứng dụng ta có thể tự do phân phối cho bất kỳ ai Ta có thể phân phối trên đĩa, trên CD, trên mạng
Trang 19Quy tắc đặt tên biến:
- Tên biến có chiều dài tối đa 255 ký tự
- Phải bắt đầu bằng một chữ cái
- Không đặt các khoảng trống và các ký hiệu (+, - .) trong tên biến
- Không được trùng với từ khoá của ngôn ngữ
- Tránh đặt tên trùng nhau
- Nên khai báo biến trước khi dùng
Phạm vi sử dụng biến: Tuỳ thuộc vào cách bạn khai báo và chỗ bạn đặt dòng lệnh khai báo biến
- Nếu bạn khai báo trong phần General, biến có thể được dùng ở
bất kỳ đoạn lệnh nào trong form và cũng chỉ mất đi khi nào form được giải phóng khỏi bộ nhớ
- Nếu bạn khai báo giữa dòng Sub và End Sub của mã lệnh thì
biến chỉ tồn tại và dùng được trong phạm vi hai dòng đó mà thôi Biến như
vậy gọi là biến riêng hay biến cục bộ (local) Khi kết thúc công việc xử lý
này biến cũng sẽ mất và giá trị của nó cũng không còn nữa
- Nếu bạn dùng từ khoá Public thay cho Dim để khai báo biến,
biến sẽ tồn tại trong suốt thời gian thực hiện chương trình và có thể sử dung
Trang 20~ 13 ~
trong bất kỳ đoạn lệnh nào trong chương trình Biến như vậy được gọi là biến
chung hay biến toàncục (global)
- Bạn có thể dùng từ khoá Private để khai báo các biến riêng như
Dim
Có thể dùng từ khoá Static thay cho Dim nếu bạn muốn sử dụng lại
đoạn lệnh mà biến vẫn còn giữ lại giá trị của lần thực hiện trước
2.1.4.2 Các toán tử trong Visual Basic
*) Các toán tử so sánh (luôn trả về kiểu luận lý: Boolean)
So sánh xem số thứ nhất có lớn hơn số thứ hai không
So sánh xem số thứ nhất có nhỏ hơn số thứ hai không
So sánh xem hai số có bằng nhau không
So sánh xem hai số có khác nhau không
Trang 21Trả về kiểu True nếu cả hai số hạng đều là True, trả về
False nếu một trong hai số hạng là False
Trả về True mếu một trong hai số hạng là True, trả về
False nếu cả hai số hạng đều là False
Trả về True nếu số hạng đó là False, trả về False nếu số hạng đó là True
Trả về True nếu một trong hai số hạng đúng, trả về False
nếu cả hai cùng đúng hoặc cùng sai
2.1.4.3 Cấu trúc tuyển và lặp
*) Cấu trúc tuyển
**) Cấu trúc tuyển If
Cú pháp 1: Cách đơn giản nhất khi làm một quyết định
If (điều kiện) Then
(mã thi hành nếu điều kiện thỏa mãn, nghĩa là = True)
Trang 22~ 15 ~
End If
Cú pháp 2: Quyết định với 2 tình trạng trái ngược nhau
If (điều kiện) Then
(mã thi hành nếu điều kiện thỏa mãn, nghĩa là = True)
Else
(mã thi hành nếu điều kiện không được thỏa mãn, nghĩa là = False)
End If
Cú pháp 3: Quyết định với nhiều tình trạng thay đổi hay khác nhau
If (điều kiện 1) Then
(mã thi hành nếu điều kiện 1 thỏa mãn, nghĩa là điều kiện 1 = True)
ElseIf (điều kiện 2) Then
(mã thi hành nếu điều kiện 2 được thỏa mãn, nghĩa là điều kiện 2 = True)
Else
(mã thi hành khi không điều kiện nào thỏa mãn, nghĩa là điều kiện 1 và điều
kiện 2 đều = False)
Trang 23<Các câu lệnh> 'Thực hiện các câu lệnh này
Loop 'Quay trở về dòng Do While để kiểm tra lại
Cú pháp 2:
Do 'Thực hiện các câu lệnh đến khi nào điều kiện <Các câu lệnh>
Loop Until<Điều kiện> 'Đúng (= True hay khác 0)
**)Cấu trúc For Next
Trang 24~ 17 ~
PublicPrivateConst<Tên hằng>As Kiểu = <giá trị>
Trong đó: Const là từ khoá giá trị cũng có thể là một biểu thức nhưng
các số hạng trong biểu thức đó phải là các hằng đã khai báo hay các giá trị cụ
Hoặc để đặt cách canh cho một nhãn (Label) bạn phải nhớ ba giá trị: 0
canh trái, 1 canh phải, 2 canh giữa Tuy nhiên cũng có thể đặt ra ba hằng có
tên như sau: Left bằng 0, Right bằng 1, Center bằng 2
*) Thủ tục (module)
**) Cách định nghĩa một thủ tục
Một thủ tục trước khi sử dụng nó phải được định nghĩa Dùng từ khoá
Sub để khai báo như sau:
Private/ Public Sub<Tên thủ tục> (Tham số) <Các mã lệnh mà thủ tục thực hiện>
End Sub
- Các method cũng chính là các thủ tục mà luôn gắn với đối tượng
- Các phần mã viết để xử lý cho một sự kiện xảy ra là các thủ tục trong
chương trình
**) Thủ tục có truyền tham số
Trang 25~ 18 ~
Khi một thủ tục được gọi mà có truyền thêm một số giá trị vào, các giá trị này được gọi là các tham số của thủ tục đó Để làm điều này, khi khai báo thủ tục bạn cần ghi thêm nó sẽ nhận bao nhiêu tham số bằng cú pháp sau:
Private/ Public Sub<Tên thủ tục> (<Tên tượng trưng cho
tham số>As<Kiểu>, )
Ví dụ: Các thủ tục như: Xoá, Thêm, Lưu, Thoát, Sửa hầu như xảy ra
trên các Form của chương trình Chúng có cùng cú pháp như sau:
Private Sub Object_Click()
*) Hàm (module)
Khái niệm: Hàm là một đơn thể trong chương trình, tính năng giống như thủ tục nhưng khác ở chỗ sau khi thực hiện phần lệnh của nó sẽ trả về một giá trị kết quả Khi muốn sử dụng hàm, bạn cần biết tên hàm, nó cần những tham
số nào và nó trả về kết quả kiểu nào.Visual Basic có định nghĩa sẵn một số hàm
Cú pháp :
Private| PublicFunction <Tên hàm>(Tham số As Kiểu) As<Kiểu trả về>
Trang 26
Radian = độ *Pi/180 Trả về Cos của một góc Trả về tang của một góc Trả về artang của một góc Trả về phần nguyên của một con số, nếu số là âm Int sẽ trả về con số nguyên đầu tiên nhỏ hơn hoặc bằng con số đó
Fix trả về con số nguyên lớn hơn hoặc bằng con số đó
VD: Int (-8.4) _ -9, Fix (-8.4) _ -8 Trả về một con số nguyên cho biết dấu của con số truyền vào Cụ thể: số>0 trả về 1, số = 0 trả về 0, số <0 trả về -1
Trả về căn bậc hai của số
Trang 27~ 20 ~
Lưu ý: - Có thể dùng hàm như một số hạng trong một biểu thức
- Có thể dùng hàm như một tham số trong câu lệnh gọi hàm hay thủ tục khác
Hàm chuyển đổi kiểu chuỗi và số
Tên hàm Ý nghĩa
Val (chuỗi)
Str (số)
Hàm trả về một con số tương ứng với chuỗi truyền vào
Chuỗi phải là một chuỗi gồm các ký số hợp lệ Hàm tự động
bỏ qua các khoảng trống Khi gặp ký tự không phải ký tự số thì dừng ngay Khi chuỗi ghi một con số có phần lẻ thập phân Val chỉ nhận ra phần thập phân đó dựa vào dấu chấm
VD: X = Val (123.5) ' X bằng 123.5 Hàm trả về một chuỗi ký tự biểu diễn con số truyền vào
Chuỗi trả về luôn có một ký tự đầu tiên ghi dấu trong trường hợp số âm hoặc một khoảng trống trong trường hợp số
Cbyte Byte CLng Long
Ccur Currency CSng Single
Cdate Date CStr String
Trang 28~ 21 ~
Cdbl Double Cvar Variant
Cint Integer CVErr Error
Ví dụ: Một số Hàm đã được dùng trong chương trình như:
- Hàm MsgBox dùng để hiện hộp thông báo lên màn hình
Cú pháp: MsgBox (Thông báo, các button , tiêu đề)
-Function Test_day(ngay As string ) As boolean trong modun được
trình bày ở phần phụ lục
- Các hàm Ucase(String), Cint(số), Trim(string), IsNumeric(string),
Len(string)
2.1.5 Đối tƣợng không thể thiếu trong ứng dụng cơ sở dữ liệu ADO.NET
ADO.NET được thiết kế nhằm tăng tốc độ truy cập và thao tác dữ liệu
trong môi trường đa lớp (n-tier) Hai thành phần chính của ADO.NET là
DataSet và NET Provider
Trang 29~ 22 ~
.NET Provider là một tập các đối tượng trong thành phần NET bao
gồm Connection (Kết nối cơ sở dữ liệu), Command (Lệnh thi hành),
DataReader (Bộ đọc dữ liệu), Datadapter (Kết nối dữ liệu) Khi sử dụng DataSet bạn có thể kết nối nguồn dữ liệu, bước kế tiếp bạn thực hiện truy vấn
một hay nhiều bảng, sau đó yêu cầu hệ thống đóng kết nối
Sử dụng đối tượng DataSet có thể bao hàm một hay nhiều bảng thực hiện bởi DataTable Hỗ trợ DataRelation để kết nối nhiều mẩu tin trong đối tượng DataTable này với đối tượng DataTable khác Cho phép duyệt không
tuần tự nhiều mẩu tin trên bảng dữ liệu, cho phép định hướng một số mẩu tin trên bảng này và một số mẩu tin trên bảng khác Để kết nối cơ sở dữ liệu
VisualBasic.NET sử dụng đối tượng Connection, DataSetcommand
*) Kết nối với một cơ sở dữ liệu
Ta có thể dùng một điều khiển dữ liệu để quản lý kết nối giữa biểu mẫu Visual Basic.NET và một cơ sở dữ liệu VB.NET cung cấp 3 loại điều khiển
dữ liệu một là ADO Data, thường được dùng kết nối với cơ sở dữ liệu trên máy tính cá nhân như là: Microsoft Access, hai là điều khiển Romote Data(RCD), dùng cho dữ liệu Client/ Sever; và điều khiển dữ liệu ADO Data, cho phép ta truy nhập mọi loại dữ liệu, bao gồm nguồn dữ liệu trên máy tính
cá nhân, trên hệ Client/ Sever không thuộc mô hình quan hệ
Vậy ta dùng điều khiển dữ liệu nào? Đối với ứng dụng này chúng tôi dùng ADO Hình sau đây minh hoạ cách thức điều khiển ADO Data để kết nối ứng dụng với một cơ sở dữ liệu
Trang 30~ 23 ~
Hình 1: Cách thức điều khiển ADO Data để kết nối ứng dụng với một cơ
sở dữ liệu
2.1.6 Thiết kế giao diện
2.1.6.1 Trang Dự Án (Projects Page)
Đây là chỗ tạo dự án mới hay mở dự án đã lập trình để sửa đổi Ta chọn New Project để tìm hiểu thêm môi trường lập trình dùng Microsoft Visual Studio.NET
Biểu
mẫu
VB.NET
Các thuộc tính DataSource, DataFile của điều khiển rằng buộc
dữ liệu
Các thuộc tính ConnectionString, RecordSource của điều khiểnADO Data
Cơ sở dữ liệu
với
Trang 31~ 24 ~
Hình 2: Trang dự án
Ta nhấp nút New Project để hiển thị bảng liệt kê các khuôn mẫu cho
ứng dụng (application)
Chọn Visual Basic Project trong window Project Types
Chọn Windows Application trong bảng Template
Đặt tên cho dự án Lưu ý ở đây, tên của dự án cũng là tên ngăn chứa (folder), chứa phụ dự trữ dự án
Nhấp OK
Và sau đó, Microsoft Visual Studio.NET IDE khởi động dự án mới trong phương thức thiết kế (Design Mode)
Trang 32~ 25 ~
Hình 3: Cửa sổ thiết kế 2.1.6.2 Thực đơn và thanh công cụ (Menu và Tool Bar)
Trước khi đào sâu vào cách tạo ứng dụng (application) với Microsoft Visual Studio.NET IDE, thiết tưởng ta cũng cần tìm hiểu các thực đơn (menu)
và công cụ phụ trợ lập trình như sau:
a Thực đơn chính (Main Menu)
Thực đơn (menu) của Microsoft Visual Studio.NET IDE 'biến hóa' tùy
theo công việc đang làm nhưng tổng quát, thực đơn (menu) chính hiển thị bao gồm:
File
Tiêu chuẩn chung cho mọi ứng dụng (application) trong nền Windows File dùng để mở (open) hay đóng (close) các tập tin (files) hay dự án (project)
Edit
Trang 33~ 26 ~
Edit cung cấp các chọn lựa khi soạn nguồn mã và dùng các công cụ lập trình như: Undo, Redo, Cut, Copy, Paste và Delete
View
View cung cấp sư chọn lựa hiển thị các Windows tạo môi trường của IDE
như: Solution Explorer, Properties, Output, Tool Box, Server Explorer
Nếu ta để ý sẽ thấy các Windows này thường nằm 2 bên hoặc bên dưới window thiết kế Form hay soạn nguồn mã.Các windows này cũng có thể hiển
lộ hay thu kín lại nhường chổ cho window thiết kế được rộng rãi
Project
Dùng để quản lý dự án (project) bằng cách thêm vào hay xóa bỏ các tập tin liên hệ
Build
Một lựa chọn quan trọng trong thực đơn là Build cho phép ta xây dựng và
chạy ứng dụng (application) 1 cách độc lập bên ngoài IDE
Trang 34~ 27 ~
Cung cấp nối yêu cầu giúp đỡ với Microsoft Visual Studio.NET documentation hay từ mạng Internet
b Thanh công cụ (Toolbars)
Cách dùng thanh công cụ sẽ được hướng dẫn tùy từng dự án (project) Tuy nhiên, 1 cách tổng quát, thanh công cụ mặc định (default) bao gồm như sau (theo thứ tự từ trái qua phải):
New Project
Add Item
Open File
Save (lưu trữ form hay module đang dùng)
Save All (lưu trữ mọi forms, modules, đang dùng hay đang mở)
Navigate Backward (lướt lui)
Navigate Forwards (lướt tới)
Nút Start để chạy thử ứng dụng trong IDE
Build Configuration (bố trí xây dựng ứng dụng) trong IDE Ở đây, cho
ta biết bố trí hiện dùng là Debug
Truy tìm tập tin (Find in files)
Trang 36~ 29 ~
2.2 HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU ACCESS
2.2.1 Tổng quan về hệ quản trị cơ sở dữ liệu Access
Microsoft Access là hệ quản trị cơ sỡ dữ liệu (Database Management System-DBMS) do hãng Microsoft viết ra được tích hợp trong phần mềm Microsoft Office nhằm hỗ trợ khách hàng có nhu cầu quản lý thông tin của mình thông qua hệ quản trị cơ sỡ dữ liệu này
Đặc điểm của hệ quản trị cơ sỡ dữ liệu Access là dễ sử dụng đối với bất
kì đối tượng nào kể cả người bắt đầu tìm hiểu cho đến những người đã có thời gian làm việc với nó Hệ quản trị cơ sở dữ liệu này cho phép người dùng tạo mới một hệ thống CSDL của mình một cách độc lập và để giao tiếp với một ngôn ngữ lập trình nào đó (chẳng hạn như Visual Basic.Net ) hoặc có thể hỗ trợ người dùng lập trình trực tiếp trên hệ thống này với sự hỗ trợ của ngôn ngữ Visual Basic
Ngoài ra, Microsoft Access còn cho phép làm việc trên hệ thống Internet hoặc Intranet hay phát triển một ứng dụng World Wide Web với một số đặc tính hỗ trợ Import or link HTML file( quan hệ hay liên kết tới một file HTML), Export objects to HTML format ( xuất một đối tượng đến một định dạng HTML), Publish to the Web Wixard( xuất bản đến một đồ thuật Web)
2.2.2 Một số khái niệm
*) Cơ sở dữ liệu là gì?
Cơ sở dữ liệu là một kho chứa thông tin Có nhiều loại cơ sở dữ liệu nhưng phổ biến nhất là kiểu cơ sở dữ liệu quan hệ
Một số cơ sở dữ liệu quan hệ:
- Chứa dữ liệu trong các bảng, được cấu tạo bởi các dòng còn gọi là các mẩu tin, và các cột còn được gọi là các trường
Trang 37~ 30 ~
- Cho phép lấy về (hay truy vấn) các tập hợp dữ liệu con từ các bảng
- Cho phép nối các bảng với nhau cho mục đích truy cập các mẩu tin liên quan với nhau chứa trong các bảng khác nhau
*) Bảng và trường
Các cơ sở dữ liệu được cấu tạo từ các bảng dùng để thể hiện các phân nhóm dữ liệu Bảng có cấu trúc định nghĩa sẵn và chứa dữ liệu phù hợp với cấu trúc này
Bảng: Chứa các mẩu tin là các mẩu dữ liệu riêng rẽ bên trong phân nhóm dữ liệu
Mẩu tin: chứa các trường, mỗi trường thể hiện một bộ phận dữ liệu trong một mẩu tin
*) Thiết kế cơ sở dữ liệu
Để tạo một cơ sở dữ liệu, trước hết ta phải xác định thông tin gì cần theo dõi Sau đó cơ sở dữ liệu, tạo bảng chứa các trường định nghĩa kiểu dữ liệu sẽ có Sau khi tạo ra cấu trúc cơ sở dữ liệu, cơ sở dữ liệu có thể chứa dữ liệu dạng mẩu tin Ta không thể đưa dữ liệu vào mà không có các bảng hay định nghĩa trường vì dữ liệu sẽ không có chỗ để chứa Do đó thiết kế cơ sở dữ liệu cực kỳ quan trọng, nhất là rất khó thay đổi thiết kế một khi đã tạo xong
nó
2.2.3 Các mối quan hệ
Mối quan hệ là một cách định nghĩa chính thức hai bản liên hệ với nhau như thế nào Khi ta định nghĩa một mối quan hệ, ta đã thông báo với bộ máy, cơ sở dữ liệu rằng hai trường trong hai bảng liên quan với nhau
Hai trường liên quan với nhau trong một mối quan hệ là khoá chính và khoá ngoại
*) Quan hệ Một - Một:
Trang 38~ 31 ~
Là loại quan hệ dễ hiểu và dễ thực hiện nhất, bởi vì trong những mối quan hệ như vậy, một bảng sẽ lấy quan hệ của một trường trong một bảng khác, trường liên quan cũng dễ nhận dạng Tuy nhiên quan hệ Một - Một không phải là mối quan hệ thông dụng nhất trong ứng dụng cơ sở dữ liệu Vì hầu như ta không cần biểu diễn mối quan hệ Một - Một với 2 bảng Ta có thể dùng nó để cải tiến khả năng hoạt động, dù vậy ta mất tính linh hoạt khi chứa các dữ liệu liên hệ trong bảng tách biệt
*) Quan hệ Nhiều - Nhiều
Quan hệ Nhiều - Nhiều là bước phát triển của quan hệ Một - Nhiều
2.3 TỔNG QUAN VỀ TRẮC NGHIỆM
Trắc nghiệm là một hoạt động để đo lường năng lực của đối tượng nào
đó nhằm những mục đích xác định Thi trắc nghiệm là hình thức thi mà một
đề thi thường gồm rất nhiều câu hỏi, mỗi câu nêu ra một vấn đề cùng với những thông tin cần thiết sao cho sinh viên chỉ phải trả lời vắn tắt cho từng câu
Trắc nghiệm là một phương pháp đánh giá kết quả học tập của sinh viên, trong đó ảnh hưởng của các yếu tố chủ quan đã được giảm thiểu đến mức tối ưu Điểm nổi bật của phương pháp này là số lượng câu hỏi trong mỗi
đề thi lớn Số câu hỏi càng lớn, độ chính xác của việc đánh giá càng cao Câu hỏi trắc nghiệm sẽ gồm một khái niệm, một nội dung đã có trong chương trình, kèm theo gợi ý để sinh viên trả lời Từ cách gợi ý trả lời, ta sẽ có nhiều
Trang 39~ 32 ~
câu hỏi trắc nghiệm khác nhau Đồng thời trắc nghiệm khách quan cũng được
áp dụng cho nhiều mục đích đánh giá :
- Trắc nghiệm về khả năng riêng biệt của sinh viên nhằm mục đích phân nhóm sinh viên theo sở trường riêng của họ
- Trắc nghiệm xếp hạng : nhằm mục đích phân loại sinh viên theo mức thành tích học tập (khá, giỏi, trung bình )
- Trắc nghiệm chuẩn đoán : nhằm mục đích chuẩn đoán những khâu yếu của quá trình đào tạo
- Trắc nghiệm kiến thức : để đánh giá kết quả học tập của sinh viên Trong đề tài này ta chỉ quan tâm chủ yếu đến trắc nghiệm kiến thức
Trang 40~ 33 ~
CHƯƠNG 3 PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG
3.1 KHẢO SÁT HIỆN TRẠNG HỆ THỐNG
Bài toán của em nhằm thiết kế hệ thống tổ chức quản lý thi trắc nghiệm áp dụng với khoa Công Nghệ Thông Tin – Trường ĐHSP Hà Nội 2 cho các kì thi khác nhau Vì vậy, trước khi xây dựng mô hình hệ thống thi trắc nghiệm kiểu mới, ta hãy khảo sát hệ thống trắc nghiệm kiểu cũ
3.1.1 Khảo sát hệ thống thi trắc nghiệm kiểu cũ
Khi bắt đầu vào mỗi kỳ thi, sau khi xác định được nội dung môn học thi trắc nghiệm, cũng như mức độ kiến thức đề thi cần đưa ra Người giáo viên sẽ lập ra đề thi trắc nghiệm bằng cách xây dựng một số câu hỏi khác nhau, cùng số điểm cho từng câu và thời gian làm bài Tùy vào cách thức ra
đề của mỗi một người, các câu hỏi này có thể được lấy ra từ ngân hàng câu hỏi đã có hoặc được viết mới trực tiếp Phụ thuộc vào quy mô của kỳ thi và số lượng sinh viên tham gia thi mà người giáo viên ra đề sẽ xác định số lượng đề thi cần thiết, với yêu cầu trong hai đề thi bất kỳ có thể có những câu hỏi giống nhau nhưng không được hoàn toàn trùng nhau, đồng thời phải đảm bảo mức
độ kiến thức ở các đề là tương đương nhau
Quá trình thi được tiến hành như sau: Sau khi xác định số lượng sinh viên đủ điều kiện thi, văn phòng khoa sẽ gửi danh sách sinh viên được thi lên phòng đào tạo Sau đó, phòng đào tạo sẽ sắp xếp phòng thi và bố trí lịch thi cho môn học đó Đến đúng ngày thi các sinh viên có đủ điều kiện thi sẽ đến đúng phòng thi để làm bài Người giám thị sẽ kiểm tra thẻ của từng sinh viên
để đảm bảo tính hợp lệ của sinh viên đó cũng như đề phòng tình trạng thi hộ Đến giờ thi, giám thị sẽ phát đề thi cho từng sinh viên và bố trí chỗ ngồi sao cho những sinh viên gần kề nhau không có đề thi trùng nhau Sinh viên làm