Firefox OS/Comms/Dialer

From MozillaWiki
< Firefox OS‎ | Comms
Revision as of 17:37, 9 July 2014 by Drs (talk | contribs)
Jump to navigation Jump to search
The dialer team is currently in the process of restructuring. Progress can be tracked at FirefoxOS/Comms/Dialer/Restructure. A proposal is being drafted at FirefoxOS/Comms/Dialer/Restructure/Proposal.
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.

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

Current Sprint (v2.0-S6)

FirefoxOS/Comms/Dialer/Sprint/v2.0-S6

Bugs Taken in Planning

Full Query
ID Assigned to Summary Blocking b2g Feature-b2g Whiteboard Status Resolution
961154 Anthony Ricaud (:rik) When a second incoming call occurs, it does not turn the screen on --- No cf_feature-b2g permafail [planned-sprint] RESOLVED FIXED
1018283 Germán Toro del Valle (:gtorodelvalle) [Follow-up 951665] Pending visual revision and adjustments of the VR call screen when in lockscreen --- No cf_feature-b2g [in-sprint=v2.0-S5][planned-sprint] RESOLVED FIXED
1018494 Paco Rampas [:paco] [B2G][Dialer] On the dialer app screen after the suggestions list is empty, tapping where the result count was, will still opens the overlay menu. --- No cf_feature-b2g [2.0-flame-test-run-1][planned-sprint] RESOLVED FIXED
1019370 Gabriele Svelto [:gsvelto] [dolphin] dolphin always shows SIM 1's USSD message for Sim 2. 1.4+ No cf_feature-b2g [sprd317906][partner-blocker][planned-sprint][in-sprint=v2.0-S5] RESOLVED FIXED
1019783 Gabriele Svelto [:gsvelto] Output from *#06# on FLAME DIALER used to return 2 IMEI 1.4+ No cf_feature-b2g [sprd319109][planned-sprint][in-sprint=v2.0-S5] RESOLVED FIXED
1029581 Anthony Ricaud (:rik) [Dialer] Contact name is not shown in the call log after having two contacts with same number and the first one is removed 2.0+ No cf_feature-b2g [planned-sprint][in-sprint=v2.0-S5] VERIFIED FIXED
1029721 Tamara Hills [:thills] CDMA call waiting call is not logged in call history 2.0+ No cf_feature-b2g [planned-sprint] RESOLVED FIXED
1029954 Paco Rampas [:paco] [Dialer][Call Screen][Conference] Icon size is larger than others and overlapped with 'Conference' when call hanging up --- No cf_feature-b2g [planned-sprint] VERIFIED FIXED
1030546 Doug Sherk (:drs) (inactive) [Emergency call] "Cancel" button is not localized 2.0+ No cf_feature-b2g [in-sprint=v2.0-S5][planned-sprint] VERIFIED FIXED
1030550 Henry Chang [:hchang] [Dialer][Bluetooth] Callscreen app sometimes calls BT command "CHLD=3" twice when it only receive one system message. --- No cf_feature-b2g [planned-sprint][in-sprint=v2.0-S5][p=3][ft:ril] RESOLVED FIXED
1032502 Doug Sherk (:drs) (inactive) [B2G][2.0][Lockscreen] The phone label of an incoming call on the lockscreen is not translated. --- No cf_feature-b2g LocRun2.0 [in-sprint=v2.0-S5][planned-sprint] RESOLVED FIXED
1035153 Paco Rampas [:paco] Prototype Dialer without tab bar --- No cf_feature-b2g [priority][planned-sprint] RESOLVED FIXED

12 Total; 0 Open (0%); 9 Resolved (75%); 3 Verified (25%);

Bugs Taken but not Completed

