Gaia/SMS/Handling Bugs

From MozillaWiki
< Gaia‎ | SMS
Jump to: navigation, search

<graphviz> digraph handling_bugs {

 bug_reported -> another_component
 bug_reported_note -> bug_reported [dir=none style=dotted]
 { rank=same; bug_reported_note bug_reported }
 another_component -> change_component [label="YES"]
 another_component -> new_feature [label="NO"]
 another_component_note -> another_component [dir=none style=dotted]
 { rank=same; another_component_note another_component change_component }
 new_feature -> ask_needinfo_ux [label="YES"]
 ask_needinfo_ux -> put_backlog_wontfix
 { rank=same; new_feature put_backlog_wontfix ask_needinfo_ux }
 new_feature -> duplicate [label="NO"]
 duplicate_note -> duplicate [dir=none style=dotted]
 duplicate -> close_duplicate [label="YES"]
 { rank=same; duplicate_note duplicate close_duplicate }
 duplicate -> expected [label="NO"]
 expected_note -> expected [dir=none style=dotted]
 expected -> close_invalid [label="YES"]
 { rank=same; expected_note expected close_invalid }

 expected -> add_qawanted [label="NO"]
 qawanted_note -> add_qawanted [dir="none" style=dotted]
 { rank=same; qawanted_note add_qawanted }
 add_qawanted -> reproducible
 reproducible -> close_worksforme [label="NO"]
 close_worksforme -> close_worksforme_note [dir=none style=dotted]
 { rank=same; reproducible close_worksforme close_worksforme_note }
 reproducible -> reproducible_older [label="YES"]
 reproducible_older -> bug_new_feature [label="NO"]
 bug_new_feature -> nominate_blocker [label="YES"]
 nominate_blocker -> is_blocker
 reproducible_older -> nominate_blocker_older [label="YES"]
 nominate_blocker_older -> set_regression -> is_blocker
 is_blocker -> bug_not_forgotten [label="YES"]
 bug_new_feature -> bug_worth [label="NO"]
 is_blocker -> bug_worth [label="NO" weight=100]
 bug_worth -> ask_needinfo_worth [label="NO"]
 bug_worth -> small_bugfix [label="YES" weight=100]
 ask_needinfo_worth -> close_wontfix [label="agrees"]
 ask_needinfo_worth -> small_bugfix [label="doesn't agree"]
 small_bugfix -> set_most_wanted [label="NO"]
 small_bugfix -> set_papercuts [label="YES"]
 { set_most_wanted set_papercuts } -> bug_not_forgotten -> actionable
 actionable -> urgent [label="YES"]
 actionable -> needinfo_actionable [label="NO"]
 needinfo_actionable -> actionable
 needinfo_actionable -> needinfo_actionable_note [dir="none" style=dotted]
 { rank=same; actionable needinfo_actionable needinfo_actionable_note }
 urgent -> really_urgent [label="YES"]
 urgent -> easy_bug [label="NO"]
 easy_bug -> mentored_bug [label="YES"]
 easy_bug -> wait_planning [label="NO"]
 really_urgent -> find_owner [label="YES"]
 really_urgent -> wait_planning [label="NO"]
 bug_reported [label="A bug is reported" shape=box]
 bug_reported_note [label="You may need to ask more\ninformation from the reporter\nright now: Firefox OS version,\ndevice, precise STR,\nscreenshot or video, trying\nother actions..." shape=note color=pink]
 another_component [label="Does the bug belong\nto another component?" shape=diamond]
 another_component_note [label="Very often, a bug will happen\nin another application, or in\nGecko.\nSometimes we don't know\nthis right away and need to\ninvestigate or wait for a\nregression window." shape=note color=pink]
 change_component [label="Change component to\nappropriate component" color="red"]
 new_feature [label="Is it a new feature?" shape=diamond]
 ask_needinfo_ux [label="Ask needinfo to UX\nand product owner"]
 put_backlog_wontfix [label="Will put in backlog\nor close WONTFIX" color="red"]
 duplicate [label="Is it a duplicate?" shape=diamond]
 duplicate_note [label="The answer to this question\nmost often comes from our\nmemory. that's why it's\nimportant to follow the\ncomponent.\npay attention to the branches\na patch has landed to." shape=note color=pink]
 close_duplicate [label="Close DUPLICATE" color="red"]
 expected [label="Is it an\nexpected behavior?" shape=diamond]
 expected_note [label="Always ask the\nUX designer to answer the\nquestion for good." shape=note color=pink]
 close_invalid [label="Close INVALID" color=red]
 add_qawanted [label="add qawanted flag"]
 qawanted_note [label="With qawanted, a team of\nQA engineers will test the\nbug on various branches\nand report if it's happening." shape=note color=pink]
 reproducible [label="Is it reproducible?" shape=diamond]
 close_worksforme [label="Close WORKSFORME" color=red]
 close_worksforme_note [label="You can investigate a little\nmore by yourself if you think\nthe bug is valid despite QA\ndidn't reproduce." color=pink shape=note]
 reproducible_older [label="Is it reproducible\nin an older branch?" shape=diamond]
 bug_new_feature [label="Is it a bug in a\nnew feature ?" shape=diamond]
 nominate_blocker_older [label="Nominate as a blocker\nfor the older version"]
 nominate_blocker [label="Nominate as a blocker for\nthe latest version"]
 set_regression [label="Set regression and\nregressionwinfo-wanted"]
 is_blocker [label="Is bug accepted\nas a blocker?" shape=diamond]
 bug_not_forgotten [label="Bug will not be forgotten" shape=box color=red]
 bug_worth [label="Do you think\nthe bug is\nworth being\nfixed?" shape=diamond]
 ask_needinfo_worth [label="Ask Needinfo to\nUX Designer" shape=diamond]
 small_bugfix [label="Do you think the\nbug fix\nwould be small" shape=diamond]
 set_most_wanted [label="Set the whiteboard\n[sms-most-wanted]"]
 set_papercuts [label="Set the whiteboard\n[sms-papercuts]"]
 close_wontfix [label="Close WONTFIX" color=red]
 actionable [label="Is the bug\nactionable?" shape=diamond]
 needinfo_actionable [label="Ask needinfo to\nthe right people until the\nbug is actionable"]
 needinfo_actionable_note [label="The 'right people' can be\nUX Designers, Visual\nDesigners, Gecko engineers,\nthe bug reporter, ..." shape=note color=pink]
 urgent [label="Is it an urgent bug?" shape=diamond]
 really_urgent [label="Is it a really urgent bug\n(like: it's a blocker and\nwe're late in the cycle)?" shape=diamond]
 easy_bug [label="Is it a\nreasonably\neasy bug ?" shape=diamond]
 mentored_bug [label="Mark the bug\nas a mentored bug.\nWrite appropriate\nindications for a contributor\nto start fixing the bug." color=red]
 wait_planning [label="Wait until the bug is\npicked in a sprint planning" color=red]
 find_owner [label="Find a owner and take it now" color=red]

}

</graphviz>