Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 19 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
19
Dung lượng
639,81 KB
Nội dung
BỘ CÔNG THƯƠNG CAO ĐẲNG KỸ THUẬT LÝ TỰ TRỌNG THÀNH PHỒ HỒ CHÍ MINH KHOA CÔNG NGHỆ THÔNG TIN LẬP TRÌNH WINDOWS NÂNG CAO Đồ Án Môn Học Chương Trình Thi Trắc Nghiệm Tin Học Đại cương Nhóm SVTH : Trần Thanh Dân Lê Nguyễn Tiến Đạt TP HCM, Ngày 25/12/2014 Lời mở đầu Hiện nay, ứng dụng công nghệ thông tin vấn đề nóng toàn giới Không hoạt động khoa học kỹ thuật, lao động sản xuất mà đặc biệt lĩnh vực đào tạo giáo dụccông nghệ thông tin trở thành công cụ trợ giúp đắc lực Vượt ứng dụng giải tập, phân tích, tính toán thiết kế, học máy tính, mô phỏng, tra cứu , máy tính công cụ để đánh giá kết đào tạo thông qua chương trình thi trắc nghiệm Trong trình đào tạo, đánh giá kết học tập kỳ thi, kiểm tra công việc phải tiến hành thường xuyên, không phần khó khăn cho người quản lý khó bảo đảm độ xác, tính công khách quan người học Do đó, việc cải tiến hệ thống thi, kiểm tra dược nhiều người quan tâm Một xu hướng chung đầy triển vọng, nhiều sở đào tạo giới nước đầu tư nghiên cứu áp dụng thi trắc nghiệm máy tính Sự kết hợp hình thức thi trắc nghiệm tin học đáp ứng yếu tố mà giúp tiết kiệm chi phí tổ chức kỳ thi , thời gian ,công sức giáo viên đồng thời kết đem lại nhanh chóng , xác cao mang tính khách quan Chương trình thi trắc nghiệm tin học đại cương giúp giáo viên tạo đề thi chủ đề tương ứng với đề thi Có thể giúp giáo viên lưu đề mở đề thi, bổ sung them đề mục câu hỏi cho đề thi Giúp sinh luyện tập trước kì thi để đánh giá lực có cách học hiệu trước kỳ thi Giúp sinh viên đánh giá lức than môn học rèn luyện khả nhanh nhạy phương pháp học tập TP HCM , Ngày 25 tháng 12 năm 2014 Nhóm thực Mục lục I GIỚI THIỆU SƠ LƯỢC ĐỀ TÀI Mục đích đề tài - Tạo chương trình thi trắc nghiệm tin học đại cương - Cho phép admin nhập đề chủ đề - Cho phép admin chỉnh sửa chủ đề đề thi - Cho phép Sinh viên thi thử - Cho phép sinh viên thi trắc nghiệm Yêu cầu đặt - Tạo CSDL Acess - Không cho phép sinh viên chỉnh sửa đề thi - Đề thi ngẫu nhiên với đáp án lựa chọn ngẫu nhiên - Định dạng lưu mở đề dạng xml định dạng khác - II THỰC HIỆN Sơ đồ use case Phân tích CSDL - Dữ liệu gồm bảng Bảng admin quản lý chủ đề Một admin có - thể tạo nhiều chủ đề Mỗi chủ đề gổm nhiều câu hỏi khác Bảng sinh viên thi nhiều đề Các đề gồm nhiều câu nỏi nằm chủ đề Các ràng buộc toàn vẹn 3.1 Bảng admin (tbadmin) STT Thuộc tính Kiểu liệu Cap User Pass Chuỗi Chuỗi Chuỗi Diễn giải Phân biệt Admin sinh viên Tên đăng nhập Mật đăng nhập Ví dụ : STT 3.2 STT Pass 123 121 User Dan Dat Cap Bảng sinh viên (tbsinhvien) Thuộc tính maSinhvien tenSinhVien matKhau diaChi NgaySinh Kiểu liệu Diễn giải Chuỗi Chuỗi Chuỗi Chuỗi Chuỗi Là khóa để phân biệt sinh viên Tên sinh viên Mật đăng nhập Địa sinh viên Ngày sinh Ví dụ : STT maSinhvien 108381 107651 3.3 STT tenSinhVien phuong sang matKhau 1234 1234 diaChi NgaySinh Gò Vấp 29/6/91 Bình Thạnh 13/11/92 Bảng chủ đề (tbchude) Thuộc tính maChuDe tenChuDe Kiểu liệu Chuỗi Chuỗi Diễn giải Là khóa để phân biệt chủ đề Tên chủ đề maAdmin maSinhVien Chuỗi Chuỗi Admin tạo chủ đề Sinh viên làm đề thi thuộc chủ đề Ví dụ : STT maChuDe 3.4 STT tenChuDe Phần cứng Phần mềm Tổng hợp Hệ điều hành maAdmin 123 123 121 121 maSinhVien 108381 107651 108381 107651 Bảng câu hỏi (tbcauhoi) Thuộc tính maCauHoi maChuDe noiDung dapAnA dapAnB dapAnC dapAnD dapAnDung Kiểu liệu Chuỗi Chuỗi Chuỗi Chuỗi Chuỗi Chuỗi Chuỗi Số nguyên Diễn giải Là khóa để phân biệt mã câu hỏi Mỗi chủ đề có nhiều câu hỏi Nội dung câu hỏi Đáp án a Đáp án b đáp án c đáp án d Đáp án Ví dụ : STT maCau Hoi 1 maC noiDung huD e Đơn vị nhỏ để đo 3 thông tin gì? Bộ phận lưu trữ thông tin gì? Cổng DVI dùng để kết nối với thiết bị sau đây? Cài đặt chương trình 4.1 Màn hình dapAn A dapA nB Byte Kiloby Bit te Bộ nhớ CPU HDD CDROM Printer NULM onitor Fax Scann er dapAn C dapAnD dapAn Dung Megabyt e 3 Danh sách đối tượng thể STT Tên lblNgayThu btnAdmin btnSinhVien lblGioHeThong btnThoat Kiểu Label Button Button Label Button Button Ý nghĩa Ghi Ngày thứ admin Sinh viên Giờ Hệ thống Thoát Danh sách biến cố STT Biến cố Load label Click button Click button Load label Click button Xử lý Hiển thị thứ ngày Admin đăng nhập Sinh viên đăng nhập Hiển thị hệ thống Thoát chương trình Ghi Màn hình admin 4.2 Danh sách đối tượng thể STT Tên txtTenDN txtMatKhau btnDangNhap btnHuy Kiểu Texbox Texbox Button Button Ý nghĩa Ghi Tên đăng nhập Mật Đăng nhập Hủy Danh sách biến cố STT Biến cố Nhập textbox Nhập textbox Click button Click button Xử lý Nhập tên đăng nhập Nhập mật đăng nhập Đăng nhập hệ thống Hủy đăng nhập Ghi private void btnDangNhap_Click(object sender, EventArgs e) { int kq1, kq2; dl.MaHoa(txtMatKhau.Text, ref strMatMa); string DK = "User = '" + txtTenDN.Text + "'"; kq1 = string.Compare(txtTenDN.Text, (string)dl.DlookUp("User", "tbadmin", DK), true);//khong phan biet hoa thuong kq2 = string.Compare(strMatMa, (string)dl.DlookUp("Pass", "tbadmin", DK), false);//co phan biet hoa thuong if (kq1 == && kq2 == 0) { MessageBox.Show("Mật mã hợp lệ! \n Chấp nhận truy cập!", "Đăng nhập chương trình"); frmChinhPQ fr = new frmChinhPQ(); fr.QuanTri = dl.LaAdMin(txtTenDN.Text); fr.DieuKien = DK; Hide(); fr.Show(); return; } Solan++; if (Solan > 3) { MessageBox.Show("Bạn đăng nhập sai lần! \n Từ chối truy cập!", "Đăng nhập chương trình!"); Application.Exit(); } lblSoLan.Text = "Đăng nhập lần " + Solan; txtTenDN.Focus(); txtMatKhau.SelectAll(); } 4.3 Màn hình soạn câu hỏi 10 11 12 13 14 15 20 21 16 17 18 22 19 Danh sách đối tượng thể STT Tên tooltlblTaoMoi tooltlblMoDe tooltlblLuuTai tooltlblThemCauHoi tooltlblXoaCauHoi Kiểu Ý nghĩa ToolStriplabel ToolStriplabel ToolStriplabel ToolStriplabel ToolStriplabel 10 Tạo chủ đề Mở đề Lưu đề Thêm câu hỏi Xóa câu hỏi Ghi 10 11 12 13 14 15 16 17 18 19 20 21 22 tooltlblXoaDapAn lblNgay lblGio btnThemChuDe cboChonChuDe listCauHoi txtMaCauHoi txtNoiDungCauHoi txtDapAnA radA btnSoanCauHoi btnThemCauHoi btnCauTruoc btnCauSau btnSuaCauHoi btnXoaCauHoi btnThoat ToolStriplabel Label Label Button Combobox Listbox Textbox Textbox Textbox Radiobutton Button Button Button Button Button Button Button Xóa đáp án Ngày Giờ Thêm chủ đề Chọn chủ đề Danh sách câu hỏi Mã câu hỏi Nội dung câu hỏi Đáp án a Đánh đáp án Soạn câu hỏi Thêm câu hỏi Câu trước Câu sau Sửa câu hỏi Xóa câu hỏi thoát Danh sách biến cố STT 10 11 15 16 17 18 19 20 21 Biến cố Click ToolStriplabel Click ToolStriplabel Click ToolStriplabel Click ToolStriplabel Click ToolStriplabel Click ToolStriplabel Load label Load label Click button Load combobox Load listbox Checked Click button Click button Click button Click button Click button Click button Xử lý Tạo đề thi Mở đề thi có Lưu đề thi tạo Thêm câu hỏi Xóa câu hỏi Xóa đáp án Hiển thị ngày Hiển thị Thêm chủ đề Chọn chủ đề Danh sách câu hỏi Chọn đáp án Soạn câu hỏi Thêm câu hỏi Câu hỏi trước Câu hỏi sau Sửa câu hỏi tạo Xóa câu hỏi 11 Ghi 22 using using using using using using using Click button tạothoát chương trình System; System.Collections.Generic; System.ComponentModel; System.Data; System.Drawing; System.Text; System.Windows.Forms; namespace ChuongTrinhThiTracNghiem_DeAn { public partial class frmTaoVaChinhSuaDeThi : Form { public frmTaoVaChinhSuaDeThi() { InitializeComponent(); } ClsDuLieu ketnoi; private void btnThoat_Click(object sender, EventArgs e) { this.Hide(); } Danh sách chủ đề private void listCauHoi_SelectedIndexChanged(object sender, EventArgs e) { } public void themcauhoiclear() { radA.Checked = false; radB.Checked = false; radC.Checked = false; radD.Checked = false; txtDapAnA.Clear(); txtDapAnB.Clear(); txtDapAnC.Clear(); txtDapAnD.Clear(); txtMaCauHoi.Clear(); txtNoiDungCauHoi.Clear(); } private void btnThemCauHoi_Click(object sender, EventArgs e) { if (txtMaCauHoi.Text.Trim() == "" || txtNoiDungCauHoi.Text.Trim() == "" || txtDapAnA.Text.Trim() == "" || txtDapAnB.Text.Trim() == "" || txtDapAnC.Text.Trim() == "" || txtDapAnD.Text.Trim() == "") { MessageBox.Show("thông tin chưa đủ thêm câu hỏi!", "thông báo!"); return; } ketnoi = new ClsDuLieu(); 12 ketnoi.KetNoi(); string kq = ""; if (radA.Checked == true) { kq = txtDapAnA.Text; } if (radB.Checked == true) { kq = txtDapAnB.Text; } if (radC.Checked == true) { kq = txtDapAnC.Text; } if (radD.Checked == true) { kq = txtDapAnD.Text; } ketnoi.insertCauhoi(Int32.Parse(txtMaCauHoi.Text), cboChonChuDe.SelectedValue.ToString(), txtNoiDungCauHoi.Text, txtDapAnA.Text, txtDapAnB.Text, txtDapAnC.Text, txtDapAnD.Text, kq); themcauhoiclear(); } } private void frmTaoVaChinhSuaDeThi_Load(object sender, EventArgs e) { ketnoi = new ClsDuLieu(); ketnoi.KetNoi(); cboChonChuDe.DataSource = ketnoi.DataChuDe(); cboChonChuDe.DisplayMember = "tenChuDe"; cboChonChuDe.ValueMember = "maChuDe"; } } 4.4 Màn hình sinh viên đăng nhập 13 Danh sách đối tượng thể STT Tên txtTenSV txtMatKhau lblSoLan radLuyenThi radThi btnDongY btnHuy Kiểu Textbox Textbox Label Radio button Radio button Button Button Ý nghĩa Ghi Tên sinh viên Mật Số lần đăng nhập Luyện tập Thi Đồng ý thoát Danh sách biến cố STT using using using using using Biến cố Checked Checked Click button Click button Xử lý Chọn luyện tập Chọn thi Đồng ý Thoát chương trình System; System.Collections.Generic; System.ComponentModel; System.Data; System.Drawing; 14 Ghi using System.Text; using System.Windows.Forms; using System.Data.OleDb; namespace ChuongTrinhThiTracNghiem_DeAn { public partial class frmSVDangNhap : Form { ClsDuLieu dl = new ClsDuLieu(); int SoLan = 1; string strMatMa = ""; public frmSVDangNhap() { InitializeComponent(); } private void btnHuy_Click(object sender, EventArgs e) { Application.Exit(); } private void btnDangNhap_Click(object sender, EventArgs e) { if (txtTenDN.Text.Trim() == "") { MessageBox.Show("Xin cho biết tên người dùng"); return; } int kq1, kq2; dl.MaHoa(txtMatKhau.Text, ref strMatMa); string DK = "User='" + txtTenDN.Text + "'"; kq1 = string.Compare(txtTenDN.Text, dl.LayMatMa("User", DK), true); kq2 = string.Compare(strMatMa, dl.LayMatMa("Pass", DK), false); //Có phân biệt HOA thường if (kq1 == && kq2 == 0) { MessageBox.Show("Mật mã hợp lệ", "Kiểm tra mật mã"); return; } SoLan += 1; if (SoLan > 3) { MessageBox.Show("Bạn đăng nhập lần không hợp lệ", "Thông báo"); Application.Exit(); } lblSoLan.Text = "Đăng nhập lần " + SoLan; txtMatKhau.Focus(); txtMatKhau.Select(0, txtMatKhau.TextLength); if (radLuyenThi.Checked == true) { frmThiThu fr = new frmThiThu(); this.Hide(); fr.Show(); return; } 15 else { } } if (radThiThat.Checked == true) { frmThiTracNghiem f = new frmThiTracNghiem(); this.Hide(); f.Show(); return; } } } 4.5 Màn hình luyện tập Ràng buộc liệu chọn hình thức thi 16 10 12 11 14 13 Danh sách đối tượng thể STT Tên txtDuongDan btnDuongDan Kiểu Textbox Button 17 Ý nghĩa Đường dẫn Đường dẫn Ghi 10 11 12 13 14 btnBatDau btnKetThuc btnXemDapAn lblThoiGianConLai btnCauTiep btnCauTruoc lblCauHoi radA lblCauDung lblDiem lblDanhGia btnThoat Button Button Button Label Button Button Label RadioButton Label Label Label Button Bắt đầu Kết thúc Xem đáp án Thời gian thi Câu tiếp Câu trước Câu hỏi Đáp án Số câu Điểm Đánh giá thoát Danh sách biến cố STT Biến cố 10 11 12 13 14 Click button Click button Click button Click button Load label Click button Click button Load label Checked Load label Load label Load label Click button I Xử lý Tìn đường dẫn lưu tệp tin Bắt đầu làm Kết thúc thi Xem đáp án Hiển thị thời gian thi Câu Câu trước Hiển thị nội dung câu hỏi Chọn đáp án Hiển thị số câu Số điểm đạt Đánh giá xếp loại Thoát chương trình KẾT LUẬN Nhận xét đề tài 1.1 Đã làm - Cho phép admin tạo chủ đề - Cho phép admin tạo đề thi theo chủ đề - Không cho phép sinh viên chỉnh sửa đề thi 18 Ghi 1.2 Chưa làm - Chưa load tự động câu hỏi cho sinh viên thi thật - Cho phép admin chỉnh sửa đề thi - Cho phép admin phép lưu đề thi dạng xml định dạng khác - Cho phép sinh viên mở tệp tin thi thử - Sinh viên xem đáp án sau thi thử - Sinh viên xem kết đánh giá sau thi thử Hướng phát triển - - Tạo đề tài lưu nhiều định dạng khác Tạo chương trình thi trắc nghiệm cho nhiều môn thi trắc nghiệm (vd :trắc nghiệm tiếng anh ,luyện thi đại học, thi trắc nghiệm lái xe,….) Tạo mô hình quản lý chương trình thi trắc nghiệm Tạo định dạng câu hỏi hình ảnh Tạo mục với mức độ khác (căn bản, sơ cấp, tổng hợp ….) 19 [...]... thể mở tệp tin và thi thử - Sinh viên có thể xem đáp án sau khi thi thử - Sinh viên có thể xem kết quả đánh giá sau khi thi thử 2 Hướng phát triển - - Tạo đề tài lưu dưới nhiều định dạng khác nhau Tạo ra chương trình thi trắc nghiệm cho nhiều môn thi trắc nghiệm (vd :trắc nghiệm tiếng anh ,luyện thi đại học, thi trắc nghiệm bằng lái xe,….) Tạo mô hình quản lý chương trình thi trắc nghiệm Tạo định dạng... txtMatKhau.Focus(); txtMatKhau.Select(0, txtMatKhau.TextLength); if (radLuyenThi.Checked == true) { frmThiThu fr = new frmThiThu(); this.Hide(); fr.Show(); return; } 15 else { } } if (radThiThat.Checked == true) { frmThiTracNghiem f = new frmThiTracNghiem(); this.Hide(); f.Show(); return; } } } 4.5 Màn hình luyện tập Ràng buộc dữ liệu chọn hình thức thi 16 1 2 3 4 6 5 7 8 9 10 12 11 14 13 Danh sách các đối tượng... điểm đạt được Đánh giá xếp loại Thoát chương trình KẾT LUẬN 1 Nhận xét đề tài 1.1 Đã làm được - Cho phép admin tạo chủ đề - Cho phép admin tạo đề thi theo các chủ đề - Không cho phép sinh viên chỉnh sửa đề thi 18 Ghi chú 1.2 Chưa làm được - Chưa load tự động câu hỏi cho sinh viên có thể thi thật - Cho phép admin chỉnh sửa đề thi - Cho phép admin được phép lưu đề thi dưới dạng xml và các định dạng khác... nhập Luyện tập Thi Đồng ý thoát Danh sách các biến cố STT 4 5 6 7 using using using using using Biến cố Checked Checked Click button Click button Xử lý Chọn luyện tập Chọn thi Đồng ý Thoát chương trình System; System.Collections.Generic; System.ComponentModel; System.Data; System.Drawing; 14 Ghi chú using System.Text; using System.Windows.Forms; using System.Data.OleDb; namespace ChuongTrinhThiTracNghiem_DeAn... button Xử lý Tạo mới 1 đề thi Mở đề thi đã có Lưu đề thi đã tạo Thêm mới 1 câu hỏi Xóa câu hỏi Xóa đáp án Hiển thị ngày hiện tại Hiển thị giờ hiện tại Thêm mới chủ đề Chọn chủ đề Danh sách câu hỏi Chọn đáp án Soạn câu hỏi Thêm mới 1 câu hỏi Câu hỏi trước Câu hỏi sau Sửa câu hỏi đã tạo Xóa câu hỏi đã 11 Ghi chú 22 using using using using using using using Click button tạothoát chương trình System; System.Collections.Generic;... System.ComponentModel; System.Data; System.Drawing; System.Text; System.Windows.Forms; namespace ChuongTrinhThiTracNghiem_DeAn { public partial class frmTaoVaChinhSuaDeThi : Form { public frmTaoVaChinhSuaDeThi() { InitializeComponent(); } ClsDuLieu ketnoi; private void btnThoat_Click(object sender, EventArgs e) { this.Hide(); } Danh sách các chủ đề private void listCauHoi_SelectedIndexChanged(object sender, EventArgs... void frmTaoVaChinhSuaDeThi_Load(object sender, EventArgs e) { ketnoi = new ClsDuLieu(); ketnoi.KetNoi(); cboChonChuDe.DataSource = ketnoi.DataChuDe(); cboChonChuDe.DisplayMember = "tenChuDe"; cboChonChuDe.ValueMember = "maChuDe"; } } 4.4 Màn hình sinh viên đăng nhập 4 13 1 2 5 3 6 7 Danh sách các đối tượng thể hiện STT 1 2 3 4 5 6 7 Tên txtTenSV txtMatKhau lblSoLan radLuyenThi radThi btnDongY btnHuy Kiểu... Thời gian thi Câu tiếp Câu trước Câu hỏi Đáp án Số câu đúng Điểm Đánh giá thoát Danh sách các biến cố STT Biến cố 2 3 4 5 6 7 8 9 10 11 12 13 14 Click button Click button Click button Click button Load label Click button Click button Load label Checked Load label Load label Load label Click button I Xử lý Tìn đường dẫn lưu tệp tin Bắt đầu làm bài Kết thúc bài thi Xem đáp án Hiển thị thời gian thi Câu