User Services/Sync: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
 
(23 intermediate revisions by 10 users not shown)
Line 1: Line 1:
{{LastUpdated}}
{{LastUpdated}}


Future home of all things related to the design & development of the '''New Sync''' service that is slated to replace the existing Sync service in late 2013/early 2014. A working name for this project has been PiCL ("Profile in the Cloud"), and the below documents may use this acronym.  
The new home of all things related to the design & development of the '''New Sync''' service that is slated to replace the existing Sync service in late 2013/early 2014. A working name for this project has been PiCL ("Profile in the Cloud"), and the below documents may use this acronym.  


== What Problems Are We Solving? ==
== What Problems Are We Solving? ==
Line 16: Line 16:


== Upcoming releases ==
== Upcoming releases ==
'''Current'''
* [[User Services/Sync/Relaunch | Firefox 29 Cycle Relaunch]]
'''Archived'''
* [[User Services/Sync/v1 | New Sync v1 (MVP)]]
* [[User Services/Sync/v1 | New Sync v1 (MVP)]]
* [[User Services/Sync/v2 | New Sync v2]]


== Meetings ==
== Meetings ==
TBD
Archive the of the Engineering meetings can be viewed at:
* [https://wiki.mozilla.org/Identity/PiCL/Engineering_Meeting_Notes Engineering Coordination Meeting Notes]
 
== Product Requirements and User Stories ==
* Firefox for Android: https://wiki.mozilla.org/Mobile/Projects/Firefox_Accounts_with_Sync_1.1_integration
* Firefox for Desktop: https://wiki.mozilla.org/User_Services/Sync/Relaunch#Desktop_MVP


== UX Designs ==
== UX Designs ==
Line 29: Line 40:
* [[Identity/AttachedServices/Architecture | High level architecture]]
* [[Identity/AttachedServices/Architecture | High level architecture]]
* Dev mailing list: https://mail.mozilla.org/listinfo/sync-dev
* Dev mailing list: https://mail.mozilla.org/listinfo/sync-dev
* [https://wiki.mozilla.org/Identity/PiCL/Engineering_Meeting_Notes Meeting notes]
* Authentication
* Authentication
** Protocol: [[Identity/AttachedServices/KeyServerProtocol]]
** Protocol: Old: [[Identity/AttachedServices/KeyServerProtocol]] Current: https://github.com/mozilla/fxa-auth-server/wiki/onepw-protocol
** Code: https://github.com/mozilla/picl-idp
** Code: https://github.com/mozilla/fxa-auth-server
** API documentation: https://github.com/mozilla/fxa-auth-server/blob/master/docs/api.md
** Dev servers
** Dev servers
*** FxA API: idp.dev.lcip.org
*** FxA API: http://idp.dev.lcip.org
*** FxA Jelly: accounts.dev.lcip.org/flow
*** FxA Jelly: http://accounts.dev.lcip.org/flow (code at https://github.com/mozilla/firefox-account-bridge)
** Key stretching performance tests: https://wiki.mozilla.org/Identity/AttachedServices/Key_Stretching_Performance_Tests
* Service discovery
** Device management (sits next to/in key server): TBD
** Meta server: [[User_Services/Meta]]
* Milestone 1 Storage
* Milestone 1 Storage
** Docs
*** Token server API: https://docs.services.mozilla.com/token/apis.html
** Dev servers
** Dev servers
*** Token server: http://auth.oldsync.dev.lcip.org/
*** Token server: http://auth.oldsync.dev.lcip.org/
Line 52: Line 71:
** User data stats in the existing Sync product: https://id.etherpad.mozilla.org/picl-user-model
** User data stats in the existing Sync product: https://id.etherpad.mozilla.org/picl-user-model
** Technical design review meeting notes: https://etherpad.mozilla.org/identitydesignreview
** Technical design review meeting notes: https://etherpad.mozilla.org/identitydesignreview
** FxA client state transitions: [[User_Services/Sync/FxA_Client_States]]
* QA plan: https://wiki.mozilla.org/QA/Services/SyncTestPlanV1
* QA plan: https://wiki.mozilla.org/QA/Services/SyncTestPlanV1
* Server deployment planning: [[Identity/AttachedServices/DeploymentPlanning]]
* Server deployment planning: [[Identity/AttachedServices/DeploymentPlanning]]
* Bugzilla Meta bugs/dependency trees
* Bugzilla Meta bugs/dependency trees
** Product user stories: https://bugzilla.mozilla.org/showdependencytree.cgi?id=909322&hide_resolved=0
** Desktop: https://bugzilla.mozilla.org/showdependencytree.cgi?id=905997&hide_resolved=0
** Desktop: https://bugzilla.mozilla.org/showdependencytree.cgi?id=905997&hide_resolved=0
** Android: https://bugzilla.mozilla.org/showdependencytree.cgi?id=799726&hide_resolved=0
** Android: https://bugzilla.mozilla.org/showdependencytree.cgi?id=799726&hide_resolved=0
** Server-side: https://bugzilla.mozilla.org/showdependencytree.cgi?id=907475&hide_resolved=0
** Server-side: https://bugzilla.mozilla.org/showdependencytree.cgi?id=907475&hide_resolved=0
* ELM Nightly Builds
** Desktop
*** http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-elm/
** Android
*** http://ftp.mozilla.org/pub/mozilla.org/mobile/nightly/latest-elm-android/
*** http://ftp.mozilla.org/pub/mozilla.org/mobile/nightly/latest-elm-android-x86/
*** http://ftp.mozilla.org/pub/mozilla.org/mobile/nightly/latest-elm-android-armv6/


== User Research ==
== User Research ==
Line 74: Line 102:


=== UX ===
=== UX ===
* Crystal Beasley
* John Gruen
* Ian Barlow
* Ian Barlow
* Zhenshuo Fang
* Zhenshuo Fang
Line 83: Line 111:


=== Product ===
=== Product ===
* Asa Dotzler
* Karen Rudnitski
* Karen Rudnitski
* Deb Richardson
* Deb Richardson
* Rob Lord
* Rob Lord
* Chris Lee


=== Desktop ===
=== Desktop ===

Latest revision as of 01:38, 7 March 2014

Last updated: 2014/03/07

The new home of all things related to the design & development of the New Sync service that is slated to replace the existing Sync service in late 2013/early 2014. A working name for this project has been PiCL ("Profile in the Cloud"), and the below documents may use this acronym.

What Problems Are We Solving?

Right now we have four problems with our existing Sync service. In priority order they are:

1. Usability: First, it's too hard to set up - only 1% of our users have actually done so. Second, it's too hard to add a second device - only 20% of sync users have more than one device (and hence are actually getting any value at all from sync).

2. Quality: The existing Sync codebase and protocol are unable to adequately address the reliability, performance, fault recovery, and efficiency requirements of a high-usage sync system.

3. Scalability: Our sync servers are failing far too frequently resulting in user facing outages.

4. Features: Features we want to build require that we can access data via web apps, which the current sync product cannot support. Competing browsers are building interesting features that can do this. We are at a disadvantage, and it's not for want of ideas.

Upcoming releases

Current

Archived

Meetings

Archive the of the Engineering meetings can be viewed at:

Product Requirements and User Stories

UX Designs

Technical Materials

User Research

TBD

Team

Identity

  • Lloyd Hilaiel
  • Tauni Oxborrow
  • Chris Karlof
  • Brian Warner
  • Danny Coates
  • Zach Carter
  • Vlad Filippov

UX

  • John Gruen
  • Ian Barlow
  • Zhenshuo Fang

Services

  • Mark Mayo
  • Ryan Kelly

Product

  • Karen Rudnitski
  • Deb Richardson
  • Rob Lord
  • Chris Lee

Desktop

  • Gavin Sharp
  • Justin Dolske

Android

  • Mark Finkle
  • Richard Newman
  • Nick Alexander

FirefoxOS

  • Dale Harvey

QA

  • James Bonacci