Engineering Quality Program: Difference between revisions

→‎Programs and Projects: removed deliverables from project list
(template)
(→‎Programs and Projects: removed deliverables from project list)
 
(16 intermediate revisions by 2 users not shown)
Line 1: Line 1:
<div style="float: right; margin: 0px 0px 10px 25px;">[[File:Fxossmall.png|link=]]</div>
=='''Program Description'''==
=='''Program Description'''==
Enter text here
The purpose of the Firefox OS Quality initiative is to drive the engineering team to Continuous Integration through testing platform improvements, test improvements, test automation and code coverage, where every commit on Gecko and Gaia triggers a full test run, with failures and performance issues reported on Treeherder for immediate backout. 


===Product Requirements:===
The following Firefox OS 2.6 work must be completed to achieve Continuous Integration:
Enter text here
  * [[Automated Test Coverage]]
    * Convert integration tests from GIP to GIJ
    * Fix intermittently failing tests
    * Fix tests that work on mulet but not on device
    * Create a Test Matrix to define which platform the tests are going to run on (device, mulet, emulator)
    * Make sure every single commit in gecko/gaia triggers automated tests
    * Automate MozTrap scenarios using GIJ when feasible
    * Actively maintain working Mulet tests with reporting on Treeherder
    * Ensure code coverage
  * [[Marionette Improvements]]
    * Remove python from Marionette harness
    * Run Marionette.js tests on devices in the Bitbar testing farm with reporting on Treeherder
    * Improve Marionette stability and stability of sandbox environment
  * [[Kitkat Emulator Improvements]]
    * Fix kitkat emulator testing issues
    * Put emulators in place for testing with reporting on Treeherder
    * Port emulator to next android x86 version
  * [[Raptor Activation on Treeholder]]
    * Run performance tests on devices with reporting on Raptor and Treeherder (Bitbar testing farm)
    * Integrate the device service into Raptor
    * Achieve ability for sheriffs to back out commits if post-commit data is bad
    * Ability to block commits with pre-commit testing
The following Firefox OS 2.6 work must be completed to get to the Train Model (OTA branch):
    * Low amount of bugs in master
    * 0 Smoke tests blockers / foxfood blockers in the OTA branch
    * Automated / Semi manual OTA delivery to foxfooders from the OTA branch
    * Automated update of OTA branch from master once OTA has been delivered
The following Firefox OS 2.6 work must be completed to for software architecture improvement:
    * Split BE / FE and apps views (NGA - bridge.js)
    * Mock app BE for FE testing with Telemetry libraries (NGA)
    * BE tests with Telemetry reports (NGA)


