何が起こっているのかを同僚に尋ねたところ、バグがその優先度を持たない場合、バグが開発者の注意を引くことは非常にまれであると述べました。
実際に、あなたが私に尋ねると、そうではありません。優先度の(使用済み)レベルが高いほど、より多くの情報が得られます。実質的に優先度が1つしかない場合、それは優先度をまったく持たないのと同じことです。
そして、あなたはまだ同じ数のバグに取り組む必要があり、それを行うために同じ工数を費やしているので、他のヒューリスティック、おそらくヌルのヒューリスティックが使用されます-「先着順」。これで、バグの優先度メトリックが得られました。ただし、それは到着時刻であり、もはや制御できません。
これは、バグ修正に割り当てられているだけでは不十分なリソースの徴候である場合もあります(「のようないくつかの政策があるバグが修正されるまで、新しい機能があり助けることができる」。ジョエルが承認し、理解の限界と結果は、ビジネスの意思決定)。
私が取り組んだあるプロジェクトでは、入ってくるバグは「優先バッファなし」に蓄積され、毎週月曜日にバグリストを確認し、難易度を推定しました(非常に大雑把な推定です。利用可能な時間で並べ替えます。これは、退屈な、面白くない、または考え抜かれたバグをリストに落とし込む傾向がありました。それを相殺するために、スーパーバイザーとマーケティングは、お気に入りのバグの優先順位を上げるために費やすことができる週に一定のクレジットを持ち、未解決のバグの払い戻しを受けました(これにより、開発者が依存するバグを遅らせることができる限度が設定されました) 。
バグをマージ、キャンセル、分割することもできました。あまりにも絶望的に欠陥があった1つのモジュールを覚えているので、20から30のバグレポートを単一の「ゼロからこのものを書き直し」にし、それを「惨めなものの入力と出力を明確に述べる」、「テストを書く」入力と出力が仕様に一致することを確認します」など。最後の項目は、「古いコードを再生紙に印刷し、芝生の上に置いて燃やします」でした(私たちもそれを行いました。それがどれほど良い感じだったかを覚えています。 )。
いくつかの苦労の末、今週の予定リストがありました。これは、「やる」、「やる」、「できない」に分かれていて、来週にぶつかりました。これが追加のハグリングの出番です。バグに割り当てるのに50時間と言っていましたが、最初の20個は95%確実に修正できました。経営陣は、21番目のバグの修正を強く望んでおり、クレジットが残っていませんでした。次に、そのバグを「Will do」リストのバグと交換するか、誰かが「FooBazFeatureサブチームから数日間降りて、それをやる」と言うか、「もっと必要です」と言うでしょう。人材」。
システムは本当に誰も満足しませんでしたが、これは(少なくとも開発者の間では)良い兆候だと信じられていました。
現れたいくつかの追加のネガティブなパターンは、マネージャー側の「希望的観測」(「バグ57212には8時間かかると述べました。これは受け入れられません。4にする」)と「フィアットによるデバッグ」(「好きなことをしてください」)しかし、これらの40個のバグは、来週の大きなデモの前に修正する必要があります。これ以上の時間を確保することはできません。また、ボクサー症候群(「私は一生懸命に働きます」)も短期間はうまく機能する傾向がありましたが、通常は開発者が緑の牧草地に飛び込んだり、離れたりします。