Table of Contents
Introduction
Field tests have shown that teachers struggle to:
- Find their textbooks when setup by someone else on the desktop app for use in class
- Find textbooks or content that they would like to download
- Realise that they are online and can download content
Owing to this, there is a need to improve content discoverability on the desktop app.
JTBD
- Jobs To Be Done:
- As a teacher/student, I want to find my textbook quickly, So that I can view digital content that is linked to it.
- As a teacher at home, I want to find textbooks to download, So that I can take it with me to school on a pendrive.
- User Personas: Government school teacher, student
- System or Environment: At home with intermittent connectivity, At school with intermittent or no connectivity
Requirement Specifications
This section consists of requirement specifications for specific use cases in the User JTBD. The requirements for each use case are elaborated in detail through sub-sections for:
- Use case overview
- Overall process workflow
- Associated user stories
- Non-functional requirements
- Localization requirements
- Telemetry requirements
- Dependencies
- Impact on other products
- Impact on existing data
<Improve the experience of the My Library and Browse Online so that teachers can find textbooks faster> Overview
Todays My Library page has a Recently Added section, and class-based categories. Teachers and students don't find this categorisation very intuitive, and hence end up trying to use filters, or scrolling through the recently added section in order to find the book that they are looking for. Teachers are also unable to rationalise the difference between their library and the browse online section.
This story involves renaming My Library to My Downloads, adding subject based categories, an all downloads section and improving the filters to allow users to navigate between medium and class.
<Main Scenario>
Srl. No. | User Action | Expected Result |
---|---|---|
1 | A user installs the app and lands on My Downloads | They see an empty page with an instruction to load content |
2 | They select the option to load content | They are shown 2 options - one to import from a pendrive and the other to download from the internet. If they are online, the online option is marked as recommended. If they are offline, the online option is disabled, with an explanation as to why. |
3 | The user imports textbooks from a pendrive | They see the textbooks listed under the respective class, medium and subject in the library They also see the textbook listed under "All Downloads" section They can export the content to a pendrive if they choose to |
4 | The user imports an individual content from the pendrive | They see that content listed only in the "All downloads" section, and not in the subject based categories They can export the content to a pendrive if they choose to |
5 | The user comes online | They see a message in the right hand side panel, indicating to them that they can download content now If they select that option - they are taken to the page where they can browse online |
6 | They download a specific content from the online section | They are shown the same content in their My Downloads section, which follows the same rules as the import They can export the content to a pendrive if they choose to |
7 | A user changes the board, medium or class through filters | They should be able to see books under subjects based on the criteria chosen by the user |
<Alternate Scenario 1>
Srl. No. | User Action | Expected Result |
---|---|---|
1 | A user clicks on Browse Online when there is no internet | They are shown an empty page indicating that there is no internet, with an option to load content |
1 | A user loads their Library page and they are on a machine with low RAM | Lazy loading should kick in to ensure the user sees some immediate feedback |
2 | A user loads more than 4 textbooks in a category | They are shown options to navigate through all the books, with books being ordered by the latest first |
3 | A user changes their interface language to Urdu | They are shown the My Library page in an RTL layout |
Wireframes
JIRA Ticket ID
<Improve the textbook details page so that a user can play the exact content they're looking for> Overview
Based on field studies, it is apparent that users struggle with the actions to perform on the textbook details page. This needs to be improved in order to
- Ensure the user is shown the textbook TOC, and can easily navigate between chapters to get to the content they're looking for.
- Ensure the user can play content from the TOC - and that they can additionally download the content or copy it to an external source, should they choose to do so.
- Ensure the user can also download the entire textbook or copy the entire textbook to an external source, should they choose to do so.
<Main Scenario>
Srl. No. | User Action | Expected Result |
---|---|---|
1 | A user opens up a textbook from either | |
2 | ||
3 | ||
4 | ||
<Alternate Scenario 1>
Srl. No. | User Action | Expected Result |
---|---|---|
1 | ||
2 | ||
3 |
Wireframes
https://whimsical.com/QU71zYkvVcDomG6pvqjD9R
JIRA Ticket ID
<Prompt users to import or download content as needed> Overview
<Main Scenario>
- Indicate to users that they have come online and can download content. Similarly, when they're offline - they should be prompted that they can upload content from external sources.
- Allow users to distinguish between content they have already downloaded and content they have not yet downloaded (both in their library sections and when they search)
- When a user searches for content, show both locally downloaded content and content from the server that is yet to be downloaded.
Srl. No. | User Action | Expected Result |
---|---|---|
1 | User installs and lands on the desktop app | They land on their downloads tab with an option to load content |
2 | They choose the option to Load Content | They are provided two methods to load content - from a pendrive or from the internet The internet option is disabled if the user is offline, and is recommended to the user if they are online |
3 | They load some content | They are shown the content in the My Downloads tab, |
4 | ||
<Alternate Scenario 1>
Srl. No. | User Action | Expected Result |
---|---|---|
1 | ||
2 | ||
3 |
Wireframes
https://whimsical.com/QU71zYkvVcDomG6pvqjD9R
JIRA Ticket ID
Telemetry Requirements
Event Name | Description | Purpose |
---|---|---|
Non-Functional Requirements
Performance / Responsiveness Requirements | Load/Volume Requirements | Security / Privacy Requirements |
---|---|---|
Impact on other Products/Solutions
Product/Solution Impacted | Impact Description |
---|---|
Impact on Existing Users/Data
User/Data Impacted | Impact Description |
---|---|
Key Metrics
Srl. No. | Metric | Purpose of Metric |
---|---|---|