WorkFlow

Goals

When it comes to bug work flow/triage we have two main goals (which we share with the Ubuntu project as a whole):

  • Bring important bugs to the surface more reliably
  • Churn through the open bugs more efficiently

Bug flow

The following chart describes the flow of a bug until it gets into the hands of a developer to work on. Orange represents a step anyone can perform, while yellow is reserved for those steps handled by Ubuntu One team managers. Details supporting this chart follow below.

Ubuntu One bug work flow

Source: ubuntu_one_bug_workflow.dia

Status

The following statuses should be used by all those reviewing bugs:

  • New: The bug is newly reported.

  • Incomplete: The bug report is incomplete and needs more information before it can be triaged.

  • Invalid: The report describes the software's normal behaviour, or is unsuitable for any other reason.

  • Confirmed: A member of the community believes that this report describes a genuine bug in enough detail that a developer could start work on a fix.

The following statuses are set by the Ubuntu One team managers:

  • Triaged: Ubuntu One team manager considers that the bug report contains all information a developer needs to start work on a fix.

  • Won't Fix: this is acknowledged as a genuine bug but the project has no plans to fix it. This may be due to lack time and resources, we don't want to leave bugs in limbo if we aren't likely be able to schedule time to fix it.

The following statuses are to be set by the developer working on the bug:

  • In Progress: A developer has taken responsibility to fix the bug and has begun work.

  • Fix Committed: A developer has committed his/her fix to the project's codebase.

  • Fix Released: A new version of the software, featuring the bug fix, has been released.

Assignment

Every valid bug should be assigned to one (and only one) of the following Ubuntu One teams:

  • ubuntuone-client-engineering Handles the desktop and mobile work

  • ubuntuone-foundations+ Handles server side items related to: file sync, U1DB, Dash scopes, etc.

  • ubuntuone-ops+ Handles infrastructure, keeping the lights on, etc.

  • ubuntuone-web Handles web ui stuff.

  • ubuntuone-design-ux Handles design and user experience tasks.

Don't worry too much if you aren't sure which team queue a bug should go into, if the team manager disagrees they will take care of moving it to the correct queue.

Tags

The following tags are used to help us find and sort bugs. Please use them where applicable.

Deployment Tags

Always choose (only) one of the following 'deployment' tags. These tags indicate at what point the defect was found.

  • u1-on-production - for defects found on production, also applies for client build releases (aka not beta)

  • u1-on-flag - for defects found on production which are behind a feature flag

  • u1-on-staging - for defects found on staging (or beta for client releases)

  • u1-on-edge - applies only to web, for defects found on edge server

  • u1-on-dev - for defects found on local developer instances

Discoverer Tags

Always choose one of the following tags to show who was responsible for finding the defect:

  • u1-by-user - Any bug that was filed directly by our customers outside of Canonical

  • u1-by-automation - If the bug discovery was a result of automated testing

  • u1-by-dev - Discovered by anyone within Canonical outside of QA/Support

  • u1-by-support - Any bug that was filed as a result of a support request

  • u1-by-qa - Any bug that was filed as a result of QA manual testing

Location Tags

Please tag these bugs with one (and only one) of these tags, or leave it if nothing fits:

  • u1-ui - For ANY web app defect relating mainly to the User Interface or UX

  • u1-api - ANY bug related to any API

  • u1-syncdaemon - Any syncdaemon or file sync server side bug

  • u1-contacts - Contacts functionality

  • u1-documentation - for bugs relating to FAQs, Terms, help, etc..

  • u1-files - Any bug related files functionality for U1 Web

  • u1-music-player - Bug related to web music player

  • u1-notes - Bugs related to notes

  • u1-photos - Photos U1 Web bugs

  • u1-promo - Bug relating to functionality of our special promotions (ie. Humble Indie Bundle, 6 months free music streaming etc..)

  • u1-web-music-store - Functional defects related to purchasing music

  • u1-server - For miscellaneou U1 Web defects (ie. cookies not being placed etc..)

  • u1-mac - U1 Client: OSX bugs

  • u1-ubuntu -U1 Client: Ubuntu bugs

  • u1-windows - U1 Client: Windows bugs

  • u1-linux - U1 Client: Linux bugs for other distributions ie. Fedora etc..

  • u1-dash - Bugs relating to In-Dash Payments

  • u1-scopes - Smart Scopes bugs

Also Affects

Every valid bug should be marked as affecting an appropriate Ubuntu One project if it is a package bug. For a list of projects see the Ubuntu One Launchpad home page. Note: Use ubuntuone-servers for any bugs related to the Ubuntu One web UI in addition to specific server side issues.

Importance

Take your best guess at importance:

  • Critical - The bug dramatically impairs users. Users may lose their data.

  • High - The bug prevents users from completing their tasks

  • Medium - The bug is an inconvenience for many users

  • Low - The bug is an inconvenience to users, but it does not prevent them from completing their tasks

  • Wishlist - Desired functionality for future consideration.

UbuntuOne/Bugs/WorkFlow (last edited 2013-02-06 18:30:33 by jaboing)