Math4Team/RIT/Projects/Question Support API: Difference between revisions

New page: {{TOCright}} ==Question Support API== http://git.sugarlabs.org/projects/question-support-api ===Data Model=== A potential data model: (It was built for a corporate medical department's me...
 
Enimihil (talk | contribs)
Add general project information.
Line 1: Line 1:
{{TOCright}}
{{TOCright}}
==Question Support API==
==Question Support API==
http://git.sugarlabs.org/projects/question-support-api
===Project Information===
{{Definition_table
|Primary Project Contact| [[User:Enimihil|Greg Stevens]]
|Project Members| [[User:Enimihil|Greg Stevens]], TODO: Add yourself here...
|Source Repository| http://git.sugarlabs.org/projects/question-support-api
}}
 
===Motivation===
In the RIT class working on the Math4 projects, many proposed activities
require a question database of some kind.  A common API or library for
accessing databases in different formats, stored either locally or remotely,
along with a simple mechanism to determine more complex formatting or
presentation than simple text (e.g. to include simple graphics or
mathematical notation) would cover a majority of the cases where the
activity needs some configurable "curriculum data".
 
Eventually this library could be extended to provide hints, explanations, or
walkthroughs for questions, in addition to the basic metadata about level,
grouping, difficulty, and subject matter that would be part of the base
system.
 
===Envisioned Usage===
Consider a simple flash-card-like activity.  It presents a question from a
list of questions, allows the student to select an answer from the provided
answers for the question or to enter their own answer.  Then the correct
answer is revealed and the student it told whether their answer is correct.
If the question has an explanation of the correct answer, the flash-card
activity will show the explanation of the correct answer.  (Note that this
is just a simple usage example, the interaction design of a drilling
activity could be very different.)
 
The flash-card activity would use this proposed Quiz API for the following:
 
* Loading the questions from the storage location into memory. This includes any filtering or network lookup to download the questions from a remote resource and select appropriate questions for the student.
 
* Determining whether the student has entered a correct answer.
 
To start with, the library would simply be a time-saving tool for developers
needing similar functionality, but as the XS (School Server) becomes more
fully developed the library should integrate the functions provided by the
XS to enable automated update of course material for the current topic of
study so the students can drill material using any tool they prefer, while
still reporting progress to the instructor using the XS services.


===Data Model===
===Data Model===