Phần mềm quản lí đề thi trắc nghiệm môn tin học đại cương

Cuộc sống ngày càng hiện đại, các trang thiết bị phục vụ cho giáo dục cũng được nâng lên, cùng với đó, máy tình được đưa vào trong học tập như là một công cụ hỗ trợ đắc lực cho việc thi cử, quản lí học sinh.Cũng trong thời gian này, hình thức thi trắc nghiệm được đưa vào trong giáo dục, thi cử vì nó thường tổng hợp được hầu hết các kiến thức đã học vào các đề thi. Vì thế nhóm chúng em cũng muốn thử sức mình tạo nên một chương trình quản lí đề thi trắc nghiệm để giúp cho các giáo viên tạo ra những đề thi trắc nghiệm tự động bằng máy tính mà không phải mất nhiều công sức, thời gian, tiền của. Chương trình của của chúng em mới chỉ áp dụng cho môn tin học đại cương với một số thông số cho trước cố định (về số câu, số đề thi,.) nhưng chúng em tin rằng theo thời gian nó có thể áp dụng mở rộng cho những môn học khác. Do còn thiếu nhiều kiến thức và kinh nghiệm nên bài tập lớn của chúng em không tránh khỏi những sai sót, vì thế chúng em kính mong thầy giáo góp ý để hoàn thiện. Qua đây, chúng em xin chân thành cảm ơn thầy giáo, PGS.TS Trần Đình Khang đã chỉ bảo, giảng giải và giúp đỡ trong thời gian qua, chúng em xin cảm ơn thầy giáo, ThS. Đỗ Bá Lâm đã cung cấp tài liệu và những hướng dẫn quý báu để chúng em hoàn thành được bài tập.

