Forum OpenACS Improvement Proposals (TIPs): TIP #45: (Approved) Simplify and Define Severity, Priority, and Type in OpenACS.org bugtracker

Proposal

Adopt the following definitions of Bug Severity, Priority, and Type, for all post-5.0.0 bugs:
  • Severity is an objective measure of the effect on the system of the bug. Severity is "what's the worst that could happen?" Severity is set by the reporter and adjusted as little as possible.
    1. - Critical. Typically: system crash, security violation, data loss, or cannot install.
    2. - Function Broken. Because of this bug, a major function cannot be made to work.
    3. - Inconvenience. The bug interferes with functionality but an alternative way to accomplish the same function is possible. (changed from "Workaround" in original proposal)
    4. - Cosmetic. The bug does not interfere with functionality.
  • Priority is a measure of how important we judge the bug to be. Priority takes into account available developer time, schedule, user needs, percentage of affected users, and competing demands for attention. Priority is set by the triage team.
    1. - Urgent. This bug has severe consequences for current users and its resolution is judged more important than new features or other bugs in the package. If a developer has time to work on the package at all, the developer is asked to attempt to resolve any urgent bugs before doing new work. Priority 1 bugs may warrent new bug-fix releases. Priority 1 should be used sparingly.
    2. - Fix Before Next Release. This bug seriously impairs common use cases or functions. This bug must be resolved (closed or deliberately postponed) before the next release.
    3. - Normal. This bug impairs one or more use cases of the package.
  • Type
    • Bug - A function which operates incorrectly compared to the expectations of most users.
    • Task - Anything else.

Reason

  • The current system has 6 levels of severity, leading to meaninglessly fine distinctions
  • We don't currently have a simple way to define "show-stopper bugs." For 5.0.0, we used a complex definition including both severity and priority. In the new system, we can simply use priority <= 2 for release stoppers.
  • The attribute of feature request is currently mixed across Task=Todo, Task=Suggestion, and Severity=6, making it harder to isolate non-bugs from bugs.
  • The short text shown in the select lists in the bugtracker offers definition to help bug reporters select the correct values.
  • Parts of this proposal are already partially implemented but have not been formally approved.

Implementation

For new bugs, the implementation would consist of changing the default text shown in the OpenACS bug tracker to the titles shown above, hiding severity 5 and 6, renaming Type=todo to type=task, and hiding type=suggestion.

For old bugs:

  • All records with severity 5 are changed to severity 4
  • All records with severity 6 are changed to severity 4, and type is changed to task
  • All records with type=suggestion or type=todo are changed to type=task.

I would need help implementing both of these changes. Total time to implement, including testing and safe implementation on openacs.org, should be < 4 hours.

References

Proposed post-5.0 changes to openacs bug system
Collapse
Posted by Lars Pind on
Perfect.

Now we just need to get openacs.org upgraded ...

/Lars

Approved. Thanks Joel for thinking about these things.
Collapse
4: Re: TIP #45: Approved (response to 1)
Posted by Dave Bauer on
Approved
Collapse
5: Re: TIP #45:Approved. (response to 1)
Posted by Roberto Mello on
Approved.
Collapse
6: Re: TIP #45:Approved. (response to 5)
Posted by Tilmann Singer on
Approved.

One minor suggestion: 'Workaround' is not immediately understandable without reading the explanations whereas the other severity options all are, it might be better to call it 'Inconvencience - workaround exists' or 'Inconvenience'.

Collapse
7: Re: TIP #45:Approved. (response to 6)
Posted by Joel Aufrecht on
I have marked the tip approved and made Til's change.  If anyone who voted Approved thinks the change invalidates their vote, please revoke or veto and we'll go to a full vote.