FST Graduate Research Topic


Research Topic: Item Generation System
Suggested By: Maiga Chang
Last Update: March 19th, 2025

This project aims to "develop a web-based system with PHP and in the background with Python for creating multiple choice and true/false questions based on the knowledge/concept map generated with the key terms and relations extracted from text-based material."


 


In the past, our research team has done the following research


 





  • Shih-Bin Chen, Rita Kuo, Maiga Chang, Tzu-Chien Liu, and Jia-Sheng Heh. (2008). Developing True/False Test Sheet Generating System with Diagnosing Basic Cognitive Ability. In the Proceedings of the AACE 20th World Conference on Educational Multimedia, Hypermedia & Telecommunications, (ED-MEDIA 2008), Vienna, Austria, June 30-July 4, 2008, 5740-5748. Access: https://maiga.athabascau.ca/publication/Conference-2008-ED-Media2008-ItemGeneration.pdf



  • Rita Kuo, Wei-Peng Lien, Maiga Chang, and Jia-Sheng Heh. (2003). To Develop an Item Generating System with Analyzing the Problem Model in the Inter-Correlated Knowledge. In the Proceedings of the AACE World Conference on Educational Multimedia, Hypermedia & Telecommunications, (ED-Media 2003), Hawaii, USA, June 23-28, 2003, 1150-1153. Access: https://maiga.athabascau.ca/publication/Conference-2003-ED-Media2003-ItemGeneration.pdf




 


Also we have implemented Online Test System in JSP (https://maiga.athabascau.ca/#ots) but it is no longer running and requires manually creating knowlede map. You can find some videos from the above link.


 



 



This project focuses on the following roles and tasks:

Teachers can


 





  • Register an account with real/fake email address (unique account) — to protect privacy, an account has fake email address will not be able to reset its password if the teachers forget. Any new account wll be in "unverified" status.



  • Use password reset function if their account is a "verified" one.



  • Sign into the system.




 



After they sign in, they can use a hamburger menu to run functions to


 





  • Verify their account by asking the system to send the registered email an activation link — when they received the link and click the link, the system can confirm that they can access the registered email and the system can update the registered account status as "verified".



  • Change their registered email address — that means they will need to sign in the system next time with their updated email address and their account's verified status will be changed back to "unverified".



  • Create a course project — by default, like Microsoft Word, the system will automatically create a new course project for the teachers when they sign in — but they can save a work-in-progress one and choose to open a new one.



  • Auto save a course project when the teachers upload a PDF or Word (DOCX, DOC) or PowerPoint (PPTX, PPT) or TXT file.



  • Check the course projects they have created — similar to open existing documents or projects function in Microsoft Word or Visual Code — and they can click to load/open an existing one.




 



Once they have a course project open, they can


 





  • See the uploaded course materials and their text-based content conversion progress as well as the correspondent text by clicking a material from the list — this upload action will initiate a flag on the server side so a cron job Python script can realize which course material(s) should be converted into text-based one(s); the conversion can be done with various libraries like https://pypi.org/project/unstructured/, https://pypi.org/project/PyPDF2/, https://www.youtube.com/watch?v=PK-GvWWQ03g, etc.



  • Start the knowledge/concept map creation process for a selected material as well as check out the visual map when the process done — this will initiate a flag on the server side so a cron job Python script can realize which text-based course material(s) should be parsed and used to create knowledge/concept map when it wakes up.



  • Choose to generate a specifc number of True/False questions from one or more knowledge/concept map when a course has at least one map created.



  • Choose to generate a specifc number of Multiple Choice questions (i.e., question has multiple options but only one of them is correct answer) from one or more knowledge/concept map when a course has at least one map created.



  • Review and filter all generated questions (i.e., item bank — a course project can have multiple item bank and each item bank may consist of both True/False and Multiple Choice questions generated from same, overlapped, or different map set the teachers chose).



  • Choose and edit any question's content, option(s), and answer from any item bank.



  • Ask the system to randomly choose a specific number of questions from the selected item bank and create a test sheet — a course project can have multiple test sheets created from same, overlapped, or different item banks.



  • Review, revise, and delete a test sheet — "revise a test sheet" meaning the teachers can delete a question from a tets sheet.