Full Query
ID Assigned to Summary Blocking b2g Feature-b2g Whiteboard Status Resolution
967440 Anthony Ricaud (:rik) Remove some reflows on the keypad - No cf_feature-b2g [priority][planned-sprint c=3][in-sprint=v2.0-S6] RESOLVED FIXED
998147 Tamara Hills [:thills] [Dialer] A Missed Call notification is given when chosing to hang up on an incoming call 2.0+ No cf_feature-b2g [tarako-bug-bash-1.3T][planned-sprint][in-sprint=v2.0-S6] VERIFIED FIXED
1010104 Germán Toro del Valle (:gtorodelvalle) [Dialer][Call Screen] Baseline of the contact name when applying the fluid font size --- No cf_feature-b2g [planned-sprint c=1][in-sprint=v2.0-S6] RESOLVED FIXED

3 Total; 0 Open (0%); 2 Resolved (66.67%); 1 Verified (33.33%);

Bugs Taken During Sprint

Full Query
ID Assigned to Summary Blocking b2g Feature-b2g Whiteboard Status Resolution
1030912 Doug Sherk (:drs) (inactive) [B2G][Dialer][Bluetooth] While in a call the Speaker icon is shown instead of the Bluetooth Headset icon --- No cf_feature-b2g [2.0-daily-testing] RESOLVED FIXED
1032725 Anthony Ricaud (:rik) Facebook contact infos are not reflected in call screen 2.0+ No cf_feature-b2g RESOLVED FIXED
1033196 Anthony Ricaud (:rik) When dialing the user name part which containing j/g characters would be incomplete 1.4+ No cf_feature-b2g [sprd313965] RESOLVED FIXED
1033943 Doug Sherk (:drs) (inactive) [B2G] [Dialer] cannot make a call right after unlocking PIN code upon Dialer app 1.4+ No cf_feature-b2g RESOLVED INVALID
1034279 Anthony Ricaud (:rik) USSD messages not displayed if user leaves Dialer while sending 1.4+ No cf_feature-b2g RESOLVED FIXED
1034985 Etienne Segonzac (:etienne) Occasionally receive a notification from "Callscreen" which does nothing --- No cf_feature-b2g RESOLVED FIXED
1035183 Doug Sherk (:drs) (inactive) Matching numbers screen results is not properly localized for 10+ matches 2.0+ No cf_feature-b2g RESOLVED FIXED
1035612 Paco Rampas [:paco] [Dialer] 'Hang up' and 'answer' buttons enlarge a little bit when tapping on 'answer' button for 2nd call, when 1st one is active --- No cf_feature-b2g RESOLVED FIXED
1035713 Pavel Ivanov [:ivanovpavel][:pivanov] UX [Dialer] - Make sure all images are used --- No cf_feature-b2g RESOLVED FIXED
1038616 David Garcia [:davidg][retired] [Dialer] Busy tone not playing 2.0+ No cf_feature-b2g VERIFIED FIXED
1039131 Doug Sherk (:drs) (inactive) Prototype StyleDocco for generating stylesheet documentation --- No cf_feature-b2g RESOLVED FIXED
1039199 David Garcia [:davidg][retired] [Dialer] When you put the phone on your ear, tones are not played using telephony channel 2.0+ No cf_feature-b2g VERIFIED FIXED
1039844 Doug Sherk (:drs) (inactive) [B2G][Dialer]Touchtones are unresponsive during phonecall 2.0+ No cf_feature-b2g [2.0-daily-testing][273MB-Flame-Support] VERIFIED FIXED

13 Total; 0 Open (0%); 10 Resolved (76.92%); 3 Verified (23.08%);

All Issues for this Sprint

