奥深く悩ましく、そして楽しいソフトウェアテストの世界

不具合修正の優先度を考える

»

テスト担当者は、テストを作成する設計作業と実行作業に注力するのはもちろんのことですが、検出後の工程にも配慮することが大事です。
つまり、不具合の修正作業における優先度の問題です。
後工程をスムーズにする優先度付けとは何か、考えてみたいと思います。

何もしなかったら、何もされない

実体験ですが、私も後工程への意識は低かったことがありました。
不具合起票をRedmine(タスク管理/不具合管理ツール)でチケットを発行すれば一段落である...と。

結果、時が経って気が付くと、発行した不具合の中でまったく対応していないものが出てきました。
また、密かに対応していたり、その存在にすら気付いていなかったり、
不具合管理ツールの運用ルールの行き届いてなさもあったのですが、無法地帯になっていたわけです。
開発チームの不具合への認識・意識は常に高いとは限らないわけで、
不具合起票後にその動向を掴み、コントロールすることもテストチームの役割だと思い知らされました。

優先度付けで起きる問題

優先度は「高」「中」「低」といった3段階で付けることが多いと思います。
これは一見簡単ですが、考えなしに運用すると問題になることがあります。

ほとんどの優先度が『高』

不具合の事象ベース(インパクト)で優先度を付けると起きがちな問題かと思います。
「この不具合は直さないと」「これも直さないと」「あれもこれも...」となり、結果、リソースを超える多くの不具合が「高」となり、意味をなさなくなってしまうといったものです。

納期とインパクトが入り混じる

納期を優先したいのか、インパクトを優先したいのか、基準を設けないと優先度は混乱のもとになってしまうかも知れません。

『見てもらうため』に優先度を高くする

規模が大きいプロジェクトでは、特定のエンジニアにタスクが集中することもあり、そうした場合に、とにかく『見てもらうため』に優先度を高く付けるというのも実際にありました。これも優先度も意味をなさなくしてしまう、よろしくない事例だと思います。

優先度付けはいつするか

まず、優先度を付けるという行為については不具合の検出者といった個人単位ではしない方がよさそうです。
それは開発チームの背景・事情を理解していない可能性が高いからです。
テストチームで優先度付けを行う、というのも同様の理由でお奨めできません。

不具合判定会議で決める

毎日14時から、または週1回月曜日、のようにプロジェクトによりけりですが、開発メンバーとテストメンバーにより、検出した不具合内容の共有と修正方針を決める場=不具合判定会議を設ける、という方法は有効かと思います。
この場にて、開発リソースと相談しながら、スケジュールを合意します。

これは実際に私も大規模プロジェクトにおいてプロセスとして組み入れ、週1回ペースでバグ曲線やゾーン分析といった可視化の共有を併せてながら実施しましたが、することでスケジューリングもしやすくなるなど、メリットは多いと感じました。

スタンドアップミーティングで決める

過去、ハイブリッド・アジャイル開発な現場で行っていたのは、スタンドアップミーティング=朝会で、優先度を策定・共有するというものでした。
前日の検出不具合の共有と、当日の不具合修正を個人毎のタスクと併せて決めていく流れでした。
これはスピード感のある進め方ではありますが、課題もあります。
スタンドアップミーティングは出社直後に行うため、解析が間に合っていない、そもそも不具合自体が初見ということも多いです。
不具合の影響範囲や修正の大きさを解析できていないため、ミーティング中に不具合の内容に話が向いてしまうと時間をロスしてしまいがちです。
テスト実行作業ではよく午前中はスローペース、夕方にペースを上げ不具合検出することが多かったりしますが、翌日のスタンドアップミーティングを考慮し、午前中にフル稼働のテスト実行~夕方は検出した不具合調査、といった工夫も必要です。

さらに考慮すべきこと

不具合の優先度付けには、インパクト・影響範囲、納期だけでなく、他の視点でも考えることができそうです。例えば以下のようなものです。

・開発修正コスト :修正期間、工数をベースに決める
・テスト阻害要因 :テストを止めないことを前提に考える

まとめ

テストエンジニアだからといって、テストだけに注力せず、検出後の不具合にも目を向ける必要性を「優先度」の視点から書いてみました。
本記事を書いていて、何気ない優先度が実はプロジェクトを淀みなく進めるために重要なファクターだと自分自身、再認識することができました。

- INFORMATION -

WARAI(関西ソフトウェアテスト勉強会)のオンライン勉強会を9/25(土) 15:00~17:00で行います。以下connpassへのリンクから参加できます。

テスト技法ワークショップ

今回はデシジョンテーブルテストを使いこなす、といったテーマで、テストエンジニア初学者を主対象にワークショップを行う予定です。
興味ある方の参加をお待ちしております。
(有志の勉強会なので、もちろん無料です)

Comment(0)

コメント

コメントを投稿する