Project - App Update Messaging
Status | READY FOR REVIEW |
---|---|
Contributing Team | @Marco Morales |
Earlier Discovery | N/A |
Linked Initiatives | |
Overview | This project focuses on enhancing the user experience by providing timely and relevant information about app updates and new features. This ensures that our users are always informed about the latest changes and improvements in the app. |
Overview
This project focuses on enhancing the user experience by providing timely and relevant information about app updates and new features. This ensures that our users are always informed about the latest changes and improvements in the app.
Key Use Cases
As an Open edX provider, I can effectively communicate new features and updates to my users, ensuring they have the best experience with the latest version of the app.
As a learner, I want to be promptly informed about the latest features and updates every time I log into the app, ensuring I'm always aware of new tools and improvements that can enhance my learning experience.
Users
App Provider: Any group building the new mobile applications for other site operators / learning academies using Open edX.
Learner: Any Open edX instance learner whose learning site relies on a multi-tenant app build model.
In Scope / Out of Scope
Based on the above use cases, we are breaking down on high-level scope as follows:
In Scope | Out of Scope |
Version Display in Profile: Users can view their current app version, see its status (e.g., "Current"), and access an "Update" button if they're on an older version. | Localization of Update Messages: Translating update messages into multiple languages or tailoring messages for different regions is not within this project's scope. |
Update Banner on Main Dashboard: Designing and implementing a banner that informs users of available updates, with the ability to dismiss the banner and a choice to not see the message again for minor updates. | Offline Update Installation: The ability to download and install updates while offline is not within this project's scope. The update process will rely on users having an active internet connection to access the app store. We may consider introducing an option allowing users to choose whether they wish to enable offline updates. |
Version Detection Mechanism: Implementing a system that can consistently and accurately detect the version of the app installed on a user's device and compare it with the latest version available | Version Rollback Mechanism: Providing users with an option to revert to a previous version of the app is not part of this update messaging project. |
Backend Configuration: Setting up a backend system that allows administrators or developers to mark app versions as "current" or "deprecated." | Dark / Light Mode What’s New Messaging For now we will support a single color and layout for these messages and not consider both a light and dark mode illustration and background color option. |
What's New Screen Design: Designing and implementing a screen that showcases new features added in a release. This screen will be displayed after users log in. |
|
User Feedback Collection: Collecting feedback from users about the new updates or any other app features is not within this project's scope. |
|
In-app Review System: Implement a trigger-based review prompt that appears after a learner completes watching a video. The system will collect user ratings and analytics to track engagement metrics. |
|
MVP Specs
Features & Requirements
In order to realize this MVP, we believe the following features will be required. Refer to the following flow chart for more details:
Feature | Requirements |
What's New Screen (after login) |
|
App Update Version (Main Dashboard) |
|
App Review Prompt |
|
Feature behavior
X
Technical Open Questions
We anticipate the following to some of the key questions that we will need answered during technical discovery.
How will deprecated versions be handled in terms of functionality? Will certain features be disabled?
How will the app store the user's preference if they choose the "Do not show this message again" option for the update banner? How will major or critical updates override this choice?
How will the slide-down animation for the banner be implemented to ensure smooth performance across different devices?
Should the application store all change logs or just the most recent one?
Technical Info
What's New Screen (after login)
Solution description:
Compare the saved version with the current one.
If it's the new installation, show the latest version from WhatsNews JSON; otherwise, compare versions, and if the saved one is different from the current one, show whats_new. save the current version to storage. Compare versions by major and minor but not patch number.
Flowchart:
In app review system (Course Dashboard > Video completed)
Solution description:
Show RatingView after the completion of any video.
If the user rated the app from 1 to 3, prompt them to leave feedback via email.
If the user rated the app from 4 to 5, prompt them to rate it in the AppStore.
If the user left negative feedback or chose the "Maybe later" option, ask them again after 2 minor versions or any major version.
Flowchart:
Open Tasks
Technical discovery + development scope estimates for each stage / deliverable
Design mock ups
UI Examples
What's New Screen
App Update Version
App Review Prompts