An alternate approach to custom fields
Myk Melez
myk at mozilla.org
Wed Mar 19 14:01:13 UTC 2003
Sean McAfee wrote:
>Bradley Baetz <bbaetz at acm.org> wrote:
>
>
>>On Fri, Mar 14, 2003 at 07:10:42PM -0500, Sean McAfee wrote:
>>
>>
>>>For example, one of our workflows describes the testing path of individual
>>>returned parts. Each part is run through a dozen or more tests. The result
>>>of each test is recorded via a drop-down list on our current system's web
>>>interface. Different tests are performed at different times. Trying to
>>>squeeze all of this information into a single free-form text field and
>>>depending on users to keep the field formatted in a way that's suitable
>>>for querying seems like a recipe for disaster.
>>>
>>>
>
>
>
>>If the tests are just a pass/fail basis, then you could use keywords or
>>(in 2.17) bug flags to represent the various tests. If you sometimes run
>>tests more than once, then you'll have to use bug flags.
>>
>>
>
>The keyword approach doesn't seem appropriate. As I understand it, that
>would involve creating a trio of keywords (pass/fail/unknown) for each
>possible test, right? But then there would be no way to prevent these
>keywords from being applied to inappropriate incidents, or to enforce
>exclusivity.
>
>I didn't know about bug flags, since I've been evaluating 2.16.2. But I
>don't see any mention of them in the 2.17.3 documentation. How do they
>work?
>
>
Bug flags are a way to record the status of some characteristic of a bug
whose status can be defined in a boolean fashion. For example, bug
fixes in the Bugzilla community must be approved by the module owner or
his designee before they can be checked in. The Bugzilla community uses
an "approved" flag in their own Bugzilla installation
(bugzilla.mozilla.org) to indicate whether or not a bug has been
approved for check in. A bug marked "approved+" has been approved for
check in, while one marked "approved-" has been rejected.
Bug flags are configurable and product/component-specific, so you can
add as many flags as you want and restrict them to certain products or
product/component combinations. The UI for setting flags on the bug
report page consists of a table listing active flags and a pull-down
menu showing their status. To change a flag's status, users select a
different status from the pull-down menu. The options are "" (no value,
a.k.a. flag not set), "+" (flag set positively), "-" (flag set negatively).
Flags are similar to trios of keywords in the functionality they provide
but have the following advantages over keywords;
1. They can be made product/component-specific.
2. They provide a structured UI for making changes instead of making the
user type magical values into an arbitrary text field.
3. They can be deactivated/reactivated without deleting records in the
database, so you can remove a flag from the UI while still keeping the
data around in case it becomes useful again.
Based on your description of the situation, I think bug flags are a good
solution to your problem, with a few potential issues. First, you
mention that you need a way to prevent the values from being applied to
inappropriate incidents. Flags can be restricted by product/component
combinations, so if your restrictions are all product/component-based,
then this is not a problem. Otherwise you would have to add
functionality to flags to restrict them by your other criteria. Second,
flags do not enforce exclusivity, so this feature would have to be added.
If you are interested, I can give you administrator access to a test
installation on the Bugzilla testing server
(http://landfill.bugzilla.org/) so you can test flags and see if they
would work for what you want to do.
-myk
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.bugzilla.org/pipermail/developers/attachments/20030319/9327a5ef/attachment.html>
More information about the developers
mailing list