Community

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
canvas_voyager
Community Member

Offline question/quiz database management for Canvas

I have created a database to manage quiz questions and I'm offering it to the community to see if there is interest.  It stores all my course questions and can be used to assemble and post a fully formed quiz to Canvas using the API in about 5-10 seconds depending on Canvas server load. It save me a ton of time and gives me more control over the questions used and provides the ability to rapidly make changes to quizzes and questions. I created the database from the perspective of someone who needs a resource to manage quiz questions for my own Canvas courses. Importantly, I wanted to avoid the carpal tunnel-inducing clicks necessary to create a quiz on Canvas. 

Some key features:

Import;

  1. quizzes exported from Canvas (QTI format) — if it can be exported from Canvas, it can be imported into the database, at least all the formats I've tried
  2. FileMaker, CSV, Excel, Tab data formats

Export:

  1. directly post a quiz to Canvas using the API
  2. export quiz and key to print
  3. export into most standards-based formats

Quiz question management:

  1. create quiz on Canvas with all settings available through the web page 
  2. delete quizzes on Canvas
  3. questions can be tagged
  4. questions can be associated with learning objectives
  5. questions can be categorized
  6. all current (Classic) Canvas question formats are supported
  7. questions can have alternative answers and/or distractors where appropriate
  8. I created a few table-based question formats that load to Canvas as HTML
  9. figures/images are stored and associated with the question
  10. stores and can post general feedback for each question
  11. quizzes for an entire course can be uploaded in a single shot with all appropriate deadlines
  12. a date layout allows rapid data entry for quiz-associated dates
  13. database is fully searchable and questions can be flagged in a variety of ways

This is not a comprehensive list. If I wanted a feature and could figure out how to implement it, I did. I've provided two screen shots below of the two main layouts: 1) quizzes and 2) questions. I've also attached a feature log I used to keep track of my progress when developing the database if anyone is interested in the details, known issues, etc. 

I am aware of Respondus, although I have never used it because I lean Mac.  As such, I'm not aware of its feature set. My database was created using FileMaker. To use it, you need two things:  1) a copy of FileMaker (trials are available for download and some institutions have site licenses) and 2) download and install the free Base Elements plugin.

The database should be Windows compatible, although some of the scripts I've written may need to be altered because of hard drive directory structure differences between platforms — I'd be happy to trouble-shoot if someone is interested in providing feedback. 

Regarding New Quizzes:

I reverse engineered the current QTI 1.2 format to import Classic Quiz questions into the database. Currently, Canvas does not allow New Quiz export. Moreover, there is currently no public API. Once these are available, I will likely add a New Quizzes format to the mix. However, once a quiz is uploaded to Canvas, it can be readily transferred to the new format using the Canvas backend.

A driving principle for me in creating my own database was control of my own data, not being tied to a complex XML format, and the ability to 'future proof'  by being able to export the data in any format I need or choose.

So ... if anyone is interested in giving the database a try, see the Github page below. Please note that I'm not a programmer and I'm not selling anything. I'm only offering this as a resource to be helpful.

Just send me a note if you're interested.

Sean

__________

Github: https://github.com/question-db/Any-Questions

 

1.png

2.png

 

4 Replies
themidiman
Community Champion

@canvas_voyager 

Count me as interested in what you've done so far. Being a long-time user of Respondus, I am frustrated with their approach to MacOS support. Their answer has always been 'use a Windows PC' or 'emulate a Windows PC on MacOS' to run their software. With Apple Silicon further distancing them from someone being able to reliably emulate Windows environment, or being willing to build a Mac version of their software there needs to be something else as an alternative.

Drop me a note. I'd like to connect with you because I do consider myself a programmer.  

ben_reed
New Member

i am also interested. we are developing an open source question management system as well that can be used with markdown, similar to text2qti. i'd love to compare notes.

I may have jumped the gun a bit as I just set up a Github page, which should now be public. I will edit the original post with the Github link so others do not have to go through the entire thread.
 
 
Everything needed is now posted.
 
At some point in the near future I will setup some sort of quick start guide so people have a clue what is possible and how things work. Although, I have included 'tool tips' throughout the database, so if one places a cursor over an item for a second or two, it should let people know what it does. I haven't invested much time/energy in that arena because I have zero clue regarding interest level and I developed the database for my use. Message feedback likely needs work as well.
 
Also, please pay particular attention to the fact that if a user heavily relies on 'quiz groups' instead of individual quizzes, the import will likely fail or produce some weird results. I need more examples as I don't use quiz groups. The XML format is nested and requires multiple script iterations to properly scrape the data.  I piloted the one example I had from a colleague who only uses multiple choice questions. It worked great a couple database versions back, but I seem to have broken it and need to go back and fix things. This isn't trivial given that each question type has significant XML schema differences and requires a different script. To be clear, I'm a hack with zero formal programming experience. I learn what I need to solve problems I'm interested in solving. As such, others likely can solve these problems more elegantly with greater efficiency. 
 
Finally, I consider the database 'alpha' because I keep adding features and wouldn't want to call it 'beta' until others tested it and identify bugs. That said, I have been using an older version routinely for the courses I teach for about 2 years. 
 
So .. take a look at what is on Github and let me know what you think. I'm genuinely interested in the feedback.
 
 
Tags (2)

Apologies, posted a reply further down in the thread. Also, I now recall using Respondus under VirtualBox a few years back when we moved from Moodle to Canvas.  I'm confident that my database is much better than Respondus for my needs and likely others, independent of platform. Importantly, as you mention, new Apple hardware precludes a path forward for Respondus in any reasonable way.