Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

...

...

...

...

...

Bulk Upload Questions

Teachers have a large pool of questions they would have already created for conducting tests, quizzes, and exams. We want to leverage (1) Bulk upload questions and (2) link them to a question set.

Milestone 1: Bulk Upload Questions

  1. Support Multiple Choice Question with validations such as

    1. Minimum 2 options, maximum 8 options

    2. At least and only one option correct

  2. User provides CSV in the prescribed format filled with required details

Implementation details

  1. Create a generate QuML API for various interaction types such that it takes required parameters as input and generate a QuML output. For example, Multiple Choice Question fundamentally contains Question, Options, and Correct Answer. The API takes these 3 as inputs in HTML or JSON format and generates a QuML spec. This also allows QuML to evolve rapidly as just by updating this ‘Generate QuML’ API with latest QuML spec, we can upgrade various places where Questions & Question sets are getting created such as Question Set Editor, Bulk Upload Questions & Question sets.

    1. This logic exists today ingrained in the Question creation component. It needs to be extracted out and made available as API / something.

...

Bulk Upload Question Set

https://project-sunbird.atlassian.net/browse/SB-22801

...

Columns / Information to be provided by Contributor

Description

In which version

QUESTION DETAILS

Question Name / Title *

Human readable / relatable Name or Title or any identifying value for searching and retrieval later

V1

Question Primary Category *

MCQ or Subjective?

V1 - MCQ

Question Additional Category

Derived from target collection or question set

Framework categories -

Org & Target FW

(If K-12, then B,M,C,S, Topics, LO

If TPD, then Subjects, Topics)

Should be able to create questions for any of the frameworks. If uploaded within a target collection, then relevant metadata (B,M,C,S) is derived from it. Additional metadata (Topics, LO) can be provided.

V1 - B,M,C,S

Question Body *

Body or stem of the question

V1

Question Image

Image to be used for the question body

User provides Google Drive path. System will insert at the beginning of the text, small size, left aligned

Options

Should support min 2 & max 8 options

V1 - Only 4

Option Images

Should support Google Drive link for the images. Insert images always at the beginning of the question text in small size & left alignment

V1

Option Layout

Support Horizontal, Vertical, and Grid layout. Default = vertical.

V1

Answer

Should be a number between 1 - 8 for MCQ. Can be text in case of Subjective questions

V1

Solution Text

V2

Solution Image

V2

Solution Video

V2

Author

Provide if not same as user name of the creator ID on the platform

Attributions

Copyright

Default = Tenant name ?

License

Default / Always = CC BY … ?

QUESTION SET DETAILS 👇🏽

Question set ID

Any unique ID to group the questions

V1

Question set name

Question set category

Question set framework

Derived from target collection

Question set settings: Shuffle

On / Off

Question set settings: Display

Any number < 0 and < total number of questions in the set

Question set settings: Feedback

On / Off

Question set settings: Submit

On / Off

Question set settings: Attempts

0 < Attempts < 25

Author

Provide if not same as user name of the creator ID on the platform

Attributions

Copyright

Default = Tenant name ?

License

Default / Always = CC BY … ?

...

  1. Upload as draft or Submit for review (on / off)

  2. Question set category: (list of primary categories in the project) [Should this be a column in the sheet?]

Decision tree

  1. Upload question sets in the project

    1. Format for each question type

    2. Format for all question types

  2. Upload questions in a question set

    1. Format for each question type

    2. Format for all question types

Open questions

  1. Should user upload Question set in a sourcing project or Upload questions in a Question set?

  2. Should we have separate CSV formats for each question (interaction) type (primary category) or one single format supporting all types?

    1. Expectation is that each question is checked for validation before uploading

  3. Should Images be supported? What are the limitations?

  4. Questions and Question sets should be in separate sheets - Yes / No?

  5. Benefits of using individual formats is that we can do client side validations such as.. Validations during upload (real-time) for Content upload

    1. Name of the columns

    2. Mandatory column cannot be blank

    3. Maximum 300 content per sheet

  6. Other validations that happen async on server

    1. URL Validation while downloading from source (Google Drive)

    2. Framework values matching

    3. Primary category

    4. File Size limit

    5. ..

...

Question Set APIs:

http://docs.sunbird.org/latest/apis/questionapi//#tag/QuestionSet-APIs

Question APIs:

http://docs.sunbird.org/latest/apis/questionapi//#tag/Question-APIs