我向一些同事询问了可能发生的情况,他们提到如果一个bug的优先级不高,那么该Bug很少会引起开发人员的注意,这确实是有道理的
实际上,如果您问我,它不是。优先级越高(使用的水平),您拥有的信息就越多。如果您实际上只有一个优先级,那与根本没有优先级是一样的。
而且,由于您仍然要解决相同数量的错误,并且需要执行相同的工时,因此,将使用其他启发式方法,可能是空的-“先到先得”。因此,您现在有了一个错误优先级指标,除了那是到达时间并且不再受您控制。
这可能是没有足够的资源分配给错误修复的征兆(存在一些策略,例如“ 在修复错误之前没有新功能 ”,可以在此有所帮助。乔尔批准;理解限制和后果是业务决策)。
在我工作的一个项目中,传入的错误被累积在“无优先级缓冲区”中,每个星期一我们将审查错误列表,估算难度(非常粗略的估算;更多时候,我们通常只输入“ Average”),按可用时间对它们进行排序。这确实会降低无聊的,无趣的或被认为是硬错误的列表;为了弥补这一点,主管和市场营销人员每周有一定的信用额度,可用于抵销喜欢的错误的优先级,并为未解决的错误提供报销(这限制了可以推迟多少个开发人员期望的错误) 。
还可以合并,取消和拆分错误;我记得有一个模块是如此无可救药地存在缺陷,以至于我们将大约二十或三十个错误报告沉入了一个“从头开始重写此内容”,然后拆分为“清楚地陈述了该错误内容的输入和输出”,“编写测试”确保输入和输出符合规范”,依此类推。最后一个项目是“将旧代码打印在再生纸上,将其放到草坪上,放到火上烧”(我们也是这样做的。我记得那感觉很好。我们轮流悼词;这很有趣)。
经过一番讨价还价,我们有了本周的待办事项清单,分为“将要做”,“可能要做”和“不能做”这两个清单,这些清单已推迟到下周。这是另外一些讨价还价的地方:我们说要花50个小时来分配错误,而我们有95%的把握要修复前20个错误。管理层强烈希望修复第21个错误,并且没有信誉。然后,我们会建议将该错误与“将要做的事情”列表中的一个交换,或者有人会说“让我离开FooBazFeature子团队几天,然后我会做的”,或者我们会说“我们需要更多人手”。
该系统的确没有人满意,但这(至少在开发人员中)被认为是一个好兆头。
出现的其他一些负面模式是经理方面的“如意算盘”(“您指出错误57212需要八个小时。这是不可接受的。将其设置为四个”)和“由菲亚特调试”(“随您便”但是这40个错误必须在下周的大型演示之前修复。您不能拥有更多的时间,您不能拥有更多的人”)。还有Boxer综合症(“我会更加努力”),这种综合症在短期内效果很好,但通常会导致开发人员抓狂或离开而前往绿色牧场。