pdf22 trang | Chia sẻ: lvbuiluyen | Ngày: 22/10/2013 | Lượt xem: 2528 | Lượt tải: 3download
Bạn đang xem nội dung tài liệu Phần mềm quản lí đề thi trắc nghiệm môn tin học đại cương, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG —————*————– BÁO CÁO MÔN HỌC NHẬP MÔN CNTT Về phần mềm quản lí đề thi trắc nghiệm môn THDC Giáo viên hướng dẫn: PGS.TS TRẦN ĐÌNH KHANG. ThS ĐÉ BÁ LÂM. Nhóm sinh viên thực hiện: Nhóm 1 - Lớp KSTN-CNTT-K56 1. Nguyễn Thanh Tâm. 2. Trịnh Thanh Hải. 3. Phạm Văn Việt. 4. Nguyễn Đình Huệ. 5. Nguyễn Vũ Quý. HÀ NỘI - 2012 2 Mục lục Lời nói đầu 5 1 Tổng quan về chương trình 7 1.1 Mục đích của chương trình . . . . . . . . . . . . . . . . . . 7 1.2 Cấu trúc chương trình . . . . . . . . . . . . . . . . . . . . . 7 1.3 Phạm vi chương trình . . . . . . . . . . . . . . . . . . . . . 9 1.4 Công cụ . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2 Nội dung chương trình 9 2.1 Nội dung . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.1.1 Phân tích bài toán, ý tưởng tạo dựng . . . . . . . . 9 2.1.2 Cấu trúc chương trình, các phần chính . . . . . . . . 12 2.2 Môi trường làm việc và cách sử dụng chương trình . . . . . 14 2.3 Kết quả . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 2.3.1 Kết quả lí thuyết . . . . . . . . . . . . . . . . . . . 19 2.3.2 Kết quả thực nghiệm . . . . . . . . . . . . . . . . . 19 3 Kết luận 20 3.1 Thu hoạch . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 3.2 Định hướng . . . . . . . . . . . . . . . . . . . . . . . . . . 21 Tài liệu tham khảo 22 3 4 Lời nói đầu Cuộc sống ngày càng hiện đại, các trang thiết bị phục vụ cho giáo dục cũng được nâng lên, cùng với đó, máy tình được đưa vào trong học tập như là một công cụ hỗ trợ đắc lực cho việc thi cử, quản lí học sinh...Cũng trong thời gian này, hình thức thi trắc nghiệm được đưa vào trong giáo dục, thi cử vì nó thường tổng hợp được hầu hết các kiến thức đã học vào các đề thi. Vì thế nhóm chúng em cũng muốn thử sức mình tạo nên một chương trình quản lí đề thi trắc nghiệm để giúp cho các giáo viên tạo ra những đề thi trắc nghiệm tự động bằng máy tính mà không phải mất nhiều công sức, thời gian, tiền của. Chương trình của của chúng em mới chỉ áp dụng cho môn tin học đại cương với một số thông số cho trước cố định (về số câu, số đề thi,...) nhưng chúng em tin rằng theo thời gian nó có thể áp dụng mở rộng cho những môn học khác. Do còn thiếu nhiều kiến thức và kinh nghiệm nên bài tập lớn của chúng em không tránh khỏi những sai sót, vì thế chúng em kính mong thầy giáo góp ý để hoàn thiện. Qua đây, chúng em xin chân thành cảm ơn thầy giáo, PGS.TS Trần Đình Khang đã chỉ bảo, giảng giải và giúp đỡ trong thời gian qua, chúng em xin cảm ơn thầy giáo, ThS. Đỗ Bá Lâm đã cung cấp tài liệu và những hướng dẫn quý báu để chúng em hoàn thành được bài tập. Mục đích: Thông thường những đề thi trắc nghiệm thường có số lượng lớn các câu hỏi (từ 50-100 câu/đề), vì thế nếu dùng các phần mềm soạn thảo thông thường như word hay excel sẽ rất mất thời gian, và khả năng xảy ra sai sót lớn. Chương trình quản lí đề thi trắc nghiệm sẽ giải quyết những vấn đề trên. Chương trình có khả năng lưu trữ ngân hàng câu hỏi và đáp án, chỉnh sửa, quan sát một cách khoa học, tạo ra các đề thi trắc nghiệm một cách nhanh chóng và chính xác. 5 6 1 Tổng quan về chương trình 1.1 Mục đích của chương trình • Tạo ra các đề thi với các câu hỏi được chọn ngẫu nhiên và các đáp án được đảo ngẫu nhiên từ ngân hàng đề thi. Số lượng câu hỏi mỗi đề cùng phạm vi (chương học) được chọn tùy ý bởi người dùng. • Tạo, cập nhật, quản lí ngân hàng câu hỏi thi với giao diện trực quan cho người dùng. • Tạo ngân hàng đề thi cho việc tổ chức thi trắc nghiệm trên máy. Lí do ra đời phần mềm này: • Giảm thời gian và công sức tạo ra các đề thi từ cùng nguồn câu hỏi. • Đảm bảo tính khách quan, ngẫu nhiên khi ra các đề có cùng cấu trúc, trình độ, chất lượng và không mang dấu ấn chủ quan của người ra đề. • Thuận lợi hóa việc cập nhật các câu hỏi bất cứ lúc nào, lưu trữ và có thể sử dụng lại bất cứ khi nào. • Tạo ra các đề có nội dung giống nhau nhưng đa dạng về thứ tự hoặc có trình độ như nhau nhằm đạt được việc kiểm tra công bằng nhất cho người thi. • Tạo nguồn đề cho tổ chức thi trắc nghiệm diễn ra hiệu quả, việc chấm thi được nhanh chóng. • Ngoài ra, đây là một bài tập nhóm trong quá trình học nhập môn Công nghệ thông tin, giúp sinh viên định hình được quá trình và cách thức áp dụng kiến thức vào các bài toán thực tế trong cuộc sống. 1.2 Cấu trúc chương trình Chương trình được xây dựng trên nền PHP và hệ cơ sở dữ liệu MySQL, làm việc với người dùng thông qua các trang tương tác: • Trang welcome: Cho phép đăng nhập vào hệ thống. Điều này giúp quản lí được người dùng. 7 • Trang chủ: Trang có chứa các đường dẫn đến nội dung mà người dùng có thể đến để: tạo đề, cập nhật ngân hàng câu hỏi, quản lí người dùng. Từ trang chủ sẽ dẫn tới các trang: – Trang thêm câu hỏi vào CSDL. – Trang tạo đề thi. – Trang tạo nhanh. – Trang hiển thị ngân hàng câu hỏi trong CSDL. – Trang xem câu hỏi đề ?( với ? là các sổ từ 1-10). – Trang chức năng admin. – Thoát khỏi chương trình. Trong đó: • Trang thêm câu hỏi: trang này sẽ yêu cầu người dùng nhập chương, nội dung câu hỏi, nội dung các phương án trả lời và đáp án tương ứng. sau khi ấn thêm, câu hỏi sẽ được thêm vào CSDL. Người dùng có thể ấn nhập lại để nhập lại toàn bộ nội dung câu hỏi. • Trang tạo đề thi: người dùng chọn và nhập số lượng câu hỏi cho từng đề, sau khi ấn làm đề thì 1 đề được tạo ra. • Trang tạo nhanh: người dùng chọn số câu hỏi từng chương và ấn tạo nhanh, sẽ có 10 đề được tạo ra với số lượng câu hỏi từng chương như nhau nhưng có nội dung câu hỏi khác nhau. • Trang hiển thị ngân hàng đề thi: ở trang này, người dùng có thể xem lần lượt từng câu hỏi trong ngân hàng đề thi, nếu có sai sót, có thể sửa xoá nội dung của câu hỏi. • Trang hiển thị đề thi: sau khi tạo đề thi, người dùng có thể vào xem nội dung câu hỏi từng đề thi. • Trang chức năng admin: Trang này cho phép người dùng đổi thay đổi tên và mật khẩu, ngoài ra, chỉ có admin mới được phép thay đổi các người dùng, còn các user thì chỉ được sửa thông tin tài khoản của mình. 8 1.3 Phạm vi chương trình • Chương trình được áp dụng cho việc tạo ngân hàng đề cho môn Tin học đại cương. • Số lượng đề tối đa có thể lưu trữ trong bảng ngân hàng đề là 10. Tuy nhiên, số lượng đề có thể tạo được là không giới hạn. Ngoài ra có thể mở rộng đối với các môn thi khác với lưu ý chương trình học môn đó chỉ chia làm 3 chương, nội dung câu trả lời có 4 phương án, và chỉ 1 phương án đúng. • Được sử dụng như chương trình con của việc tổ chức thi trắc nghiệm trên máy môn Tin học đại cương. Có thể dùng để quản lí các đề thi trên các trang web trực tuyến. 1.4 Công cụ • Ngôn ngữ lập trình: PHP, HTML, Java Script,SQL. • Công cụ lập trình: NetBeans, Macromedia Dreamweaver. • Cơ sở dữ liệu: XAMPP (tích hợp MySQL). 2 Nội dung chương trình 2.1 Nội dung 2.1.1 Phân tích bài toán, ý tưởng tạo dựng Bài toán đặt ra là xây dựng phần mềm thi trắc nghiệm tin học đại cương trên máy, giao cho 2 nhóm làm việc. Muốn thi trắc nghiệm trên máy, trước hết cần ngân hàng đề, sau đó là việc tổ chức thi với đề cho từng thí sinh có trong ngân hàng đề. Do vậy, mỗi nhóm được giao 1 phần việc và nhóm này phụ trách việc tạo ra ngân hàng đề thi. Bài toán được đặt ra là làm thế nào tạo ra được ngân hàng đề thi. • Input là ngân hàng câu hỏi, số lượng câu hỏi từng chương người nhập nhập vào khi muốn sinh đề. • Output là ngân hàng đề thi gồm các đề đã được sinh ra do yêu cầu người dùng. 9 Yêu cầu của các đề sinh ra là với cùng yêu cầu của người nhập, các đề có độ khó ngang nhau, các câu được chọn ngẫu nhiên, có thể từ cùng bộ câu hỏi nhưng thứ tự đa dạng đảm bảo việc thi diễn ra nghiêm túc. • Trước hết cần tạo ra ngân hàng câu hỏi với nội dung các câu hỏi đã có. Hơn nữa, cần cấu trúc nó để thuận tiện cho việc chọn câu hỏi ngẫu nhiên phù hợp với yêu cầu người dùng. Do đó, các câu hỏi ban đầu được chia thành các chương như trong sách và có độ khó. • Từ ngân hàng câu hỏi cần chọn ngẫu nhiên ra các câu trong các chương với các độ khó khác nhau để tạo ra bộ câu hỏi. • Từ bộ câu hỏi thực hiện đảo thứ tự để ra được các hoán vị đa dạng. • Tăng thêm tính đa dạng của đề thi nhận được bằng cách đảo chỗ các phương án trong cùng một câu hỏi. Qua phân tích sơ bộ thấy được cần phải cấu trúc ngân hàng câu hỏi theo chương và độ khó. Do việc chọn và đảo câu hỏi cần tính khách quan và ngẫu nhiên nên cần sử dụng hàm random. Tới đây, vấn đề đặt ra là sử dụng hàm random như thế nào? Có 2 cách random: • Chọn ra ngẫu nhiên các câu trong các chương, đánh dấu các câu đã được chọn, tiếp tục thực hiện cho tới khi chọn đủ số câu. Phương pháp này tốn thời gian do mỗi lần chọn câu tiếp theo lại lặp lại quá trình. • Với bộ số các câu trong các chương đã được xác định, thông qua hàm random để hoán vị bộ chỉ số, sau đó chọn ra n câu đầu tiên từ bộ chỉ số mới đã hoán vị, tham chiểu sang bộ chỉ số ban đầu. n là số câu của chương mà người dùng nhập vào. Cách làm này nhanh gọn, dễ thực hiện. Cuối cùng nhóm đã chọn cách 2. Vấn đề tiếp theo là sử dụng công cụ gì. Do mới chỉ có kiến thức về ngôn ngữ C nên ban đầu nhóm đã lập trình bằng C. Tuy nhiên, vấn đề gặp phải là không sử dụng được tiếng Việt. Với sự gợi ý của thầy Lâm, nhóm đã chuyển sang dùng ngôn ngữ lập trình PHP và phần mềm quản trị cơ sở dữ liệu MySQL. Sau khi tạo dựng được phần căn bản, một số vấn đề được đặt ra tiếp theo: 10 • Làm thế nào để nhập các câu hỏi không chỉ định dạng text. Ví dụ như 1 số câu hỏi có hình ảnh. Sử dụng thẻ html để hiển thị ảnh. • Với dạng text có các kí tự nào có vấn đề. Làm thế nào để giải quyết và thân thiện với người dùng. Người dùng có cần phải gõ theo mã các kí tự đặc biệt theo hướng dẫn bên cạnh không hay gõ bình thường rồi máy sẽ xử lí. Nhóm đã tìm được hàm Repalce để tạo thuận tiện cho việc nhập của người dùng. • Cập nhật ngân hàng câu hỏi sẽ tiến hành như thế nào. Vấn đề được giải quyết bằng cách nhập thêm các câu hỏi và cập nhật các câu hỏi đã được nhập bằng phương pháp sửa và xóa. • Giao diện tương tác với người dùng sẽ như thế nào? Khi người dùng muốn nhập câu hỏi, cập nhật câu hỏi, nhập yêu cầu về đề thi, xem đề thi đã được tạo ra, xem lại ngân hàng đề thi thì sẽ phải vào đâu? Giải quyết bằng 1 trang chủ với các đường link đến các thao tác người dùng có thể sử dụng. Bố trí các câu hỏi trong bảng, mỗi hàng hiển thị cho 1 câu hỏi. Tất cả các câu hỏi sẽ được hiển thị ra từng trang, mỗi trang gồm 10 câu. Để xem đề thi được tao ra, vào trang chủ và click vào lần lượt từng đường link dẫn tới 10 đề. • Về quản lí hệ thống, liệu ai cũng có thể sử dụng, thay đổi ngân hàng đề và tạo đề hay chỉ có những người nhất định. Để đảm bảo tính an toàn, chỉ có 1 số người được phép sử dụng và truy nhập. Do đó có thêm admin để quyết định những người dùng như thêm tên, xóa, sửa người dùng. Vì thế có thêm một biến chức vụ để check xem người đó có phải là admin. • Có những trường hợp nào sẽ cần phải báo lỗi cho người dùng và làm thế nào để phát hiện ra lỗi. Do yêu cầu đặt ra nên cần dùng các biến kiểm tra hoặc đánh dấu. • Báo lỗi khi nhập câu hỏi: – Nhập câu hỏi chưa chọn chương. – Nhập câu hỏi chưa nhập nội dung câu hỏi hoặc nhập toàn kí tự trống. – Nhập câu hỏi chưa nhập phương án trả lời hoặc nhập toàn kí tự trống. 11 – Nhập nội dung câu hỏi chưa chọn đáp án trả lời, kiểm tra nếu trường nào rỗng thì báo lỗi. • Báo lỗi khi nhập yêu cầu về đề thi: – Nhập quá số lượng câu hỏi từng chương trong ngân hàng câu hỏi. Phương án dùng biến đếm cập nhật số lượng câu hỏi có trong csdl rổi so sánh với câu hỏi người dùng nhập vào. – Ô số lượng câu hỏi để trống không nhập, hay nhập không phải số. Phương án: dùng hàm kiểm tra xem phần nhập vào có phải số không. – Không chọn tên bảng đề lưu. • Báo lỗi người dùng – Đăng nhập sai tên. – Đăng nhập sai password. – Thêm người dùng trùng tên đã có. – Sửa tên mà nhập tên trống. – Sửa password mới, nhưng mã xác nhập pass không khớp. – Đề trống không nhập, hay nhập không phải số. 2.1.2 Cấu trúc chương trình, các phần chính • Các module chính bao gồm: – Phần quản lí ngân hàng câu hỏi ∗ Thêm câu hỏi, phương án và đáp án đúng. ∗ Xoá/sửa câu hỏi. ∗ Xem lại toàn bộ ngân hàng câu hỏi. Trong đó, mỗi chức năng được thực hiện ở một trang: ∗ Thêm câu hỏi, phương án và đáp án đúng: thực hiện trên trang reg2.php. ∗ Sửa câu hỏi: thực hiện trên trang edit.php. ∗ Xem lại toàn bộ ngân hàng câu hỏi: thực hiện trên trang list.php. – Phần sinh đề 12 ∗ Chọn số lượng câu, bảng lưu đề (nếu tạo thủ công từng đề), nếu tạo nhanh thì không cần chọn bảng lưu đề thi. ∗ Xem lại đề vừa tạo ra. Mỗi phần được thực hiện tại một trang. ∗ Chọn số lượng câu, bảng lưu đề trên trang input.php, hoặc tạo nhanh thì vào trang taonhanh.php. ∗ Xem lại đề vừa tạo ra trên trang de?.php (?: 1,2,3. . . 10). – Phần lưu trữ đề Có 10 bảng trong csdl dùng để lưu trữ các đề thi tạo ra, để thực hiện đưa đề thi ra khi thi thì chỉ cần truy xuất các bảng này. – Phần quản lý người dùng ∗ Đăng nhập vào hệ thống. ∗ Đổi mật khẩu. ∗ Thêm, sửa, xóa người dùng: chức năng này chỉ có admin thực hiện được. Mỗi phần được thực hiện ở một trang: ∗ Đăng nhập vào hệ thống trên trang login.php. ∗ Đổi mật khẩu trên trang edit_user.php. ∗ Thêm người dùng (chỉ có admin mới vào được) trên trang adduser.php. • Công cụ chính và 1 số hàm được dùng – Công cụ chính: NetBeans IDE 6.7.1 và XAMPP. – Hàm random: Random bằng cách hoán vị bộ số. ∗ Random ra câu hỏi Thực hiện hàm random cho từng chương chọn ra n câu hỏi của chương đó theo yêu cầu của người sử dụng khi muốn sinh đề. Cơ chế của hàm là hoán vị bộ chỉ số của các câu hỏi đã có trong chương đó, lấy ra n chỉ sổ đầu tiên với n là số câu người dùng muốn lấy ra từ chương đó. Từ đó được 1 bộ các chỉ số, dùng bộ chỉ số này để lấy ra bộ câu hỏi. ∗ Random phương án trả lời Trước khi in ra 4 phương án thì hoán vị 1 mảng $mang từ 1 tới 4, rồi in ra từng phương án có thứ tự dựa trên kết quả hoán vị đó, ví dụ hoán vị 1,2,3,4 thì sẽ thành 2,3,1,4. Và in 13 lần lượt đáp án theo trình tự đó ’phuongan2’ rồi ’phuongan3’ tiếp là ’phuongan1’ cuối cùng là ’phuongan4’. Để in ra đáp án dựa vào kết quả hoán vị trên ta thực hiện phép gán nếu ’dapan’=’A’ thì gán cho 1 biến đánh dấu $p=1; tiếp tục ’da- pan’=’B’ thì $p=2; ’dapan’=’C’ thì $p=3; ’dapan’=’D’ thì $p=4; sau đó sẽ so sánh biến $p với từng phần tử của mảng hoán vị trên nếu $mang[1]=$p thì in ra đáp án là A; nếu $mang[2]=$p thì in đáp án là B tương tự ta sẽ được đáp án C hoặc D. – Hàm Replace: Dùng để thay thế các kí tự đặc biệt mà người dùng gõ vào bằng các mã tương ứng của máy. – Để kiểm tra báo lỗi cho người dùng, sử dụng thêm các biến kiểm tra. 2.2 Môi trường làm việc và cách sử dụng chương trình • Môi trường làm việc – Hệ điều hành: tương thích với hầu hết các hệ điền hành Windows như: Windows NT, 2000, XP, Windows 7, Windows 8. – Yêu cầu hệ thống: >= 64 MB RAM, 200 MB free fixed disk. • Cách sử dụng chương trình – Cài đặt XAMPP: Người dùng có thể tải các bản MYSQL trên mạng về cài, sau đó copy source code vào htdocs, còn csdl thì người dùng vào localhot/phpmyadmin để import từ bộ cài. – Sau khi cài đặt thành công, người dùng click chuột để khởi động mysql. Sau đó chạy chương trình bằng trình duyệt chrome, ex- ploer, hoặc filefox, safari...Vào trang welcome.php để bắt đầu thực hiện chương trình. – Đăng nhập vào hệ thống. 14 Hình 1: Trang đăng nhập – Vào trang chủ, có các thanh, chọn: Hình 2: Trang chủ ∗ Tạo từng đề: Khi muốn tạo thủ công từng đề với số lượng câu hỏi khác nhau. 15 Hình 3: Trang tạo từng đề thi ∗ Tạo nhanh: Khi phục vụ cho kì thi chính thức, muốn tạo ra số lượng đề nhiều với form như nhau. Hình 4: Trang tạo nhanh 10 đề 16 ∗ Thêm, chỉnh sửa câu hỏi vào CSDL: Khi muốn bổ sung câu hỏi vào ngân hàng câu hỏi. Hình 5: Trang thêm câu hỏi Hình 6: Trang chỉnh sửa câu hỏi ∗ Hiển thị danh sách tất cả các câu hỏi trong CSDL: Khi muốn xem lại toàn bộ ngân hàng câu hỏi. ∗ Xem câu hỏi đề ? : Khi muốn xem lại phần đề sinh ra lưu trong bảng ? ( ? là các số từ 1-10). ∗ Thông tin người dùng: Vào đây để xem lại, cập nhật thông tin người dùng. ∗ Thêm người dùng: Chức năng này chỉ dành cho admin để thêm người dùng chương trình. 17 Hình 7: Trang hiển thị ngân hàng câu hỏi Hình 8: Trang thêm users ∗ Thoát khỏi chương trình: Khi đã thực hiện xong các công việc. (sau khi thoát, người dùng không thể vào trang nào đó tương tác với csdl được, nếu cố tình muốn vào thì hệ thống sẽ báo yêu cầu đăng nhập). • Một số lưu ý cho người dùng: – Một số kí tự ở khi muốn có một số thao tác đặc biệt lúc nhập câu hỏi đã được chú thích phía dưới phần nhập câu hỏi (xuống dòng, tab, bôi đậm, viết chỉ số. . . ) – Khi nhập sai, thiếu, quá số lượng...trong từng trang sẽ có báo lỗi cho người dùng. 18 2.3 Kết quả 2.3.1 Kết quả lí thuyết Trên lí thuyết, khi người dùng nhập, sửa, xóa các câu hỏi thì kết quả sẽ được lưu trữ lại trong ngân hàng câu hỏi. Khi người dùng nhập số lượng câu hỏi và chọn bảng thì sau đó đề thi sẽ được lưu vào bảng tương ứng và sẽ hiện ra cho người dùng xem luôn (nếu là tạo từng đề). Còn nếu tạo nhanh thì sau khi nhập số lượng câu hỏi sẽ có 10 đề được tạo ra và lưu vào trong 10 bảng đề. Các trường hợp không nhập đúng sẽ báo lỗi. 2.3.2 Kết quả thực nghiệm • Giống với kết quả lí thuyết. • Các trường hợp lỗi bắt buộc và cảnh báo: Thử nghiệm Trạng thái Chạy trên trình duyệt IDE Đạt Chạy trên trình duyệt Firefox Đạt Chạy trên trình duyệt Chrome Đạt Truy nhập vào các trang tương tác csdl thì thông báo yêu cầu đăng nhập Đạt Đăng nhập sai tên báo lỗi tên đăng nhập sai Đạt Đăng nhập sai password báo lỗi sai pass Đạt Nhập câu hỏi chưa chọn chương: báo lỗi chưa chọn chương Đạt Nhập câu hỏi chưa nhập nội dung câu hỏi hoặc nhập toàn kí tự trống: báo lỗi chưa nhập nội dung câu hỏi Đạt Nhập câu hỏi chưa nhập nội dung phương án trả lời hoặc nhập toàn kí tự trống: báo lỗi chưa nhập nội dung câu trả lời (tương ứng) Đạt Nhập nội dung câu hỏi chưa chọn đáp án trả lời: báo lỗi chưa chọn phương án trả lời Đạt 19 Nhập số lượng câu hỏi khi tạo đề thi vượt quá số lượng có trong csdl: báo lỗi số câu hỏi quá lớn, yêu cầu nhập lại Đạt Đề trống không nhập, hay nhập không phải số: báo lỗi nhập sai, yêu cầu nhập lại Đạt Thêm người dùng trùng tên đã có : báo lỗi tên này đã có người sử dụng Đạt Sửa tên mà nhập tên trống: báo lỗi, yêu cầu nhập lại Đạt Sửa password mới, nếu xác nhập password không khớp: báo lỗi xác nhập password mới sai, yêu cầu nhập lại password mới Đạt 3 Kết luận 3.1 Thu hoạch • Hoàn thành được chương trình tạo ngân hàng đề thi phục vụ việc thi trắc nghiệm trên máy tính như yêu cầu ban đầu. Ngoài ra việc tạo ra phần mềm cũng có thể sử dụng cho người dùng cá nhân, giúp có thêm lựa chọn về công cụ để tạo ra các đề thi một cách nhanh chóng mà đảm bảo chất lượng, sự khách quan cũng như tính công bằng của các đề thi. • Việc hoàn thành phần mềm còn giúp nhóm có thêm kiến thức căn bản về quá trình tạo ra một phần mềm từ phân tích để đến với các ý tưởng thiết kế phù hợp đến quá trình hoàn thiện chương trình và thử nghiệm, tăng khả năng làm việc nhóm, phát hiện vấn đề và tìm ra hướng giải quyết. Đưa đến định hướng cho từng thành viên về việc tìm kiếm và cách thức giải quyết các bài toán thực tế, yêu cầu thực tế của người dùng. • Ngoài ra, do yêu cầu của việc hoàn thành phần mềm, nhóm đã tích lũy thêm kiến thức căn bản về các ngôn ngữ lập trình cũng như các phần mềm quản trị cơ sở dữ liệu. 20 3.2 Định hướng • Do phần mềm vẫn chưa có phần lựa chọn độ khó như đã lên ý tưởng từ ban đầu, cũng như chưa chia thành dạng câu hỏi lí thuyết và bài tập để người tạo để có nhiều lựa chọn hơn cho việc tạo đề của mình nên nhóm sẽ định hướng phát triển, mở rộng phần mềm theo hướng này. Ngoài ra, có thể tăng số chương lên cho phù hợp với các môn học khác. • Hình thức câu hỏi trắc nghiệm cũng sẽ được cập nhật để tạo ra sự đa dạng hơn cách trắc nghiệm kiến thức, t