Firefox OS Cloud Backup Restore: Difference between revisions
Jump to navigation
Jump to search
(Created page with "The purpose of this is to outline detailed requirements for the backup/restore functionality for a FirefoxOS Smartphone. Note: This is still a draft with our Engineering team...") |
(font edits) |
||
Line 6: | Line 6: | ||
! Category !! User Stories !! More Details !! Priority !! Validations !! User Acceptance Criteria | ! Category !! User Stories !! More Details !! Priority !! Validations !! User Acceptance Criteria | ||
|- | |- | ||
| Setup || When I boot my phone for the first time, I would like the option to configure my backup/restore options. <Note: see other user stories below for details>|| Options would be around 1. Automatic/Manual - If Manual, will only need #4, #6. if automatic, need all. 1. Day 2. Time 3. Connectivity settings (wifi/3G) 4. collections to backup: Mail, Calendar, Contacts etc. 5. frequency of backups (weekly/monthly/quarterly) 6. where to back it up || || || | | '''Setup''' || When I boot my phone for the first time, I would like the option to configure my backup/restore options. <Note: see other user stories below for details>|| Options would be around 1. Automatic/Manual - If Manual, will only need #4, #6. if automatic, need all. 1. Day 2. Time 3. Connectivity settings (wifi/3G) 4. collections to backup: Mail, Calendar, Contacts etc. 5. frequency of backups (weekly/monthly/quarterly) 6. where to back it up || || || | ||
|- | |- | ||
| Settings || The settings app should have a way for me to configure my backup & restore options || Options would be around 1. Automatic/Manual - If Manual, will only need #4, #6. if automatic, need all. 1. Day 2. Time 3. Connectivity settings (wifi/3G) 4. collections to backup: Mail, Calendar, Contacts etc. 5. frequency of backups (weekly/monthly/quarterly) 6. where to back it up || || || | | '''Settings''' || The settings app should have a way for me to configure my backup & restore options || Options would be around 1. Automatic/Manual - If Manual, will only need #4, #6. if automatic, need all. 1. Day 2. Time 3. Connectivity settings (wifi/3G) 4. collections to backup: Mail, Calendar, Contacts etc. 5. frequency of backups (weekly/monthly/quarterly) 6. where to back it up || || || | ||
|- | |- | ||
| Settings || As a user who'd like to backup my phone, I would like options around specific data collections to be included within the backup. options: TBD || Options would be around 1. Automatic/Manual - If Manual, will only need #4. if automatic, need all. 1. Day 2. Time 3. Connectivity settings (wifi/3G) 4. collections to backup: Mail, Calendar, Contacts etc. 5. frequency of backups (weekly/monthly/quarterly) || || || | | '''Settings''' || As a user who'd like to backup my phone, I would like options around specific data collections to be included within the backup. options: TBD || Options would be around 1. Automatic/Manual - If Manual, will only need #4. if automatic, need all. 1. Day 2. Time 3. Connectivity settings (wifi/3G) 4. collections to backup: Mail, Calendar, Contacts etc. 5. frequency of backups (weekly/monthly/quarterly) || || || | ||
|- | |- | ||
| Settings || As a user who has chosen to move forward with the option to manually backup as needed, I should have a way to start my backup process as needed. || the system should notify me that the backup process will begin shortly & to ensure that I am connected to wifi/power source. threshold: tbd|| || || | | '''Settings''' || As a user who has chosen to move forward with the option to manually backup as needed, I should have a way to start my backup process as needed. || the system should notify me that the backup process will begin shortly & to ensure that I am connected to wifi/power source. threshold: tbd|| || || | ||
|- | |- | ||
| Notification || As a user who has selected the option to automatically backup my phone, it'd immensely help if the system gave me a reminder that my phone will be backed up so I ensure that my phone is plugged in during the process || reminder: <x> hrs/minutes before the backup begins || || || | | '''Notification''' || As a user who has selected the option to automatically backup my phone, it'd immensely help if the system gave me a reminder that my phone will be backed up so I ensure that my phone is plugged in during the process || reminder: <x> hrs/minutes before the backup begins || || || | ||
|- | |- | ||
|Automatic Backup || As a user who has selected the option to automatically backup my phone, I should have a way to specify how frequently my phone needs to be backed up || weekly/monthly/quarterly Phase 1: just offering monthly should be a good start || || || | |'''Automatic Backup''' || As a user who has selected the option to automatically backup my phone, I should have a way to specify how frequently my phone needs to be backed up || weekly/monthly/quarterly Phase 1: just offering monthly should be a good start || || || | ||
|- | |- | ||
| Automatic Backup || As a user who has selected the option to automatically backup my phone, I should be given a choice around the time of the day/days when I'd typically prefer my backups be performed || future phase: smart algo to automatically detect low usage times || || || | | '''Automatic Backup''' || As a user who has selected the option to automatically backup my phone, I should be given a choice around the time of the day/days when I'd typically prefer my backups be performed || future phase: smart algo to automatically detect low usage times || || || | ||
|- | |- | ||
| Automatic Backup || As a user who has selected the option to automatically backup my phone, I should have a way to indicate connectivity preferences. || first use wifi. if not available use 3G || || || | | '''Automatic Backup''' || As a user who has selected the option to automatically backup my phone, I should have a way to indicate connectivity preferences. || first use wifi. if not available use 3G || || || | ||
|- | |- | ||
| Automatic Backup || As a user who has selected the option to automatically backup my phone, in the rare occasion that I am using my phone during the time that the backup may be initiated, the system must request my permission to proceed. || how can we detect usage? touch/swipe actions?. The user must have a CTA to proceed w/ backup i.e. swipe to start or click yes to start and potentially get a password confirmation? || || || | | '''Automatic Backup''' || As a user who has selected the option to automatically backup my phone, in the rare occasion that I am using my phone during the time that the backup may be initiated, the system must request my permission to proceed. || how can we detect usage? touch/swipe actions?. The user must have a CTA to proceed w/ backup i.e. swipe to start or click yes to start and potentially get a password confirmation? || || || | ||
|- | |- | ||
| Automatic Backup || As a user who has selected the option to automatically backup my phone, the system should ensure that it will not back up data unless there is a certain threshold of battery life left and connectivity & should notify me accordingly || threshold tbd || || || | | '''Automatic Backup''' || As a user who has selected the option to automatically backup my phone, the system should ensure that it will not back up data unless there is a certain threshold of battery life left and connectivity & should notify me accordingly || threshold tbd || || || | ||
|- | |- | ||
| Backup Destination || as a user who'd like to backup my data, I must be given a choice around where to save my data - local (owned by me) vs. cloud (owned by mozilla or other vendors) || 3rd party choices TBD || || || | | '''Backup Destination''' || as a user who'd like to backup my data, I must be given a choice around where to save my data - local (owned by me) vs. cloud (owned by mozilla or other vendors) || 3rd party choices TBD || || || | ||
|- | |- | ||
| Local Backup || as a user who may wish to save my backup on my local disk, I should be given a choice to configure how much data I'd be willing to store on my local storage option || options 1. free flowing text box 2. until disk space full || || || | | '''Local Backup''' || as a user who may wish to save my backup on my local disk, I should be given a choice to configure how much data I'd be willing to store on my local storage option || options 1. free flowing text box 2. until disk space full || || || | ||
|- | |- | ||
| Authorization || if I have chosen to backup on my local disk, I should be able to authorize this app to access & store my data on the designated folder on my disk/desktop || || || || | | '''Authorization''' || if I have chosen to backup on my local disk, I should be able to authorize this app to access & store my data on the designated folder on my disk/desktop || || || || | ||
|- | |- | ||
| Authorization || once I authorize for backing up my data, I shouldn't be prompted for repeated authorizations unless in the event of an exception. || what are the exceptions? || || || | | '''Authorization''' || once I authorize for backing up my data, I shouldn't be prompted for repeated authorizations unless in the event of an exception. || what are the exceptions? || || || | ||
|- | |- | ||
| Local Backup || as as user who has chosen to backup my data on to my local disk, the system should automatically create a help.txt or similar to outline instructions to restore from this location. || || || | | '''Local Backup''' || as as user who has chosen to backup my data on to my local disk, the system should automatically create a help.txt or similar to outline instructions to restore from this location. || || || | ||
|- | |- | ||
| Notification || every time a backup is completed, I must be notified. || how am I notified? use the notifications tray || || || | | '''Notification''' || every time a backup is completed, I must be notified. || how am I notified? use the notifications tray || || || | ||
|- | |- | ||
| Notification || if a backup failed, I must be notified || || || || | | '''Notification''' || if a backup failed, I must be notified || || || || | ||
|- | |- | ||
| Backup -Fail || if the backup failed due to a loss of connectivity, i must be notified and prompted to continue once connectivity is restored outside of my desired backup times. || the user may be provided with an option to hit continue or restart failed backup. || || || | | '''Backup -Fail''' || if the backup failed due to a loss of connectivity, i must be notified and prompted to continue once connectivity is restored outside of my desired backup times. || the user may be provided with an option to hit continue or restart failed backup. || || || | ||
|- | |- | ||
| Backup - Versions || The system should allow up to 3 versions of backups available to me. || should this be a choice? || Example || Example || Example | | '''Backup - Versions''' || The system should allow up to 3 versions of backups available to me. || should this be a choice? || Example || Example || Example | ||
|- | |- | ||
| Backup - Security || backup must be 100% encrypted || || || || | | '''Backup - Security''' || backup must be 100% encrypted || || || || | ||
|- | |- | ||
| Restore || i must be able to restore from any of the three available backed up versions against my device || should we restrict the device they choose || || || | | '''Restore''' || i must be able to restore from any of the three available backed up versions against my device || should we restrict the device they choose || || || | ||
|- | |- | ||
| Restore || as a user who had chosen to backup my phone to my local disk, i should have a way to restore it from the available back ups. || || || || | | '''Restore''' || as a user who had chosen to backup my phone to my local disk, i should have a way to restore it from the available back ups. || || || || | ||
|- | |- | ||
| Restore || as a user who'd like to restore my data from my cloud backup onto my phone, I should have a way to access my backup versions from the web || need a web interface to view the backup versions by device. || || || | | '''Restore''' || as a user who'd like to restore my data from my cloud backup onto my phone, I should have a way to access my backup versions from the web || need a web interface to view the backup versions by device. || || || | ||
|- | |- | ||
| Restore || The system should notify me to plug into a power source & stay connected to wifi as a reminder during the restoration process || how long would restore take? || || || | | '''Restore''' || The system should notify me to plug into a power source & stay connected to wifi as a reminder during the restoration process || how long would restore take? || || || | ||
|- | |- | ||
| Restore || when I select a particular version from which I would like to restore, the system should quickly provide a list of step by step instructions on what to do next || example: plug your phone to your device, drag/drop or double click etc. || || || | | '''Restore''' || when I select a particular version from which I would like to restore, the system should quickly provide a list of step by step instructions on what to do next || example: plug your phone to your device, drag/drop or double click etc. || || || | ||
|- | |- | ||
| Restore || my phone should automatically restart following the restoration process || would it require a restart? || || || | | '''Restore''' || my phone should automatically restart following the restoration process || would it require a restart? || || || | ||
|- | |- | ||
| Restore || I must be notified if the restoration process failed. || depends on the type of failure and whether the user can be notified. || || || | | '''Restore''' || I must be notified if the restoration process failed. || depends on the type of failure and whether the user can be notified. || || || | ||
|- | |- | ||
| Restore || after a successful restore, my phone should show me my home screen from where I will proceed with the normal functionalities. || || || || | | '''Restore''' || after a successful restore, my phone should show me my home screen from where I will proceed with the normal functionalities. || || || || | ||
|- | |- | ||
|} | |} |
Revision as of 23:54, 17 November 2015
The purpose of this is to outline detailed requirements for the backup/restore functionality for a FirefoxOS Smartphone. Note: This is still a draft with our Engineering teams & UEX teams using this as a reference to - 1. discuss engineering architecture to support these features 2. discuss design proposals from UEX.
Category | User Stories | More Details | Priority | Validations | User Acceptance Criteria |
---|---|---|---|---|---|
Setup | When I boot my phone for the first time, I would like the option to configure my backup/restore options. <Note: see other user stories below for details> | Options would be around 1. Automatic/Manual - If Manual, will only need #4, #6. if automatic, need all. 1. Day 2. Time 3. Connectivity settings (wifi/3G) 4. collections to backup: Mail, Calendar, Contacts etc. 5. frequency of backups (weekly/monthly/quarterly) 6. where to back it up | |||
Settings | The settings app should have a way for me to configure my backup & restore options | Options would be around 1. Automatic/Manual - If Manual, will only need #4, #6. if automatic, need all. 1. Day 2. Time 3. Connectivity settings (wifi/3G) 4. collections to backup: Mail, Calendar, Contacts etc. 5. frequency of backups (weekly/monthly/quarterly) 6. where to back it up | |||
Settings | As a user who'd like to backup my phone, I would like options around specific data collections to be included within the backup. options: TBD | Options would be around 1. Automatic/Manual - If Manual, will only need #4. if automatic, need all. 1. Day 2. Time 3. Connectivity settings (wifi/3G) 4. collections to backup: Mail, Calendar, Contacts etc. 5. frequency of backups (weekly/monthly/quarterly) | |||
Settings | As a user who has chosen to move forward with the option to manually backup as needed, I should have a way to start my backup process as needed. | the system should notify me that the backup process will begin shortly & to ensure that I am connected to wifi/power source. threshold: tbd | |||
Notification | As a user who has selected the option to automatically backup my phone, it'd immensely help if the system gave me a reminder that my phone will be backed up so I ensure that my phone is plugged in during the process | reminder: <x> hrs/minutes before the backup begins | |||
Automatic Backup | As a user who has selected the option to automatically backup my phone, I should have a way to specify how frequently my phone needs to be backed up | weekly/monthly/quarterly Phase 1: just offering monthly should be a good start | |||
Automatic Backup | As a user who has selected the option to automatically backup my phone, I should be given a choice around the time of the day/days when I'd typically prefer my backups be performed | future phase: smart algo to automatically detect low usage times | |||
Automatic Backup | As a user who has selected the option to automatically backup my phone, I should have a way to indicate connectivity preferences. | first use wifi. if not available use 3G | |||
Automatic Backup | As a user who has selected the option to automatically backup my phone, in the rare occasion that I am using my phone during the time that the backup may be initiated, the system must request my permission to proceed. | how can we detect usage? touch/swipe actions?. The user must have a CTA to proceed w/ backup i.e. swipe to start or click yes to start and potentially get a password confirmation? | |||
Automatic Backup | As a user who has selected the option to automatically backup my phone, the system should ensure that it will not back up data unless there is a certain threshold of battery life left and connectivity & should notify me accordingly | threshold tbd | |||
Backup Destination | as a user who'd like to backup my data, I must be given a choice around where to save my data - local (owned by me) vs. cloud (owned by mozilla or other vendors) | 3rd party choices TBD | |||
Local Backup | as a user who may wish to save my backup on my local disk, I should be given a choice to configure how much data I'd be willing to store on my local storage option | options 1. free flowing text box 2. until disk space full | |||
Authorization | if I have chosen to backup on my local disk, I should be able to authorize this app to access & store my data on the designated folder on my disk/desktop | ||||
Authorization | once I authorize for backing up my data, I shouldn't be prompted for repeated authorizations unless in the event of an exception. | what are the exceptions? | |||
Local Backup | as as user who has chosen to backup my data on to my local disk, the system should automatically create a help.txt or similar to outline instructions to restore from this location. | ||||
Notification | every time a backup is completed, I must be notified. | how am I notified? use the notifications tray | |||
Notification | if a backup failed, I must be notified | ||||
Backup -Fail | if the backup failed due to a loss of connectivity, i must be notified and prompted to continue once connectivity is restored outside of my desired backup times. | the user may be provided with an option to hit continue or restart failed backup. | |||
Backup - Versions | The system should allow up to 3 versions of backups available to me. | should this be a choice? | Example | Example | Example |
Backup - Security | backup must be 100% encrypted | ||||
Restore | i must be able to restore from any of the three available backed up versions against my device | should we restrict the device they choose | |||
Restore | as a user who had chosen to backup my phone to my local disk, i should have a way to restore it from the available back ups. | ||||
Restore | as a user who'd like to restore my data from my cloud backup onto my phone, I should have a way to access my backup versions from the web | need a web interface to view the backup versions by device. | |||
Restore | The system should notify me to plug into a power source & stay connected to wifi as a reminder during the restoration process | how long would restore take? | |||
Restore | when I select a particular version from which I would like to restore, the system should quickly provide a list of step by step instructions on what to do next | example: plug your phone to your device, drag/drop or double click etc. | |||
Restore | my phone should automatically restart following the restoration process | would it require a restart? | |||
Restore | I must be notified if the restoration process failed. | depends on the type of failure and whether the user can be notified. | |||
Restore | after a successful restore, my phone should show me my home screen from where I will proceed with the normal functionalities. |
Questions that still need to be answered:
- do we need a unified interface that showcases data on the local disk vs. data on the cloud? I'd think so...
- do we need a restore option on the phone?
- do we restrict backups to device specific backups & request user permission to proceed if they choose the wrong device?