Firefox OS/Comms/Dialer: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 67: Line 67:


==Current Sprint==
==Current Sprint==
<big>[[FirefoxOS/Comms/Dialer/Sprint/v2.1-S3]]</big>
<big>[[FirefoxOS/Comms/Dialer/Sprint/v2.1-S4]]</big>
{{:FirefoxOS/Comms/Dialer/Sprint/v2.1-S3}}
{{:FirefoxOS/Comms/Dialer/Sprint/v2.1-S4}}


=Bugs=
=Bugs=

Revision as of 13:08, 2 September 2014

Gaia Dialer App Icon

The dialer is a component of Gaia, which in turn is the front-end for Firefox OS. The dialer comprises all of the front-end code for making and receiving calls, including the callscreen, which is a separate app. The dialer team is organized under the umbrella of the communications apps team.

In addition, the dialer team is responsible for emergency calling, CDMA, USSD/MMI, DTMF tones, integration with other communications apps, and dealing with partner requirements.



Meetings/Team Communication

IRC

We mostly use IRC. We're available on #fxos-dialer, and #fxos-comms.

Daily Standup Meetings

The daily standup meeting is composed of two parts: the first is async, and happens sometime before the sync meeting. Full-time dialer team members should write the progress that they've made in the last day on the dialer scrum Etherpad. Part-time members and observers can optionally do the same. Additional instructions on what to write are in that section itself.

The second part of the meeting is sync, and happens over IRC at 2:30 pm GMT (10:30 am EST, 4:30 pm CEST) in the #fxos-dialer IRC channel. Here, participants should only discuss major things, blocking issues, and questions that they have for others. The goal is to keep this meeting 10 minutes long or less.

  • Current hosts: drs, gtorodelvalle, thills
  • Hosts rotate every week.
  1. If you're not available for a standup that you're scheduled to host, then ask for someone else to host instead for just that time.
  2. Start by pinging everyone who should be participating.
  3. List any administrative items you have, and then ask for more from other people (look at the Etherpad).
  4. Look at the list of blockers and blocker nominations and see if there's anything new or that needs action. Mention these during this time.
  5. Move to individual updates. Go alphabetically, in descending order.
  6. If someone's update is taking longer than 3-4 minutes, you should generally cut them off and ask them to talk about it after the standup.
  7. Copy the reports from the GDoc to the wiki page for that day. Use the Etherpad-to-Wiki converter to format it. You can just copy and paste the whole thing and the converter will do everything for you.
  8. Ask the person who should be hosting the week after you if they'll be available. If not, move onto the next person.

Comms Apps Meetings

Dialer team members participate in the thrice-weekly comms apps meetings and give updates here. There are no established rules for this, but typically only European members participate, due to timezone differences. These meetings are expected to be killed off soon.

Sprints

Past Sprints

Sprint Planning

Sprint planning happens every 2 weeks on Mondays, at 1:30 pm GMT (9:30 am EST, 3:30 pm CEST) in Joe Cheng's Vidyo room.

Retrospective

We begin sprint planning with a retrospective. This is the place where we change things. Everybody must think ahead of time about what was good and bad during the last sprint. This could be anything, and can be entirely opinion. Participants should also think of any questions that they have.

During the meeting, everybody dumps their thoughts on the sprint planning retrospective Etherpad, and then we take some time to review them. Ideally, all bad things and questions end up having action items.

Estimates

We have 25 points of velocity every sprint based on 8 team members; 2 part-time. We make estimates as to how long features will take to complete in days, but we don't estimate bugs (or we assume they're 1 point).

Between 50% and 75% (depending on the moment in the release cycle) of the velocity is used for blockers. The rest of the velocity is kept for new blockers appearing during the sprint.

We take the list of bugs in the order of priority, and estimate them together. Estimates are identified by:

[planned-sprint c=X]

tag, where X is the estimated number of days, or "cost".

Priorities

Currently, the rough priority order is: 1.3T+ > 1.4+ > 2.0+ > 2.1+ > features > nice-to-have >= dialer-most-wanted. We can have a look at the nominations (2.1?, etc) too. nice-to-have are provided by the EPM, whereas dialer-most-wanted are decided internally within the dialer team.

Assigning

When we reach the available velocity, we stop. We try to take some tech debt bugs or long term projects (at least 1 per sprint would be nice), identified by blocking the dialer-most-wanted bug, bug 1036516.

