Developing quizzes that interact with a database for robustness
We can develop online exams using Captivate. The results of these exams can be transferred to the LMS. To do this, we would use SCORM or a similar protocol. Captivate has all the needed functionality built-in, and it can be used quite easily. This works very well with brief examinations or low-stakes examinations. My issue here is that one of the systems might go down before the learner finishes the examination, and then all the work is lost. The examination modules developed by textbook publishers avoid this problem by saving the results of each question as the learner moves from one question to another.
We could do something similar with Captivate. Instead of simply storing the score in variables, we could have a JS subroutine that stores that value in a database (like MySQL) every time the learner clicks on the submit button for each question. Building a system that interacts with a database creates a much more robust examination system, and your students will appreciate that.
Captivate has the capability of interacting with databases, but the programming needed is not trivial. Moreover, you will also need to make sure that there is a database server running that can be accessed through the web, preferably I the same machine as the Captivate HTML5 runtime.
I am going to start developing such a code. And once I have something working, I will share it here. Meanwhile, if any of you reading this have other suggestions or can provide already made routines, it will be appreciated.
I wonder if you have lot of experience with a LMS? It is really a database system and keeps the answers to each question. In the default setup in Captivate, each answer is saved to the LMS immediately after the answer is submitted. No problem when the learner gets kicked out for some reasons, when coming back she/he can continue the exam. This workflow works very well, have used it multiple times in my previous career as professor.
Why complicate by having to program everything like you suggest, which includes much more than just creating a database, and is still subject to possible technical issues. You can set up an internal server, that workflow is also available directly from within Captivate.
Just wanted to point out some features of Captivate you may have missed. Personally, although I have been programming for decades, I would not like to start such a process like you described.
You must be logged in to post a comment.