Last updated: 2014/01/13
Goals
The goal of this MVP release is primarily to provide an easy way for users to replicate their Firefox browser experience across any desktop, mobile or tablet screen. Broken down, this includes:
- Introducing "Firefox Account" to Android users
- Providing a much-improved mechanism for sign-up and sign-in to a functional sync experience
- Objective: reduce barrier to entry to sign-up to use sync functionality
- Objective: reduce number of failed attempts in setting up the account
- Utilise the existing sync service as the first valuable service attached to Firefox Accounts
The underlying tactics to achieve these goals are to:
- Integrate Firefox Accounts with the Current, Existing Sync (v 1.1) service
- Improve the sign-up and sign-in flow for sync via Firefox Accounts (username & password)
- Promote sync in-product and in product marketing materials
- Only ONE flag day is allowed
- Applicable for current users of sync and new users of Firefox Accounts integrated with current sync
- ie when 'new sync / next.sync' is available, no user action must be required
Non-goals
- Simultaneous syncing across existing sync account with Firefox Account
- No support in syncing over reading lists or any home page management
- No support for syncing add-ons between Desktop and Firefox for Android
- No support for syncing of FxOS data types (including browser information)
- No support for syncing Marketplace data types
- No explicit UX in Firefox for Windows 8 Touch (metro) - only classic Desktop will contain the UX for Firefox Account and Sync management
Common MVP - requirements
General
- Users can create a Firefox Account
- Users can delete their Firefox Account
- Firefox Account will enable the current Sync (v1.1) service
- Users can sign in to their Firefox Account
- Users can sign out of their Firefox Account
- No support for federated accounts (although it is understood persona may be leveraged)
- Current sync functionality must be supported, with the following being must-haves:
- Bookmarks must be synced, with no requirement to manage bookmarks from the non-originating
- History must be synced (to make the awesomebar relevant) using the current sync algorithm for number of days we sync
- Passwords must be synced to make the mobile experience that much tighter
- Security standards must be adhered to in order to protect my saved passwords during syncing
- Add-ons must be synced between desktop machines only
- ?? 'Clearing Private Data' in the Settings menu results in a new UX flow that educates users on what this means when a user has a Firefox Account that enables sync
- Give the choice to either delete : A) session data from 'my FxA that enables sync' so that it doesn't get synced across (and back again); or B) all of my data from 'my FxA that enables sync' ??
- 'Sync' as a name remains unchanged in the UI or corresponding materials
Set-up & Account Management
- When a user first installs Firefox, a prompt will be presented to create a Firefox Account to enable Sync
- Creation of a Firefox Account is via username (email address) and password
- COPPA requirements when creating a Firefox Account must be adhered to within the creation flow
- Present to the user what data will be synced and how this relates to their Firefox experience
- Includes messaging what 'history' really means to the user and what benefit syncing history provides
- Provide an option for which sync data types can be synced before the initial sync begins, applied to the Firefox Account level and not on a per-device level
- https://wiki.mozilla.org/User_Services/Sync/Datatype_Selection_Fx29
- Users must not be forced to set up a Firefox Account if they either wish to defer the setup experience or never sign up at all. In this case, the user must be able to continue using the browser as expected, but without any benefits to having a Firefox Account
- This also means the user will not be able to benefit from sync - if a user wishes to set up sync, they can only do so via a Firefox Account come the introduction of Firefox Accounts
- Users with an existing current Sync account (2+ devices attached to existing sync) must still be able to continue using their sync account using their existing connected devices for a transition period (minimum 3 months / 2 releases from when outbound communication has begun)
- Users with an existing current Sync account (2+ devices attached to existing sync) should have a link somewhere that they can follow to explain what Firefox Accounts is and that it will be 'coming soon', given that upsell / migration will not be available to them until Fx 30
- Users must be able to change their Firefox Account passwords
- Users must be able to reset their Firefox Account passwords
- For users who have not signed up to Firefox Account upon initial install, they may be notified or prompted to set one up in order to enable Sync
- For users who have not signed up to Firefox Account upon initial install, they must be able to initiate and complete the process from somewhere in the Settings menu
- For users who do not have an existing sync account in Fx 29, be able to present a snippet in the promo banner advertizing and linking to the FxA account flow to enable sync
- For users who have not signed up to Firefox Account or have existing sync enabled, present the ability to create an account to enable sync from the 'sync tabs' panel. NB - this is a nice-to-have in Fx 29.
Existing sync
- By setting up Firefox Account on a desktop or Android device, users expect the sync experience to propagate across all attached instances where Firefox Account signed-in and used; including bookmarks, history (awesomebar results), passwords, ability to send open tabs, add-ons [between desktop instances only]
- Frequency of syncing should remain the same when we transition to the new account creation model
Detaching Sync
- If a user wants to disable or delete their Firefox Account from a particular desktop or Android device, data previously synced should still remain on other instances where Firefox Account is active
- If a user wants to disable or delete their Firefox Account from a particular desktop or Android device, data should be preserved locally so that 'sync' stops, but the browser's current behaviour does not change from when sync stopped
Security/Encryption
- It is expected that synced data is encrypted securely along with their Firefox Account password
- Security defaults should be the same as per existing Sync 1.1 logic, with higher-level security options available
- Expected: all user data currently irrecoverable
Performance & Stability
- In the event of service interruption to Sync, this must have no impact with current use of the browser
- In the event of service interruption, all data that should be synced will sync once service is restored in a way that is seamless to the user and without degradation to browser usage
Firefox for Android MVP - contextual user stories
NB: [AC] = acceptance criteria
Set-up & Account Management
- As a Firefox for Android user, I want the option of setting up a new Firefox Account when I first install Firefox, so I can sync my browser data between my devices.
- As a user, I want a way to clearly understand what data Sync is actually Syncing, what that data means in terms of my browser functionality, and what happens to that data when I have logged out of my Firefox Account.
- As a user, I want to set up a Firefox Account using an email address and password of my choice, so I am not required to use any particular third-party sign-in service - I am comfortable using an email address of my choice for this purpose.
- As a user, I don't want to be forced to create a Firefox Account when I first start using Firefox, so I can start using the browser as quickly as possible once I've downloaded and installed it.
- As a user, I want all of my data (history, bookmarks, etc.) to be saved on my local machine whether or not I've set up a Firefox Account, so I am still able to build up a collection of data and personalize my Firefox experience over time.
- As a user, I want to be able to change the password for my Firefox Account data from any device that allows me to sign into my Firefox Account, so if someone does steal my laptop or other mobile device they won't be able to access any new data that is added to my Sync Account, even though they will be able to access the data that had been previously synced and is local on the device.
- As a user, I want to be able to reset the password for my Firefox Account data from any device that allows me to sign into my Firefox Account, so I can continue using my Firefox Account even if I have forgotten my password.
- As a user, I want to be prompted to create a Firefox Account when I first install my browser, but I want it to be easy to dismiss with a prompt to dismiss either forever (so I don't get bothered again), or to be reminded again later. I also want it to be very easy to get more details about what a Firefox Account is and why I would want it before I go through the process of creating one.
- As a user, I want to be able to go into a settings menu to create my Firefox Account [to enable sync], so that I can set up it up in my own time.
- As a product manager, I want to use the 'promo banner' real estate on the about:home default page to advertize the ability to create a Firefox Account to enable sync for new users only (not visible to users with an existing sync account) in Fx 29 as a real ideal way of spreading the message in-product.
- As a user, I want to be able to go into the 'sync tab' panel and be presented with an option to create my Firefox Account to enable sync to serve as another entry point a user may stumble upon. NB this is a nice-to-have for Fx 29, otherwise can be moved to Fx 30.
- As a user, when I select 'Clear Private Data' in my browser, I need to be educated on what my choices are in how it relates to my Sync functionality so that I don't inadvertently have the wrong expectations about its behaviour.
Core existing sync user stories
- As a user, I want to be able to pick up any new device and replicate my Firefox experience so I don't have to repeat a bunch of work I've already done on another device or computer.
- As a user with several devices, I want my core Firefox experience to be available on all devices, so I don't have to spend a lot of time rebuilding my top sites & awesome screen experience.
- As a user, if I have typed in and stored a password in Firefox on one device or computer, I don't want to have to type and store that password again on any of my other devices so my web accounts & passwords are magically available on all of my devices (especially important so I don't make typing mistakes on my mobile and become frustrated!).
- As a user, I want the option of syncing my tabs from other devices so I can pick up where I left off when I switch to another device.
- As a user, I want all of my bookmarks to be synced across my devices, although I don't expect full bookmark management tools on mobile devices. Any bookmarks I create while on mobile devices should be put into a single "Mobile" (or similar) folder which is then synced. Desktop bookmark organization & behaviour should not change and vice versa.
Detaching Sync
- As a user, I want to be able to stop Syncing to preserve data costs on my mobile, but be able to preserve the ability to sync when I resume syncing again.
Security/Encryption
- As a user, I expect Firefox Sync to securely encrypt all my Firefox server data with my Firefox Account password.
Performance & Stability
- As a user, in the event of Sync service interruptions, I expect to be able to use my browser and previously-synced local data as normal, even if Firefox cannot access the Sync servers for an extended period of time.
Migration
Strategy
- We want to encourage existing Sync users to migrate to a Firefox Account, without harming the experience of existing users (defined as those who have 2+ devices attached to an existing sync account) who aren't ready to move for a minimum period of 3 months from when outbound communication has begun.
- There must be overlapping support for current sync accounts who haven't signed up to Firefox Account and to the new Firefox Account & sync v1.1 for a minimum period of 3 months from when outbound communication has begun
Migration mechanism
https://wiki.mozilla.org/User_Services/Sync/Transition_To_FxA_Sync