バグの優先度は意思決定プロセスの結果
バグの優先度は意思決定プロセスの結果であると喝破した記事がある。
チケット駆動開発(Ticket Driven Development:略してTiDD)の経験を思い出しながら考えてみる。
【元ネタ】
サン流だけど一流のバグ管理心得
バグにそもそものプライオリティなんかないんだ。バグはプライオリティとともにうまれるわけじゃない。
バグのプライオリティってのは、我々の決定なんだ。
単なる技術的な決定じゃない。単なるバグの影響度でもない。単なる重大性でもない。
バグは、リソース、ビジネス上の判断なんかによって、決定されるもんなんだ。
バグの優先度は、意思決定プロセスの結果なんだよ。
つまり、どれがバグで、どれがバグじゃないのかって決めたことのね。
チケット駆動開発(Ticket Driven Development:略してTiDD)を実践してみて、チケットの取捨選択はこのことなんだ!とようやく理解した。
TracやRedmineでは、チケットに優先度や重要度という項目がある。
優先度は、タスクが緊急の作業なのか、後回しでよいのか、を示すチケットの属性。
重要度は、チケットがシステム要件や顧客のビジネス要件の中で、どれだけその機能が重要なのかを示すチケットの属性。
「Trac入門 ――ソフトウェア開発・プロジェクト管理活用ガイド」でも、Tracの優先度と重要度の違いについて説明している箇所がある。
その説明によると、優先度と重要度の概念について混乱があったらしい。
優先度は、開発者の作業の優先順位を決める重要な指標。
重要度は、顧客の観点から見た要件の指標。
優先度と重要度は、その属性に関わるアクターが異なる点が重要だ。
特に、優先度はチケットの取捨選択に大きく関わる。
例えば、システム上致命的なバグならば、そのバグ修正のチケットの優先度は緊急になるだろう。
最近のWebシステムならば、セキュリティパッチやSQLインジェクションなどのバグ修正が相当するだろう。
そんなバグを放置すれば、システムやデータの安全性、更には顧客が社会から信頼を失うといった危険があるからだ。
逆に、その機能の重要度は高いが緊急性は低いというタスクもある。
例えば、Amazonのような小売系Webシステムで新しい決済機能を実現する要件が出てきた時、顧客としては早く実装して欲しいが、バグ修正や今開発中の機能のリリースの方が緊急性が高い場合もある。
チケットの優先度は、顧客の利益やシステムの安全性、開発者の工数見積などの観点から、顧客と開発者の間で調整して初めて決まる。
だから、優先度は意思決定プロセスの結果という指摘は非常に洞察に優れている。
従って、プロジェクトリーダーは、顧客と開発者の間で調整して、タスクの優先順位を決めるという能力を必要とする。
その能力は調整という名の政治力そのものだ。
チケット駆動開発は、そんな意思決定の材料を色んな観点で提供してくれる優れたインフラなのだ。
| 固定リンク
「プロジェクトマネジメント」カテゴリの記事
- 「スクラムの拡張による組織づくり」のScrum@Scaleの感想(2024.03.31)
- ストラテジストとプロジェクトマネージャの役割の違いは何なのかpart2~プロセスのレイヤと達成目標のレイヤが異なる(2023.02.18)
- ストラテジストとプロジェクトマネージャの役割の違いは何なのかpart1~CSFはWBSみたいなものと捉える(2023.02.14)
- PM理論では課業志向の方が関係志向よりも生産性が高いことを主張しているのではないか(2023.01.22)
- 現代日本人の弱点はリーダーシップ不足と生産性が著しく低いこと、そしてリスク許容度が著しく低いことだ(2022.12.23)
「Redmine」カテゴリの記事
- Redmineのバージョン設定でプロジェクトの設定方法が違う(2024.06.23)
- ウクライナのRedmine開発者が作ったRedmineテーマやプラグイン(2024.06.18)
- 第26回redmine.tokyo勉強会の感想~多様性はコミュニティが成功する重要な要因の一つ #redmineT(2024.06.15)
- Redmineで持ち株管理する事例(2024.04.21)
- チケットはデータでとプロセスの二面性を持つ #redmine(2023.12.24)
「ソフトウェア工学」カテゴリの記事
- 「システムアーキテクチャ構築の原理」の感想part2~非機能要件がシステムのアーキテクチャに影響を与える観点をプロセス化する(2024.05.06)
- 「システムアーキテクチャ構築の原理」の感想(2024.05.06)
- ソフトウェア工学の根本問題から最近のソフトウェア設計を考えてみる(2024.03.03)
- マイクロサービス設計は従来のアーキテクチャ設計と何が違うのか(2024.01.02)
- 「ソフトウェアアーキテクチャ・ハードパーツ」の情報リンク~マイクロサービスの設計技法の課題は何なのか(2023.11.12)
「チケット駆動開発」カテゴリの記事
- 第26回redmine.tokyo勉強会の感想~多様性はコミュニティが成功する重要な要因の一つ #redmineT(2024.06.15)
- チケットはデータでとプロセスの二面性を持つ #redmine(2023.12.24)
- 小説活動にプルリクエスト駆動が必要になってきた(2022.05.08)
- 知識は経験よりも大切か、経験は知識よりも勝るのか、SECIモデルは相互作用を語る(2022.04.26)
- プロジェクト管理の基本はテーラリング、Redmineはプロセスをテーラリングするツール(2022.04.21)
コメント