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... |
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=== | ||