===User Stories and Acceptance Criteria===
=='''Programs and Projects'''==
{| class="wikitable"
{| class="wikitable" style="width: 85%; margin: auto;"
! style="text-align: center;" | Title
! style="text-align: center; font-size:22px" colspan="3" | [[Continuous Integration]]
! style="text-align: center;" | BUG ID
! style="text-align: center;" | User story
! style="text-align: center;" | Acceptance Criteria
|-
|-
| rowspan="2" | Title Goes Here
! style="text-align: left; font-size:16px"| Project Name
| [https://bugzilla.mozilla.org/show_bug.cgi?id=1180659 Bug ID]
! style="text-align: center; font-size:16px"| Leads
| User Story 1
! style="text-align: center; font-size:16px"| Status
| Acceptance Criteria 1
|-
|-
| [https://bugzilla.mozilla.org/show_bug.cgi?id=1180659 Bug ID]
| [[Automated Test Coverage]]
| User Story 2
| PM: N/A <br />
| Acceptance Criteria 2
EPM: Julie McCracken <br />
EM: Dylan Oliver
! style="background:#00EC00;" | ON TARGET
|-
|-
| rowspan="1" | Help/Onboarding
| [[Marionette Improvements]]
| [https://bugzilla.mozilla.org/show_bug.cgi?id=1180659 Bug ID]
| PM: N/A <br />
| User Story 3
EPM: Julie McCracken <br />
| Acceptance Criteria 3
EM: Dylan Oliver
|}
! style="background:#00EC00; width: 25%;" | ON TARGET
 
=='''Program Status'''==
{| class="wikitable"
! style="text-align: center;" | Milestone
! style="text-align: center;" | Date
! style="text-align: center;" | Status
|-
|-
| Milestone 1
| [[Kitkat Emulator Improvements]]
|  
| PM: N/A <br />
EPM: Josh Cheng <br />
EM: Hsinyi Tsai
! style="background:#00EC00;" | ON TARGET
! style="background:#00EC00;" | ON TARGET
|-
|-
| Milestone 2
| [[Raptor Activation on Treeholder]]
|  
| PM: N/A <br />
! style="background:#FFFF00;" | CHALLENGED
EPM: Bobby Chien <br />
EM: Gregor Wagner
! style="background:#00EC00;" | ON TARGET
|-
|-
| Milestone 3
! style="text-align: center; font-size:22px" colspan="3" | [[Release Train Model]]
|
! style="background:#FF2800;" | AT RISK
|}
 
'''Status Key'''
{| class="wikitable"
! style="text-align: center;" | Color
! style="text-align: center;" | Status
! style="text-align: center;" | Key
|-
|-
! style="background:#00EC00;" |  
| [[Train Model OTA Branch]]
| On Target
| PM: N/A <br />
| The project or deliverable is expected to meet its due date.
EPM: Julie McCracken <br />
EM: Mahe Potharaju
! style="background:#00EC00;" | ON TARGET
|-
|-
! style="background:#FFFF00;" |
! style="text-align: center; font-size:22px" colspan="3" | [[Software Architecture Improvement]]
| Challenged
| The project or deliverable is facing an issue that might cause it to miss its due date, but a “get well” plan has been developed to get it back on track.
|-
|-
! style="background:#FF2800;" |  
| [[Split BE / FE and apps views]]
| At Risk or Late
| PM:  <br />
| The project or deliverable is blocked or facing an issue that might cause it to miss its due date, and there’s no “get well” plan to get it back on track, or it is already late.
EPM: Maria Oteo<br />
EM: David Scravaglieri
! style="background:#00EC00;" | ON TARGET
|-
|-
! style="background:#00B2FF;" |  
| [[Mock app BE for FE testing with Telemetry Libraries]]
| Done
| PM: <br />
| The project or deliverable has been completed.
EPM: Maria Oteo<br />
EM: David Scravaglieri
! style="background:#00EC00;" | ON TARGET
|-
|-
! style="background:#C1C6CA;" |
| [[BE tests with Telemetry reports]]
| On Hold
| PM:  <br />
| The project or deliverable has been placed on hold.
EPM: Maria Oteo<br />
|}
EM: David Scravaglieri
 
! style="background:#00EC00;" | ON TARGET
----
 
=='''Program Timeline'''==
[[File:Release Timeline.png]]
 
----
 
=='''MVP Scope'''==
 
Querying by 2.6+ features
 
(please add correct bug tracking number)
<bugzilla>
    {
        "blocks":"1188667",
        "cf_feature_b2g":"2.6+",
        "status":["NEW","REOPENED","UNCONFIRMED","ASSIGNED","RESOLVED","VERIFIED","CLOSED"],
        "include_fields": "id, summary, status, target_milestone, resolution, assigned_to, depends_on, blocks, whiteboard, cf_feature_b2g"
    }
</bugzilla>
 
----
 
=='''Dependency Tracking'''==
[[File:Dependency Gantt Chart.png]]
 
----
 
=='''Detailed Program Plan'''==
 
{| class="wikitable"
! style="text-align: center;" | Action Item
! style="text-align: center;" | Engineering Owner
! style="text-align: center;" | QA Owner
! style="text-align: center;" | UX Owner
! style="text-align: center;" | Bugzilla ID
! style="text-align: center;" | Planned Done
! style="text-align: center;" | Actual Done
|-
|
|
|
|
|
|
|
|-
|
|
|
|
|
|
|
|-
|
|
|
|
|
|
|
|-
|
|
|
|
|
|
|
|}
 
----
 
=='''Program Stakeholders'''==
 
{| class="wikitable"
! style="text-align: center;" | Role
! style="text-align: center;" | Name
! style="text-align: center;" | IRC
|-
| EPM
|
|
|-
|-
| EM
|
|
|-
| PM
|
|
|-
| TL
|
|
|-
| UX
|
|
|-
| QA
|
|
|}
|}
*EPM = Engineering Program Manager
*EM = Engineering Manager
*PM = Product Manager
*TL = Tech Lead
*UX = User Experience
*QA = Quality Assurance
----
==UX Specs==


----
----
==Reference Links==