Full Query
ID Assigned to Summary Blocking b2g Feature b2g Whiteboard Status Resolution
961154 Anthony Ricaud (:rik) When a second incoming call occurs, it does not turn the screen on --- --- permafail [planned-sprint] RESOLVED FIXED
1018283 Germán Toro del Valle (:gtorodelvalle) [Follow-up 951665] Pending visual revision and adjustments of the VR call screen when in lockscreen --- 2.1 [in-sprint=v2.0-S5][planned-sprint] RESOLVED FIXED
1018494 Paco Rampas [:paco] [B2G][Dialer] On the dialer app screen after the suggestions list is empty, tapping where the result count was, will still opens the overlay menu. --- --- [2.0-flame-test-run-1][planned-sprint] RESOLVED FIXED
1019370 Gabriele Svelto [:gsvelto] [dolphin] dolphin always shows SIM 1's USSD message for Sim 2. 1.4+ --- [sprd317906][partner-blocker][planned-sprint][in-sprint=v2.0-S5] RESOLVED FIXED
1019783 Gabriele Svelto [:gsvelto] Output from *#06# on FLAME DIALER used to return 2 IMEI 1.4+ --- [sprd319109][planned-sprint][in-sprint=v2.0-S5] RESOLVED FIXED
1029581 Anthony Ricaud (:rik) [Dialer] Contact name is not shown in the call log after having two contacts with same number and the first one is removed 2.0+ --- [planned-sprint][in-sprint=v2.0-S5] VERIFIED FIXED
1029721 Tamara Hills [:thills] CDMA call waiting call is not logged in call history 2.0+ --- [planned-sprint] RESOLVED FIXED
1029954 Paco Rampas [:paco] [Dialer][Call Screen][Conference] Icon size is larger than others and overlapped with 'Conference' when call hanging up --- --- [planned-sprint] VERIFIED FIXED
1030546 Doug Sherk (:drs) (inactive) [Emergency call] "Cancel" button is not localized 2.0+ --- [in-sprint=v2.0-S5][planned-sprint] VERIFIED FIXED
1030550 Henry Chang [:hchang] [Dialer][Bluetooth] Callscreen app sometimes calls BT command "CHLD=3" twice when it only receive one system message. --- --- [planned-sprint][in-sprint=v2.0-S5][p=3][ft:ril] RESOLVED FIXED
1030912 Doug Sherk (:drs) (inactive) [B2G][Dialer][Bluetooth] While in a call the Speaker icon is shown instead of the Bluetooth Headset icon --- --- [2.0-daily-testing] RESOLVED FIXED
1032502 Doug Sherk (:drs) (inactive) [B2G][2.0][Lockscreen] The phone label of an incoming call on the lockscreen is not translated. --- --- LocRun2.0 [in-sprint=v2.0-S5][planned-sprint] RESOLVED FIXED
1032725 Anthony Ricaud (:rik) Facebook contact infos are not reflected in call screen 2.0+ --- RESOLVED FIXED
1033196 Anthony Ricaud (:rik) When dialing the user name part which containing j/g characters would be incomplete 1.4+ --- [sprd313965] RESOLVED FIXED
1033943 Doug Sherk (:drs) (inactive) [B2G] [Dialer] cannot make a call right after unlocking PIN code upon Dialer app 1.4+ --- RESOLVED INVALID
1034279 Anthony Ricaud (:rik) USSD messages not displayed if user leaves Dialer while sending 1.4+ --- RESOLVED FIXED
1034985 Etienne Segonzac (:etienne) Occasionally receive a notification from "Callscreen" which does nothing --- --- RESOLVED FIXED
1035153 Paco Rampas [:paco] Prototype Dialer without tab bar --- --- [priority][planned-sprint] RESOLVED FIXED
1035183 Doug Sherk (:drs) (inactive) Matching numbers screen results is not properly localized for 10+ matches 2.0+ --- RESOLVED FIXED
1035612 Paco Rampas [:paco] [Dialer] 'Hang up' and 'answer' buttons enlarge a little bit when tapping on 'answer' button for 2nd call, when 1st one is active --- --- RESOLVED FIXED
1035713 Pavel Ivanov [:ivanovpavel][:pivanov] UX [Dialer] - Make sure all images are used --- --- RESOLVED FIXED
1038616 David Garcia [:davidg][retired] [Dialer] Busy tone not playing 2.0+ --- VERIFIED FIXED
1039131 Doug Sherk (:drs) (inactive) Prototype StyleDocco for generating stylesheet documentation --- --- RESOLVED FIXED
1039199 David Garcia [:davidg][retired] [Dialer] When you put the phone on your ear, tones are not played using telephony channel 2.0+ --- VERIFIED FIXED
1039844 Doug Sherk (:drs) (inactive) [B2G][Dialer]Touchtones are unresponsive during phonecall 2.0+ --- [2.0-daily-testing][273MB-Flame-Support] VERIFIED FIXED

