|
|
| (7 intermediate revisions by 2 users not shown) |
| Line 1: |
Line 1: |
| = Overview = | | = Overview = |
|
| |
|
| [[https://wiki.mozilla.org/Identity|Identity]] Engineering plan.
| | [https://wiki.mozilla.org/Identity Identity] Clients and Server Engineering plans. |
|
| |
|
| This document addresses the build portions of the Identity service, including the Verified Email Protocol (VEP), Verified Email Service (VES), Web Based Verified Email Client (wVEC), Firefox Native Verified Email Client (fVEC) | | This document addresses the build portions of the Identity service, including the Verified Email Protocol (VEP), [[Identity/EngPlan/VESEngPlan|Verified Email Service]] (VES), [[Identity/EngPlan/wVEC|Web Based Verified Email Client]] (wVEC), [[Identity/EngPlan/fVEC|Firefox Native Verified Email Client]] (fVEC) |
|
| |
|
| = Key People =
| | Please refer to the linked documents for a discussion of each segments requirements and milestones. |
|
| |
|
| {{ProjectTeam
| | == Stakeholders and Dependents == |
| |techLead=[[jconlin|JR Conlin]] (VES)
| | '''Who is dependent on this code? |
| |addedDevs=[[rmiller| Rob Miller]] (wVEC), [[ddahl| Dave Dahl]] (fVEC)
| |
| |projMgr=[[dmills| Dan Mills]]
| |
| |prodMgr=[[dmills| Dan Mills]]
| |
| |ux=TBD
| |
| }}
| |
|
| |
|
| = Work Items =
| | What timelines do they require? |
| == Verified Email Server ==
| |
| Top-level tracking bug: {{https://bugzilla.mozilla.org/show_bug.cgi?id=663887|663887}}
| |
|
| |
|
| {{WorkItem
| | What points of interaction are there? |
| |workItemDesc= Port existing code to new VEP specifications
| | ''' |
| |assignee=jrconlin
| |
| |bug=663276
| |
| |assumes=Finalization of the internal Certificate format
| |
| |workingEst=Code Complete (as of 2011Jun13)
| |
| |bestCase=
| |
| |worstCase=
| |
| |mostLikely=
| |
|
| |
|
| }}
| | == Summary == |
| | ''' Beta available: |
|
| |
|
| {{WorkItem
| | Internal available: |
| |workItemDesc=Integrate to Clients
| |
| |assignee=jrconlin
| |
| |bug=TBD
| |
| |assumes=completion of baseline server and client
| |
| |workingEst=4 days
| |
| |bestCase=2 days
| |
| |worstCase=6 days
| |
| |mostLikely=4 days
| |
| }}
| |
|
| |
|
| {{WorkItem
| | Production available: |
| |workItemDesc=Complete work on server admin page (address registration)
| | ''' |
| |assignee=jrconlin
| |
| |bug=_*TBD*_
| |
| |assumes=Completion of UX designs, Completion of core server
| |
| |workingEst=4 days
| |
| |bestCase=3 days
| |
| |worstCase=4 days
| |
| |mostLikely=6 days
| |
| }}
| |
| | |
| {{WorkItem
| |
| |workItemDesc=Long term data storage for VES
| |
| |assignee=jrconlin
| |
| |bug=_*TBD*_
| |
| |assumes=finalization of the VES data requirements
| |
| |workingEst=*code complete as of 2011Jun13*
| |
| |bestCase=
| |
| |worstCase=
| |
| |mostLikely=
| |
| }}
| |
| | |
| {{WorkItem
| |
| |workItemDesc=Performance testing for VES
| |
| |assignee=jrconlin
| |
| |bug=_*TBD*_
| |
| |assumes=Working VES
| |
| |workingEst=4 days
| |
| |bestCase=1 day
| |
| |worstCase=6 days
| |
| |mostLikely=4 days
| |
| }}
| |
| | |
| {{WorkItem
| |
| |workItemDesc=Validating unit test coverage for QA
| |
| |assignee=jrconlin
| |
| |bug=_*TBD*_
| |
| |assumes=Working VES
| |
| |workingEst=4 days
| |
| |bestCase=1 day
| |
| |worstCase=6 days
| |
| |mostLikely=4 days
| |
| }}
| |
| | |
| {{WorkItem
| |
| |workItemDesc=Misc. server deployment tasks and checks (LDAP connection, Mail server, etc.)
| |
| |assignee=jrconlin
| |
| |bug=_*TBD*_
| |
| |assumes=Working VES
| |
| |workingEst=2 days
| |
| |bestCase=1 day
| |
| |worstCase=5 days
| |
| |mostLikely=1 days
| |
| }}
| |
| | |
| === External Dependencies ===
| |
| | |
| {{WorkItem
| |
| |workItemDesc=Security Review
| |
| |assignee=jrconlin, opsec-TBD
| |
| |bug=_*TBD*_
| |
| |assumes=
| |
| |workingEst=_*REQUIRES SCHEDULING*_
| |
| |bestCase=
| |
| |worstCase=
| |
| |mostLikely=
| |
| }}
| |
| | |
| {{WorkItem
| |
| |workItemDesc=Package and Deploy server to Test
| |
| |assignee=TBD
| |
| |bug=_*TBD*_
| |
| |assumes=Working service
| |
| |workingEst=TBD
| |
| |bestCase=
| |
| |worstCase=
| |
| |mostLikely=
| |
| }}
| |
| | |
| {{WorkItem
| |
| |workItemDesc=Q.A. testing
| |
| |assignee=TBD
| |
| |bug=_*TBD*_
| |
| |assumes=Working Service; jrconlin provides proper testing architecture
| |
| |workingEst=11 days
| |
| |bestCase=5 days
| |
| |worstCase=20 days
| |
| |mostLikely=10 days
| |
| }}
| |
| | |
| == Web Verified Email Client (wVEC) ==
| |
| {{WorkItem
| |
| |workItemDesc=Local crypto implementation, (notably Random Number Generator)
| |
| |assignee=rmiller
| |
| |bug=_*TBD*_
| |
| |assumes=InfraSec sign off on secure javascript crypto library
| |
| |workingEst=TBD
| |
| |bestCase=0.5 days
| |
| |worstCase=Unknown
| |
| |mostLikely=1 day (provided InfraSec sign off)
| |
| }}
| |
| | |
| {{WorkItem
| |
| |workItemDesc=UI responsibilities (IOW: what UI elements live on the server vs. what are presented from inside the library)
| |
| |assignee=rmiller
| |
| |bug=_*TBD*_
| |
| |assumes=UX fully defined.
| |
| |workingEst=2 days
| |
| |bestCase=.5 days
| |
| |worstCase=4 days
| |
| |mostLikely=2 days
| |
| }}
| |
| | |
| {{WorkItem
| |
| |workItemDesc=create 'navigator.id' client wrapper and inter-frame communications
| |
| |assignee=rmiller
| |
| |bug=_*TBD*_
| |
| |assumes=
| |
| |workingEst=1 day
| |
| |bestCase=1 day
| |
| |worstCase=2 days
| |
| |mostLikely=1 day
| |
| }}
| |
| | |
| {{WorkItem
| |
| |workItemDesc=Create iframe containing actual client implementation, along with RP handshake
| |
| |assignee=rmiller
| |
| |bug=_*TBD*_
| |
| |assumes=
| |
| |workingEst=3 days
| |
| |bestCase=2 days
| |
| |worstCase=6 days
| |
| |mostLikely=2 days
| |
| }}
| |
| | |
| {{WorkItem
| |
| |workItemDesc=UI for displaying / selecting verified email addresses
| |
| |assignee=rmiller
| |
| |bug=_*TBD*_
| |
| |assumes=UI finalized
| |
| |workingEst=2 days
| |
| |bestCase=1 days
| |
| |worstCase=5 days
| |
| |mostLikely=2 days
| |
| }}
| |
| | |
| {{WorkItem
| |
| |workItemDesc=Jasmine test coverage
| |
| |assignee=rmiller
| |
| |bug=_*TBD*_
| |
| |assumes=
| |
| |workingEst=3 days
| |
| |bestCase=2 days
| |
| |worstCase=5 days
| |
| |mostLikely=3 days
| |
| }}
| |
| | |
| {{WorkItem
| |
| |workItemDesc=Documentation
| |
| |assignee=rmiller
| |
| |bug=_*TBD*_
| |
| |assumes=
| |
| |workingEst=2 days
| |
| |bestCase=1 day
| |
| |worstCase=4 days
| |
| |mostLikely=2 days
| |
| }}
| |
| | |
| === External Dependencies ===
| |
| {{WorkItem
| |
| |workItemDesc=Security Review
| |
| |assignee=rmiller
| |
| |bug=_*TBD*_
| |
| |assumes=requires InfraSec
| |
| |workingEst=_*TBD*_
| |
| |bestCase=
| |
| |worstCase=
| |
| |mostLikely=
| |
| }}
| |
| | |
| {{WorkItem
| |
| |workItemDesc=Packaging and Deployment
| |
| |assignee=rmiller
| |
| |bug=_*TBD*_
| |
| |assumes=
| |
| |workingEst=_*TBD*_
| |
| |bestCase=
| |
| |worstCase=
| |
| |mostLikely=
| |
| }}
| |
| | |
| == Firefox Verified Email Client (fVEC) ==
| |
| | |
| {{WorkItem
| |
| |workItemDesc=Design Docs
| |
| |assignee=ddahl
| |
| |bug=_*TBD*_
| |
| |assumes=Completed protocol specifications
| |
| |workingEst=2 days
| |
| |bestCase=1 day
| |
| |worstCase=3 days
| |
| |mostLikely=2 days
| |
| }}
| |
| | |
| {{WorkItem
| |
| |workItemDesc=Browser level API
| |
| |assignee=ddahl
| |
| |bug=_*TBD*_
| |
| |assumes=
| |
| |workingEst=3 days
| |
| |bestCase=2 days
| |
| |worstCase=5 days
| |
| |mostLikely=3 days
| |
| }}
| |
| | |
| {{WorkItem
| |
| |workItemDesc=Identity Registration
| |
| |assignee=ddahl
| |
| |bug=_*TBD*_
| |
| |assumes=
| |
| |workingEst=2 days
| |
| |bestCase=5 days
| |
| |worstCase=20 days
| |
| |mostLikely=10 days
| |
| }}
| |
| | |
| {{WorkItem
| |
| |workItemDesc=Identity Assertion Generation
| |
| |assignee=ddahl
| |
| |bug=_*TBD*_
| |
| |assumes=
| |
| |workingEst=9 days
| |
| |bestCase=5 days
| |
| |worstCase=15 days
| |
| |mostLikely=9 days
| |
| }}
| |
| | |
| {{WorkItem
| |
| |workItemDesc=Certificate Refresh
| |
| |assignee=ddahl
| |
| |bug=_*TBD*_
| |
| |assumes=
| |
| |workingEst=4 days
| |
| |bestCase=2 days
| |
| |worstCase=6 days
| |
| |mostLikely=4 days
| |
| }}
| |
| | |
| {{WorkItem
| |
| |workItemDesc=Internal Crypto API
| |
| |assignee=ddahl
| |
| |bug=_*TBD*_
| |
| |assumes=
| |
| |workingEst=3
| |
| |bestCase=1 day
| |
| |worstCase=7 days
| |
| |mostLikely=3 days
| |
| }}
| |
| | |
| {{WorkItem
| |
| |workItemDesc=UI (front-end, 'login to browser')
| |
| |assignee=ddahl
| |
| |bug=_*TBD*_
| |
| |assumes=
| |
| |workingEst=12 days
| |
| |bestCase=8 days
| |
| |worstCase=15 days
| |
| |mostLikely=20 days
| |
| }}
| |
| | |
| === External Dependencies ===
| |
| | |
| {{WorkItem
| |
| |workItemDesc=Platform NSS Wraper API
| |
| |assignee=ddahl
| |
| |bug=_*TBD*_
| |
| |assumes=need coordination with bsmith
| |
| |workingEst=TBD
| |
| |bestCase=
| |
| |worstCase=
| |
| |mostLikely=
| |
| }}
| |
| | |
| {{WorkItem
| |
| |workItemDesc=Platform NSS Wraper API
| |
| |assignee=ddahl
| |
| |bug=_*TBD*_
| |
| |assumes=
| |
| |workingEst=11 days
| |
| |bestCase=5 days
| |
| |worstCase=20 days
| |
| |mostLikely=10 days
| |
| }}
| |
| | |
| {{WorkItem
| |
| |workItemDesc=Code Review
| |
| |assignee=ddahl
| |
| |bug=_*TBD*_
| |
| |assumes=
| |
| |workingEst=13 days
| |
| |bestCase=10 days
| |
| |worstCase=25 days
| |
| |mostLikely=13 days
| |
| }}
| |
| | |
| {{WorkItem
| |
| |workItemDesc=Security Review
| |
| |assignee=ddahl
| |
| |bug=_*TBD*_
| |
| |assumes=Scheduling with InfraSec
| |
| |workingEst=1 day
| |
| |bestCase=1 day
| |
| |worstCase=2 days
| |
| |mostLikely=1 day
| |
| }}
| |
| | |
| | |
| = Timeline =
| |
| | |
| == Expected Completion ==
| |
| | |
| Most tasks can be parallelized with clients working off of the base server. There is some imperative in getting the base server operational on a test platform in order to provide the clients with a baseline to work from.
| |
| | |
| Working Estimate: 58 days
| |
| | |
| == Milestones ==
| |
| Milestone 1: Completion of the Identity Server
| |
| * server should be deployed to a test configuration with access to test LDAP and some level of backend storage.
| |
| * user should be able to perform minimal account related actions
| |
| ** Expected completion: Done
| |
| | |
| Milestone 2: Completion of the Web Client
| |
| * client should be able to work with the existing server
| |
| * client should be able to provide basic VEP service to a demo 3rd party site
| |
| | |
| Milestone 3: Completion of the Firefox Native client
| |
| * client should be able to work with existing server
| |
| * client should be able to provide basic VEP service to a demo 3rd party site
| |
| | |
| Milestone 4: UI and UX cleanup
| |
| * rough placeholders and layout removed in favor of better designed.
| |
| * some packaging and base documentation in place.
| |
| | |
| Milestone 5: Security and QA signoff
| |
| * site passes QA and InfraSec reviews.
| |
| * base set of scriptable QA tests in place for maintenance.
| |
| | |
| Milestone 6: Deployment
| |
| * Code is deployed to a public accessible server (beta) for preliminary testing and user feedback.
| |
| | |
| === M1 (Completion of the Identity Server) ===
| |
| | |
| Working Estimate: 0 days
| |
| | |
| Target Completion (ready for infra) is Jun 14th
| |
| | |
| === M2 (Completion of wVEC) ===
| |
| | |
| Working Estimate: TBD
| |
| | |
| Target Completion:
| |
| | |
| === M3 (Completion of fVEC) ===
| |
| | |
| Working Estimate: TBD
| |
| | |
| Target Completion:
| |
| | |
| === M4 (UX/UI complete) ===
| |
| | |
| Working Estimate: TBD
| |
| | |
| Target Completion:
| |
| | |
| === M5 (Sec / QA signoff) ===
| |
| | |
| Working Estimate: TBD
| |
| | |
| Target Completion:
| |
| | |
| === M6 (Deployment) ===
| |
| | |
| Working Estimate: TBD
| |
| | |
| Target Completion:
| |