Mobile/Projects/Firefox Accounts with Sync 1.1 integration
Jump to navigation
Jump to search
Last updated: 2013/12/17
Tracking
- See: Sync MVP tracking
Goals
The goals of this MVP release of the new Sync service are to:
- Replace the existing Sync service with a persistent & scalable system, that closely (but not precisely) matches the old Sync functionality
- Introduce and integrate with the new "Firefox Account" service
- Significantly improve the Sync UX so more people will set up and use the service
- Migrate a majority of existing Sync users to this new service
User stories
Note that the stories on this wiki page do not represent the canonical list. The canonical list of users stories is maintained on Bugzilla and linked to this tracking bug.
MVP
Core user stories
- As a user, I want to be able to pick up any new device and replicate my core Firefox experience so I don't have repeat a bunch of work I've already done on another device.
- AWESOMEBAR & HISTORY - 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 awesomebar experience or other personalizations on each. (Equal to whatever parity with current Sync is in terms of # of days of history.)
- PASSWORDS - As a user, if I have typed in and stored a password in Firefox on one device, 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!).
- OPEN TABS - 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. (Basically the same as current Sync behaviour.)
- BOOKMARKS - 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 yet. 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.
- As a user of Firefox for Android, I do not expect my Reading List content to be synced to other devices at this time, because on many platforms Firefox does not yet have the Reading List feature.
- As a user, I expect Firefox Sync to sync my data relatively frequently, but not instantly.
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.
- NEW 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 browser.
- 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 of my Sync-enabled devices, 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.
- NEW As a user, I want to be able to reset the password for my Firefox Account data from any of my Sync-enabled devices, 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 that prompt either forever (so I don't get bothered again), or to be reminded again later in a day or two (so I remember to look at it in more detail another time). 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, so that I can set up it up in my own time.
Detaching Sync
- As a user, I want to be able to detach my Firefox Account on a device, but best-effort preserve the account and its related data for use in other clients or for later use in this client, to conserve on data costs on my mobile.
Security/Encryption
- NEW As a user, I expect Firefox Sync to securely encrypt all my Firefox server data with my Firefox Account password.
Feature Usage Information
- Nothing
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
Strategy
- We want to encourage existing Sync users to migrate to a Firefox Account, without harming the experience of users who aren't ready to move.
- We're aiming for an overlap period between Sync and Sync.next. This will reduce the risk of users having partitions in their devices, reduce problems with upgrade/downgrades and staged releases, etc. The exact duration of this overlap period will depend on several factors: complexity, cost, time to market, and market parity.
- Delayed upsell. We want to sell Sync.next and Firefox Account once users are ready to upgrade -- that is, they have the right version of Firefox on each of their devices.
- Forcing function. As we ramp up, we'll remove the ability to set up an old Sync account from each product. Eventually we will force users off the old service and decommission it. See overlap period.
Migration mechanism
- Detect specific states.
- Non-email Sync account name. No migration possible.
- Single device. Encourage migration! No partitioning possible!
- Self-hosted. Offer to migrate to Mozilla's system if there's no locked pref to indicate that that's not desirable, provide docs to support continued self-hosting, inform the user of decommissioning plans so they can make an informed choice.
- Offer to set up a new Firefox Account using their same email address. Enter the normal account setup flow, which will take care of email verification. Don't reuse the password -- it's gone over the wire, many users won't remember it, and it's probably neither strong nor memorable.
- Preserve data syncing preferences, also allowing user to make new decisions at this point.
- Write decommissioning sentinel into the old Sync account. (bug 895526, bug 895518.)
- Disable or delete local Sync.old account.
- Clean up local prefs for sanity.
- Configure to intercept old account hooks e.g., Send Tab intents.
Design requirements
- Only one flag day requiring user involvement.
Non-goals
- Migration of data.
- Simultaneous syncing to Sync.old and Sync.next.
Open issues and action items
Please strikethrough when complete. Thanks!