25 Total; 0 Open (0%); 19 Resolved (76%); 6 Verified (24%);

Blockers Without an Assignee

No results.

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

Bugs Redirected

Full Query
ID Assigned to Summary Blocking b2g Feature b2g Whiteboard Status Resolution
961154 Anthony Ricaud (:rik) When a second incoming call occurs, it does not turn the screen on --- --- permafail [planned-sprint] RESOLVED FIXED
1018283 Germán Toro del Valle (:gtorodelvalle) [Follow-up 951665] Pending visual revision and adjustments of the VR call screen when in lockscreen --- 2.1 [in-sprint=v2.0-S5][planned-sprint] RESOLVED FIXED
1018494 Paco Rampas [:paco] [B2G][Dialer] On the dialer app screen after the suggestions list is empty, tapping where the result count was, will still opens the overlay menu. --- --- [2.0-flame-test-run-1][planned-sprint] RESOLVED FIXED
1019370 Gabriele Svelto [:gsvelto] [dolphin] dolphin always shows SIM 1's USSD message for Sim 2. 1.4+ --- [sprd317906][partner-blocker][planned-sprint][in-sprint=v2.0-S5] RESOLVED FIXED
1019783 Gabriele Svelto [:gsvelto] Output from *#06# on FLAME DIALER used to return 2 IMEI 1.4+ --- [sprd319109][planned-sprint][in-sprint=v2.0-S5] RESOLVED FIXED
1021550 Tamara Hills [:thills] [Phone][Ring Tone] The ring tone is muted after first call used speaker. 2.0+ --- [2.0-FL-bug-bash] ft:loop [planned-sprint] RESOLVED FIXED
1029581 Anthony Ricaud (:rik) [Dialer] Contact name is not shown in the call log after having two contacts with same number and the first one is removed 2.0+ --- [planned-sprint][in-sprint=v2.0-S5] VERIFIED FIXED
1029721 Tamara Hills [:thills] CDMA call waiting call is not logged in call history 2.0+ --- [planned-sprint] RESOLVED FIXED
1029954 Paco Rampas [:paco] [Dialer][Call Screen][Conference] Icon size is larger than others and overlapped with 'Conference' when call hanging up --- --- [planned-sprint] VERIFIED FIXED
1030546 Doug Sherk (:drs) (inactive) [Emergency call] "Cancel" button is not localized 2.0+ --- [in-sprint=v2.0-S5][planned-sprint] VERIFIED FIXED
1030550 Henry Chang [:hchang] [Dialer][Bluetooth] Callscreen app sometimes calls BT command "CHLD=3" twice when it only receive one system message. --- --- [planned-sprint][in-sprint=v2.0-S5][p=3][ft:ril] RESOLVED FIXED
1032502 Doug Sherk (:drs) (inactive) [B2G][2.0][Lockscreen] The phone label of an incoming call on the lockscreen is not translated. --- --- LocRun2.0 [in-sprint=v2.0-S5][planned-sprint] RESOLVED FIXED
1035153 Paco Rampas [:paco] Prototype Dialer without tab bar --- --- [priority][planned-sprint] RESOLVED FIXED

13 Total; 0 Open (0%); 10 Resolved (76.92%); 3 Verified (23.08%);


