QuML Editor Upgrade
Overview:
On Sunbird the core definition of the QuML editor is upgrading. This means the question set, object definition is being changed. Prashnavali essentially is about the question and question paper creation, which means that the core way of how questions are added and question paper is created, needs an upgrade.
However, the overall user stories for all the actors (Admin, Question contributor, Question Reviewer, Question paper creator) do not change drastically.
There are some user interaction design and some User interface changes that will be visible to the end-user, on the backend, there will be complete rewiring of the fundamental building blocks.
User story level mapping:
Sl | User story | Present user interaction | Proposed user interaction | Open Items/ Decisions |
1 | Admin can create a Project for sourcing question papers. |
| Admin will go to sorucing (vdn sourcing) and create project along with the question set defining the scope.
| Closed:
Open Tasks:
|
3 | Admin can assign users as Souricng reviewers (Question paper creator) |
| No interaction Change No UI Change | Closed:
|
4 | Admin can assign users as Question contributors and Question reviwers |
| No interaction Change No UI Change | Closed:
Open:
|
5 | Question contributor can view projects assigned to them |
| No Change |
|
6 | Question contributor can Create a new question |
|
| Open:
Closed:
|
7 | Question contributer can make edits in a question for which edits are requested and can re-submit the question |
| No Change
| Closed: (Approach)
Open:
|
8 | Question reviewer can view all the uploaded questions |
| No Change
| Closed: (Approach)
Open:
|
9 | Question reviewer can Accept a question or request for change |
| No Change
| Closed: (Approach)
Open:
|
QuML [Refactor phase 1 & 2] - Mockups + User stories
Old Flow:
A question paper collection is created on the Consumption portal, followed by project creation on sourcing and contribution portals. The life cycle is shown below.
New Flow:
The question set is created on the sourcing portal. The new life cycle is shown below
Old Comments only for reference
Instead of question collection, create a question category
Define sections (chapters) at question set level
Define instructions at question set level (This will be used as instruction in the question paper)
Define blueprint at the project level for a question set
Contribute to a question set
Instead of contributing a question set in the question paper collection, contribute a single question in the question set
Instead of tags being defined at question set, define the tags at the question level
Question review - Instead of question set review, now the review will happen at the question level
Progress against blueprint - Show the progress against blueprint widget for the question set
Print service - Instead of Question paper collection hierarchy, update the print service to work on new question set hierarchy.
Next steps:
Define engineering step by step plan for migration
Close discussions on the new changed frontend flow
Points for Discussion in Implementation of Refactor Flow -
1. Reject Question API: We will add rejectedContributionComments
key of an object type to store questions rejection comments in the question-set schema.
2. Sending a question back for corrections (From Sourcing reviewer to Contributor): Getting error while using /v1/update/do_id
API to update status.
3. Adding marks as an attribute for questions: Add marks
key in question schema.
4. Opening up of previously created UI when user clicks on Upload Content and selects Subjective Questions: We are checking for targetprimarycategories
in sessionContext's nominationDetails
to list the supported primary categories. On submit we fetch the category definition and check the supportedMimeTypes from schema > properties > mimeType
if the supported mime type has more than 1 child then we open the second popup to select mime type else we open the question editor page.