Whiteboard Tags

  • [planned-sprint] - Indicates that we planned to take this at the beginning of a sprint.
    • Alternative use: any bug not in the Gaia::Dialer component but with this tag will show up in the "Redirected Bugs" page.
  • [in-sprint=vXXX] - (e.g. [in-sprint=v2.0-S5]) Indicates that we took this in a previous sprint and had to push it to a later one.

During Sprint

Demos

Features/bug fixes with any user visibility should be demonstrated by providing a before and after screenshot, or a video. These should be added as they are completed to the current sprint's "Demos" section. We recommend not waiting until the end of the sprint since it's easier to make these while you're on that feature branch and remember everything.

We also welcome adding demos for changes that aren't visible to the end user. You can choose how you want to present these. Do whatever makes you happy!

Taking more bugs

Bugs inevitably come up during the sprint, so we take them and don't apply the [planned-sprint] tag to the whiteboard. We try to keep enough velocity available to accomodate these. Ideally, and if we plan correctly, our velocity will always be the same (see the current target velocity) by the end of the sprint. We don't estimate these bugs, but we will discuss them in the next retrospective if they were features that we were unexpectedly able to take.

Current Sprint

FirefoxOS/Comms/Dialer/Sprint/v2.1-S4

Status

Dialer v2.1-S4 burndown chart.png

  • 19,19,16,13,15,13,8,6,6,5

Bugs Taken in Planning

Full Query
ID Assigned to Summary Blocking b2g Feature-b2g Whiteboard Status Resolution
980854 Gabriele Svelto [:gsvelto] Remove the workaround for glitchy touch tones introduced implemented bug 917193 --- No cf_feature-b2g [planned-sprint] RESOLVED FIXED
1030631 Jorge Prudencio [:jorgep] [Dialer] Text not aligned when matches are more than 1 if contact has long name --- No cf_feature-b2g [priority][planned-sprint][in-sprint=v2.1-S3] RESOLVED FIXED
1038846 Jorge Prudencio [:jorgep] [Dialer] Once you get a contact suggestion, tapping on it even when empty triggers an "Invalid Number" message 2.0M+ No cf_feature-b2g [planned-sprint][in-sprint=v2.1-S3] RESOLVED FIXED
1060729 Tamara Hills [:thills] Handle default outgoing call SIM set to "always ask" in ICE contacts 2.1+ No cf_feature-b2g [planned-sprint] VERIFIED FIXED
1061120 David Garcia [:davidg][retired] [Calllog][Dialer] Time duration format is not showing 'min' or 's' in 'Call Information' 2.1+ No cf_feature-b2g [planned-sprint c=3] VERIFIED FIXED
1061149 Doug Sherk (:drs) (inactive) [Calllog][Dialer] Phone number is showed with different color in incoming/out/missed calls (in "Call info" screen) 2.1+ No cf_feature-b2g [planned-sprint] VERIFIED FIXED
1061463 Tamara Hills [:thills] Call log info must not reuse the string "Missed" 2.1+ No cf_feature-b2g [planned-sprint] VERIFIED FIXED

7 Total; 0 Open (0%); 3 Resolved (42.86%); 4 Verified (57.14%);

Bugs Taken but not Completed

Full Query
ID Assigned to Summary Blocking b2g Feature-b2g Whiteboard Status Resolution
1061616 Anthony Ricaud (:rik) call log is not showing recently dialled numbers 2.1+ No cf_feature-b2g [fromAutomation] [planned-sprint c=3][in-sprint=v2.1-S4][2.1-flame-test-run-2] VERIFIED FIXED

1 Total; 0 Open (0%); 0 Resolved (0%); 1 Verified (100%);

Bugs Taken During Sprint

Full Query
ID Assigned to Summary Blocking b2g Feature-b2g Whiteboard Status Resolution
1040922 Doug Sherk (:drs) (inactive) Refactor SimPicker such that it triggers MutationObserver on updates --- No cf_feature-b2g RESOLVED FIXED
1053641 Gabriele Svelto [:gsvelto] [b2g][2.0] "call forwarding status" page string format has problem. 2.0+ No cf_feature-b2g VERIFIED FIXED
1060723 Anthony Ricaud (:rik) Call info page isn't updated after a call dispatched from it ends --- No cf_feature-b2g [c=3] RESOLVED FIXED
1060725 Doug Sherk (:drs) (inactive) Audit test coverage of ICE contacts --- No cf_feature-b2g RESOLVED FIXED
1061122 Anthony Ricaud (:rik) Unable to make call when tapping on call log items with two SIMs --- No cf_feature-b2g [xfail] VERIFIED FIXED
1061473 Doug Sherk (:drs) (inactive) [Flame][Dual SIM] Outgoing call from bluetooth car kit asked which SIM card to use 2.0M+ No cf_feature-b2g RESOLVED FIXED
1062294 Doug Sherk (:drs) (inactive) Bluetooth commands that require SIM picker should show the Dialer app --- No cf_feature-b2g RESOLVED FIXED
1062564 (no longer active) Inline the activity options used in the dialer app in order to make it easier to automatically extract the activity arguments from the source code --- No cf_feature-b2g RESOLVED FIXED
1062569 (no longer active) Inline the activity options used in the wappush app in order to make it easier to automatically extract the activity arguments from the source code --- No cf_feature-b2g RESOLVED FIXED
1062749 David Garcia [:davidg][retired] [Dialer] Make prettyDuration use l10n attributes instead of setting textContent. Follow up bug 1061120 --- No cf_feature-b2g RESOLVED FIXED

