Instructions to use this template:
Table of Contents | ||
---|---|---|
|
Introduction
As a user, I wish to consume relevant content as quickly as possible after installing the app. If the DIAL code is not linked to content, I see a popup telling me that content isn't available - and I'm anyway forced to either scan or enter my details manually. It would be nice if my profile information is automatically set based on the DIAL code I just scanned, even if there's no content linked to it (we atleast know the book that it's associated with).
JTBD
- Jobs To Be Done: When a user scans a DIAL code for which there is no content, they are shown a book results page with the 'Content coming soon' popup. As a user, I should atleast have my profile information set up because of the scan, so that I can browse the content that is present.
- User Personas: Teacher, Student, Ram, Shyam
- System or Environment: Most likely to be used at home, occasionally in school premises.
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
Overview
As a user who scans a code within a book, I'd like to be able to see content that's relevant to me. The closest that's possible should be enabled for me, if the code I scanned doesn't have any content linked to it.
Overall Process Workflow
- User scans a DIAL code.
- User sees a popup saying 'Content is coming soon'.
- User closes the popup, to see the library page - with the board, medium and class automatically set.
- User might continue to scan other DIAL codes, and find / not get results, based on whether the DIAL code is linked to content or not.
- OR the user might choose to navigate via the library and find books relevant for them.
Overview
Already covered in overview above.
Main Scenario
User scans a DIAL code that is linked to a book, but doesn't have any content associated with it.
Srl. No. | User Action | Expected Result |
---|---|---|
User scans DIAL code (which has no content associated within it, but is part of a book) | User is taken to the library page, with the board/medium/class auto-set based on the board/medium/class of the book. The user also sees the relevant coming soon message in a popup. |
Alternate Scenario 1 - User scans a DIAL code that isn't linked to any book
Assuming a DIAL code is available, but not linked to any textbook.
Srl. No. | User Action | Expected Result |
---|---|---|
User scans DIAL code (which has no book associated within it) | User remains on the onboarding page, and sees the relevant coming soon message in a popup. |
Alternate Scenario 2 - User scans a DIAL code that's linked to multiple books and have content linked to it
Title is self-explanatory.
Srl. No. | User Action | Expected Result |
---|---|---|
User scans DIAL code (which has multiple books associated with it) | If the books are from:
|
Alternate Scenario 3 - User scans a DIAL code that's linked to multiple books and the books don't have content linked to it
Title is self-explanatory.
Srl. No. | User Action | Expected Result |
---|---|---|
User scans DIAL code (which has multiple books associated with it) | If the books are from:
|
Exception Scenarios
Srl. No. | Error / Exception | Expected Handling |
---|---|---|
Wireframes
For Future Release
If multiple books are linked to the same DIAL code, if it's not possible to identify that all of them will result in 0 content at the respective nodes - the Coming Soon message should be populated. Leaving this for later, as I suspect this is going to be a wee bit more complicated.
JIRA Ticket ID
Jira Legacy server System JIRA columns key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution serverId 2207a759-5bc8-39c5-9cd2-aa9ccc1f65dd key SB-13149
Localization Requirements
N/A
UI Element | Description | Language(s)/ Locales Required |
---|---|---|
Telemetry Requirements
Event Name | Description | Purpose |
---|---|---|
Auto-set of BMC | Automatically set the Board, Medium and Class | To differentiate the users who manually provide their BMC from the users who have it set automatically. |
Non-Functional Requirements
Performance / Responsiveness Requirements | Load/Volume Requirements | Security / Privacy Requirements |
---|---|---|
Would like for this to happen ASAP (within 1 second?). | N/A since it's a mobile app use-case | |
Impact on other Products/Solutions
N/A
Product/Solution Impacted | Impact Description |
---|---|
Impact on Existing Users/Data
User/Data Impacted | Impact Description |
---|---|
No | This only impacts new users / reinstalls. |
Key Metrics
Srl. No. | Metric | Purpose of Metric |
---|---|---|
FTUE funnel | To see the % of users who go on to complete the core experience on the day of install | |
BMC funnel | To see the % of users from various BMC combinations, to see their FTUE completion rates and retention. |