Past Sprints

  • Sprint 1, Jun 23 - Jul 4
    • Different naming system; this was the first sprint that we documented. It is now retroactively named v2.0-S5.

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 12 points of velocity every sprint based on 6 team members; 2 part-time. We make estimates as to how long features will take to complete, 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.

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.
  • [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.

Bug Queries

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

  1. Blockers
  2. Features
  3. Nice to have

Reference Materials

API/Programming Documentation

Actual code documentation should go on the Mozilla Developer Network. Currently, the documentation is very shallow. 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 1035153 - Prototype sheet navigation layout.
  • 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.
  • Use a styleguide generator for CSS (Rik's preference is https://jacobrask.github.io/styledocco/) to write maintanable CSS

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.
  • Integrate Kanban more into our workflow.
  • Get more contributors engaged.

Restructuring Progress

✔ = done, ? = in progress, - = not started, x = failed/punted

Phase 1 (sprint v2.0-S5 / aka "1" until sprint v2.0-S6)

  • ✔ Make and use a new #fxos-dialer channel on IRC.
  • ✔ Start having daily meetings. I think we can do this over IRC for a start, but be flexible with it.
  • ✔ Improve cross-team communication and sharing of ideas.
    • I've spoken with Francisco who is very interested in sharing ideas and talking about ways to organize ourselves, and I will be talking with Julien soon. I have spoken with the other messaging team members in the interim.
  • ✔ Get UX and VD specs all in one place.
  • ✔ Track planning, progress, and discussions on wiki articles.
  • ✔ Clean up general docs on dialer.
  • ✔ Catalog long-term projects that we can work on, encourage brainstorming and feedback.
    • Since we're still in damage-control mode, I don't believe that it's a good idea to put serious thought into implementation of these yet. We have to get ourselves under control, and then start on these when we can.
  • ✔ Kill the comms meeting.
    • This isn't really in our scope but it's partly our fault that it still happens.
    • This isn't done but is effectively out of our hands.
  • ✔ Get the UX and VD people on Vidyo/Skype and IRC.
    • I've contacted Vicky and she's looking into how to get on IRC with the Telefonica firewall in place (she's going to ask Arnau).

Phase 2 (sprint v2.0-S6 to sprint v2.1-S1)

  • ✔ Switch to the people rotation system that the contacts team uses. (see "Differences Between Teams" / "Contacts" / "People")
  • ✔ Begin setting aside time for long-term projects.
  • ✔ Gather feedback from the changes previously implemented, iterate where necessary.
  • ✔ Begin cross-collaboration and sharing of ideas with other teams. Ask them for feedback and help where necessary.
  • ✔ Decide on which long-term projects we will be prioritizing.
  • ✔ Begin actual planning of long-term projects, discussing architecture, designs, etc.
    • We will be careful to include every team member in these discussions.
  • ✔ Establish better relations with UX and VD, consider setting up progress-based meetings for when we need to discuss many things with them.
    • This is sort of covered by the weekly comms meeting, but there might still be work here to be done.
    • Anthony has been doing a great job talking with UX and VD and I don't think there's a problem here.
  • x Continue to improve technical documentation.
  • x Start estimating during sprint planning.
    • We decided to delay this until next sprint due to lack of features to estimate.

Phase 3 (sprint v2.1-S1 onward)

  • ✔ Actually set time aside and work on long-term projects.
  • ✔ Prepare for new team members from partners.
    • This is a very loose objective. I think we should start thinking about this here, but I don't have any specifics.
    • We have absorbed a couple of new team members fairly well, been able to deal with Etienne participating more on other teams, and we have more infrastructure in place to support more new people. I think this is resolved.
  • ✔ Start estimating during sprint planning.
  • ✔ Start doing demos of new features/big fixes.
  • ✔ Continue to improve technical documentation.
    • We decided to not commit seriously to this and instead improve documentation as we go along. Reviewers are expected to request inline docs/comments for new commits and wiki articles for more complicated things.