10 Total; 0 Open (0%); 8 Resolved (80%); 2 Verified (20%);

All Issues for this Sprint

Full Query
ID Assigned to Summary Blocking b2g Feature b2g Whiteboard Status Resolution
980854 Gabriele Svelto [:gsvelto] Remove the workaround for glitchy touch tones introduced implemented bug 917193 --- --- [planned-sprint] RESOLVED FIXED
1030631 Jorge Prudencio [:jorgep] [Dialer] Text not aligned when matches are more than 1 if contact has long name --- --- [priority][planned-sprint][in-sprint=v2.1-S3] RESOLVED FIXED
1038846 Jorge Prudencio [:jorgep] [Dialer] Once you get a contact suggestion, tapping on it even when empty triggers an "Invalid Number" message 2.0M+ --- [planned-sprint][in-sprint=v2.1-S3] RESOLVED FIXED
1040922 Doug Sherk (:drs) (inactive) Refactor SimPicker such that it triggers MutationObserver on updates --- --- RESOLVED FIXED
1053641 Gabriele Svelto [:gsvelto] [b2g][2.0] "call forwarding status" page string format has problem. 2.0+ --- VERIFIED FIXED
1060723 Anthony Ricaud (:rik) Call info page isn't updated after a call dispatched from it ends --- --- [c=3] RESOLVED FIXED
1060725 Doug Sherk (:drs) (inactive) Audit test coverage of ICE contacts --- --- RESOLVED FIXED
1060729 Tamara Hills [:thills] Handle default outgoing call SIM set to "always ask" in ICE contacts 2.1+ --- [planned-sprint] VERIFIED FIXED
1061120 David Garcia [:davidg][retired] [Calllog][Dialer] Time duration format is not showing 'min' or 's' in 'Call Information' 2.1+ --- [planned-sprint c=3] VERIFIED FIXED
1061122 Anthony Ricaud (:rik) Unable to make call when tapping on call log items with two SIMs --- --- [xfail] VERIFIED FIXED
1061149 Doug Sherk (:drs) (inactive) [Calllog][Dialer] Phone number is showed with different color in incoming/out/missed calls (in "Call info" screen) 2.1+ --- [planned-sprint] VERIFIED FIXED
1061463 Tamara Hills [:thills] Call log info must not reuse the string "Missed" 2.1+ --- [planned-sprint] VERIFIED FIXED
1061473 Doug Sherk (:drs) (inactive) [Flame][Dual SIM] Outgoing call from bluetooth car kit asked which SIM card to use 2.0M+ --- RESOLVED FIXED
1062294 Doug Sherk (:drs) (inactive) Bluetooth commands that require SIM picker should show the Dialer app --- --- RESOLVED FIXED
1062564 (no longer active) Inline the activity options used in the dialer app in order to make it easier to automatically extract the activity arguments from the source code --- --- RESOLVED FIXED
1062569 (no longer active) Inline the activity options used in the wappush app in order to make it easier to automatically extract the activity arguments from the source code --- --- RESOLVED FIXED
1062749 David Garcia [:davidg][retired] [Dialer] Make prettyDuration use l10n attributes instead of setting textContent. Follow up bug 1061120 --- --- RESOLVED FIXED

17 Total; 0 Open (0%); 11 Resolved (64.71%); 6 Verified (35.29%);

Bugs Redirected

