I am interested in spearheading the development of a module that allows the creation of quizzes, administers them and keeps records of users' performance. This module would be aimed at educational sites where users come to test thier skills and understanding. I would like initial feedback from the community to guage interest and to find out if anybody has already begun work in this direction.
As I see it, a quiz is a series of questions on a topic. A question is a presentation and an interaction. I leave the definition of question this general to support the widest variety of possible formats. The most obvious kind is multiple choice where the presentation is a 'question' and there are several 'answers' to choose from, one or more of them being right. Choosing the right answer is the interaction. Another format could be a spelling quiz where the presentation is an mp3 or wav of a word and the interaction is the user typing the spelling. There are endless variants and all should be supported.
The quiz module should support the notion of 'quiz owner' and 'quiz taker' as roles. Quiz owners are the creators and/or administrators of quizzes, whereas quiz takers must have only the permissions necessary to take quizzes.
Questions should be community contributed, thus the revision and moderation processes will be key. The module must support comfortable revisions so that spelling mistakes and adjustments to the wording of questions can be improved through time by non-tech users. Moderation must guarantee that better questions get more limelight than inferior questions.
This module could be used on several types of sites with several intended audiences. Its clear and primary use would be with schools and learning institutions of all natures. It could also function as a screening mechanism for job applicants, or as a certification training aid, or as a game platform.
Please elaborate the list of requirements and use-cases so that I can draw upon the widest range of ideas while planning this.