Firefox/Features/Sync Setup Improvements: Difference between revisions

Jump to navigation Jump to search
Rewrite page into Form Feature Page.
(Rewrite page into Form Feature Page.)
Line 1: Line 1:
 
{{FeatureStatus
{| class="fullwidth-table"
|Feature name=Sync Setup Improvements
|-
|Feature stage=Design
| style="font-weight: bold; background: #DDD;" | Feature
|Feature status=In progress
| style="font-weight: bold; background: #DDD;" | Status
|Feature status note=Firming up mockups.
| style="font-weight: bold; background: #DDD;" | ETA
}}
| style="font-weight: bold; background: #DDD;" | Owner
{{FeatureTeam
|-
|Feature product manager=Jennifer Arguello
<section begin="status" />
|Feature lead engineer=Richard Newman
| '''Sync Setup Improvements'''
|Feature qa lead=TBD
| {{StatusHealthy|status=Solidify requirements.}}
|Feature ux lead=Alex Faaborg
| 2011-06-03
|Feature additional members=Allison Naaktgeboren
| Jennifer Arguello
}}
<section end="status" />
{{FeaturePageBody
|-
|Feature overview=Sync is a service to keep the Firefox experience consistent across multiple devices. The adoption rate of new Sync users has plateaued and the percentage of single-device Sync users is the majority of users. The two main themes of this feature are to increase the adoption rate for Sync and to increase the number of Sync users with multiple devices (primarily mobile devices). The goals below represent the findings of Sync setup usability testing and the culling of various feedback channels.
|}
 
== Team ==
 
* '''Lead Developer''': TBD
* '''Product Manager''': Jennifer Arguello
* '''QA''': TBD
* '''UX''': Alex Faaborg
* '''Project Manager''': Jennifer Arguello
 
== Feature Overview ==
Sync is a service to keep the Firefox experience consistent across multiple devices. The adoption rate of new Sync users has plateaued and the percentage of single-device Sync users is the majority of users. The two main themes of this feature are to increase the adoption rate for Sync and to increase the number of Sync users with multiple devices (namely mobile devices). The goals below represent the findings of Sync Set Up usability testing and the culling of various feedback channels.  


'''Goals'''
'''Goals'''
* Decrease non-essential messaging in the Set Up flow
* Decrease non-essential messaging in the setup flow
* Insure the user is confident Sync will keep synced data secure and private
* Ensure the user is confident that Sync will keep synced data secure and private
* Let the user know that Sync is set up and working
* Let the user know that Sync is set up and working
* Make Sync Setup on a mobile device easier
* Make Sync setup on a mobile device more accurately reflect user expectations
|Feature users and use cases=User: The user is a Firefox 4.0+ user. She/he has multiple devices that she/he would like to keep in Sync. The user might span the spectrum of technical aptitude.


== User & Use Cases ==
* A user would like to set up Sync on one desktop computer. We care very little about this case: we wish to discourage the use of Sync (as implemented, at least) as a backup service.
User: The user is a Firefox 4.0+ user. She/he has multiple devices that she/he would like to keep in Sync. The user may be span the spectrum of technical aptitude.
 
* A user would like to set up Sync on one desktop computer
* A user would like to set up Sync on two desktop computers
* A user would like to set up Sync on two desktop computers
** Non-Sync user flow
** Non-Sync user flow
** Sync user flow
** Sync user flow.
* A user would like to set up Sync on a mobile device
* A user would like to set up Sync on a mobile device
** Non-Sync user flow
** Non-Sync user flow
** Sync user flow
** Sync user flow
** Typically starting from the mobile device.
|Feature dependencies=* Home Tab on desktop. Our new setup flow relies on a consistent location for a "Pair a device" link on both desktop and mobile. Some interaction with Firefox team needed.


== Dependencies ==
* Updated flows from faaborg. (Estimated: second week of August.)
Defining dependencies so you know who owes to whom what and when. Can include bug numbers if that's how we want to track tasks.
|Feature requirements=* Improve wording.
 
** Provide reassurance of security
{| class="fullwidth-table sortable" style="width: 950px"
** Eliminate identified sources of confusion
|-
** Demonstrate value.
| style="font-weight: bold; background: #DDD; width: 150px" | Dependency
* Provide a consistent location for pairing two devices, complete with appropriate wording to encourage two-device use of Sync.
| style="font-weight: bold; background: #DDD; width: 80px" | Owner
* Show progress during Sync setup completion.
| style="font-weight: bold; background: #DDD; width: 80px" | Status
* Rework setup flow to follow pairing expectations.
|-
| Provide updated setup flow to Web Dev
| Jen
| Due date TBD
|-
| [http://www.mozilla.com/en-US/mobile/sync/ Sync Web Page] Copy Updates
| Web Dev (Caitlin?)
| Due date TBD
|-
| Provide updated set up flow to video folks (not sure who?)
| Jen
| Due date TBD
|-
| [http://www.mozilla.com/en-US/mobile/sync/ Sync Web Page] Video Updates
| ?
| Due date TBD
|-
| Provide updated set up flow to Support
| Jen
| Due date TBD
|-
| Update support documentation
| Support Team (Michael Verdi?)
| Due date TBD
|-
| Provide l10n team en-us copy
| Jen?
| Due date TBD
|-
| Update l10n Sync pages
| Axel?
| Due date TBD
|-
| Update blogs of changes
| Jen
| Due date TBD
|}
 
== Requirements ==
 
{| class="fullwidth-table" style="width: 950px"
|-
| style="font-weight: bold; background: #DDD; width: 30px" | Must Have
| style="font-weight: bold; background: #DDD; width: 200px" | Requirement
| style="font-weight: bold; background: #DDD; width: 100px" | Notes
|-
| X
| The user has a streamlined set up experience
|
|-
| X
| The user is reassured that sync data is secure
|
|-
| X
| The user is not confused by any step in set up
|
|-
| X
| The value of Sync is clear to the user
|
|-
| X
| For initial Sync setup, the user must know that Sync is working before set up is complete
|
|-
| X
| When setting up a subsequent desktop browser, the user must know that Sync is set up
| See in Mock up how personas should be updated. Still not clear. Adding to issues list.
|-
|
| For a Sync user, reinforce how Sync works in the background
| This is not part of set up, hence why it would be nice to have. It is not a blocker to completing this feature.
|-
|
| For a Sync user, reinforce the Sync data is secure
| This is not part of set up, hence why it would be nice to have. It is not a blocker to completing this feature.  
|}
 
'''Non-goals'''
* Enhance the Firefox Home set up experience
 
== User Experience Design ==
* [http://people.mozilla.com/~faaborg/files/projects/sync/usabilityProblems/# UX Mock ups]
 
 
== Test Plans ==
 
== Open issues/risks ==
* '''Risk:''' There is a risk of a poor set up of a mobile device because a keyboard short cut may be too advanced for the non-techy Firefox users. Mitigation is to socialize this approach and get input from various folks including UR
* '''Risk:''' Not having the web page updates done by the time this feature is ready to launch is a launch blocker. The mitigation is to work with the web dev team to align schedules.
* '''Issue:''' There are no engineering resources available to do this work at this time. Jennifer will work with engineering to resolve this and get a timeline of staffing.
* '''Issue:''' Are there any security risks?
* '''Issue:''' Are there any privacy risks?
* '''Issue:''' The way a user would know that a second computer has been setup for sync is unclear.
 
== Implementation ==
Links to bugs -- we '''don't''' try to track the detailed progress here, that should happen in bugzilla.
 
[https://bugzilla.mozilla.org/showdependencytree.cgi?id=675826 BUGS]!
 
'''Kept for history purposes. Needs to be converted into bugs once engineering decides what tasks need to be done'''
 
* (must have) User Experience is good for both technical and non-technical Firefox users         
**define "good". No point having a requirement that we can't decide whether we've succeeded or not!
* (must have) hide Sync Key during set up flow
**doing this seems like it depends on having some alternative mechanism for backing up the sync key. If we hide the Recovery Key, and give no indication to users that it needs to be stored somewhere, we'll get people formatting their machine and discovering that they lost their sync key. Ask Faaborg :D
* (must have) communicate re Sync Security in set up flow
* (must have) provide "Sync is working" messaging on the desktop client
* (must have) For user initiated Syncs show syncing feedback on the desktop client
* (must have) Show Sync is working at the end of the set up process
* (must have) Add a link for more information on setting up a mobile device during the set up process
* (must have) Provide visible feedback that a second desktop client is connected for Sync or Sync on close
**Sync on close?! It's mentioned in comment#1 of {{bug|600429}}.  
* (must have) A user starting with a mobile device must have a streamlined way to add a device on the desktop client
**AKA "implement Easy Setup from Fennec" — Bug 624028.
** JA Response: This bug's title is appropriate, but I would work with Alex and myself to work out the flow details.  
* (nice to have) A better expression of (or link to) the value proposition of Sync during Sync set up bug 587057
* (nice to have) Remove unnecessary captcha entry from set up flow, while insuring it shows up for suspicious users
 
Additional possible tasks:
 
* Eliminate captcha during signup for most users
* Add instrumentation to identify user signup pain points
 
Future areas of work:


• "Instant signup" — J-PAKE between two devices, creating an ad-hoc Sync account.
Non-dev:
* Update support documentation (Michael Verdi?)
** Needs flows (Jen)
* Update blogs (Jen)
** Video?
* Update web page copy (Caitlin? Jen?)
* Update l10n Sync pages (Axel?)


__NOTOC__
Bonus:
* Modal setup wizard page.
* Decide on captcha elimination/reduction.
* User-customized Firefox button for "my browser" feel.
|Feature non-goals=* Eliminate mention of Sync Key/Recovery Key. We need an alternative channel for that before we remove it; just be less patronizing.
* Improve Firefox Home setup experience.
|Feature functional spec=* Rename Sync Key to Recovery Key. {{bug|656492}}.
* "Pair this device":
** Mobile: {{bug|675820}}
** Desktop: {{bug|675821}}, depends on Home Tab ({{bug|551849}}, {{bug|588230}}).
* Progress reporting:
** Upload on desktop. {{bug|675822}}.
*** Lives in a "first sync status page" tab, opened after setup.
** Download on mobile. {{bug|675824}}.
*** Waits for upload from other client to server. Indeterminate progress bar.
*** Regular progress bar once download completes.
*** Explicit exit from status page, but don't need to wait for completion.
** Download on desktop (related to both):
*** Second desktop should start downloading as soon as second computer is connected.
* Reworked flow. {{bug|675823}}
** Desirable: land with "Pair this device" on Home Tab.
** Maintain some method to asynchronously set up two devices: the "two desktops in different places" scenario. Single point of entry with a get-out clause: "I'm not near my other device".
** Attempt to pair/join via create account flow: help users who get lost. Solicit email prior to that fork.
** Delay mobile device sync until desktop has synced. J-PAKE channel notification?
|Feature ux design=Bug for updated flows: {{bug|675813}}
}}
{{FeatureInfo
|Feature priority=P1
|Feature roadmap=Sync
|Feature secondary roadmap=User Experience
|Feature list=Services
|Feature engineering team=Sync
}}
{{FeatureTeamStatus}}
canmove, Confirmed users
640

edits

Navigation menu