Full Query
ID Assigned to Summary Blocking b2g Feature b2g Whiteboard Status Resolution
980854 Gabriele Svelto [:gsvelto] Remove the workaround for glitchy touch tones introduced implemented bug 917193 --- --- [planned-sprint] RESOLVED FIXED
1030631 Jorge Prudencio [:jorgep] [Dialer] Text not aligned when matches are more than 1 if contact has long name --- --- [priority][planned-sprint][in-sprint=v2.1-S3] RESOLVED FIXED
1038846 Jorge Prudencio [:jorgep] [Dialer] Once you get a contact suggestion, tapping on it even when empty triggers an "Invalid Number" message 2.0M+ --- [planned-sprint][in-sprint=v2.1-S3] RESOLVED FIXED
1059087 Doug Sherk (:drs) (inactive) [Contacts] No space between 'Carrier Name' and 'Label' 2.1+ --- [planned-sprint] VERIFIED FIXED
1060729 Tamara Hills [:thills] Handle default outgoing call SIM set to "always ask" in ICE contacts 2.1+ --- [planned-sprint] VERIFIED FIXED
1061120 David Garcia [:davidg][retired] [Calllog][Dialer] Time duration format is not showing 'min' or 's' in 'Call Information' 2.1+ --- [planned-sprint c=3] VERIFIED FIXED
1061149 Doug Sherk (:drs) (inactive) [Calllog][Dialer] Phone number is showed with different color in incoming/out/missed calls (in "Call info" screen) 2.1+ --- [planned-sprint] VERIFIED FIXED
1061427 Kyle Machulis [:qdot] [:kmachulis] (INACTIVE) [Dialer][Call Screen] Caller number, name, background disappear after making several calls sequentially 2.1+ --- [planned-sprint c=3][systemsfe] RESOLVED WORKSFORME
1061463 Tamara Hills [:thills] Call log info must not reuse the string "Missed" 2.1+ --- [planned-sprint] VERIFIED FIXED

9 Total; 0 Open (0%); 4 Resolved (44.44%); 5 Verified (55.56%);


Bugs

Blockers

  • Bugzilla query
  • Note that these are each prioritized by EPM, not internally within the dialer team.

No results.

0 Total; 0 Open (0%); 0 Resolved (0%); 0 Verified (0%);


Blockers Without an Assignee

No results.

0 Total; 0 Open (0%); 0 Resolved (0%); 0 Verified (0%);


Features

  • Bugzilla query
  • Note that these are each prioritized by EPM, not internally within the dialer team.

No results.

0 Total; 0 Open (0%); 0 Resolved (0%); 0 Verified (0%);


Nice-to-have

  • Bugzilla query
  • Note that these are each prioritized by EPM, not internally within the dialer team.

No results.

0 Total; 0 Open (0%); 0 Resolved (0%); 0 Verified (0%);


Dialer-most-wanted

No results.

0 Total; 0 Open (0%); 0 Resolved (0%); 0 Verified (0%);


Reference Materials

API/Programming Documentation

Actual code documentation should go on the Mozilla Developer Network. Currently, the documentation is very shallow and often obsolete/out-of-sync. Please consider contributing to it!

Feature/Subcomponent Documentation

UX Specifications

v2.1

v2.0

v1.4

v1.3

Development

Team

Manager

Developers

User Experience

Visual Design

Long-Term Project Ideas

  • bug 1039131 - Improve stylesheet docs, simplicity, and organization.
    • bug 1039130 - Use StyleDocco documentation generator for stylesheets.
  • bug 1042576 Move call log to a DataStore.
    • This will help memory consumption by not opening the Dialer app after a call.
  • General redesign and refactors (a la Haidification).
  • Better support for testing emergency calls without accidentally placing them.
  • Moving more towards using HTML template fragments for more realistic testing.
  • Clean up keypad and DMTF tones code (blocked partially on platform WebAudio work)
  • Clean up USSD/MMI code, add multi-SIM support.
  • Have a platform for automated integration tests (mulet? emulator? something else?)
  • Testing CDMA in regions that don't use it, perhaps using the emulator.
  • Improve emulator use and documentation.
  • Separate communications apps into different apps.
  • Improve Kanban and our dashboard tools.
  • bug 1035153 - Prototype dialer without tab bar.
    • We should work on this more and bring it to production based on Carrie's feedback.
  • bug 1039594 - Use FontSizeUtils in shared instead of our own FontSizeManager

Ideas for Improvement

  • Do video demos of important new features.
  • Discuss vision for the future of the dialer, including the app itself, the team organization, and how we work.
  • Improve communication with VD and UX, e.g. set up progress-based meetings.
  • Improve the way we split up bugs and use metabugs to make things easier for UX and VD people.
  • Improve the way we organise files and assets in our code base
  • Integrate Kanban more into our workflow.
  • Get more contributors engaged.