ビジネス要求を管理するための文書を作成してみた
作成日:2024/04/06
目標
ビジネス要求について共通理解を得るための唯一の文書を作成する。 その結果、自身が達成したいビジネス要求をハンドリング出来そうかどうか考えてみる。
検証内容
達成したいビジネス要求をはっきりさせるために、ビジョンスコープ記述書の作成を行った。その検証内容について下記に示す。
テンプレートと記述する内容
テンプレートの内容は文献(1)を参考に作成している。
-
ビジネス要求
基本的にここには、組織をアラインメントするための情報を記載する。 組織が誰に対してどんな価値を提供するか、それによってどんな利益を得たいかを記述する。 また、ビジョンだけでなくそれを達成するためにどんな障害があるかなどもあらかじめ仮説を立てておくことでリスクの予防策を打つことができる。- 背景
なぜこの要求が発生したか背景情報を記述することで、ビジョンを振り返って調査しやすくする。 - ビジネス機会
どの市場の誰に対して価値が提供できるかを記述する。ビジネス機会がないとビジョンを達成するためのリソースが無駄になる可能性があるので、そもそもソフトウェアのニーズがあるか仮説を立てておく。 - ビジネス目標
そのソフトウェアによってどのような価値が生み出されるか、最終的な状態を記述する。例えば、得たい利益やユーザーに提供したい価値などを記述する。 - 成功判定メトリクス
ビジネス目標が達成できたかどうかを判定するための定量的なメトリクス。ここを定義しないと、ビジネス目標が達成できたかどうかを判断することができずに組織がどこに注力すれば良いかさまようことになる。 - ビジョン記述
背景、ビジネス機会、ビジネス目標、成功判定メトリクスを端的な文章にまとめたもの。このプロダクトの売り文句を記載する。 - ビジネスリスク
ビジョンを達成するためにどんなリスクがあるかを記述する。リスクを事前に把握しておくことで、リスクを軽減するための対策を打つことができる。 - ビジネス上の前提条件と依存関係
ビジョンを達成するために必要な条件や依存関係を記述する。ビジョンを達成するためには、どのような条件が必要かを明確にしておくことで、リソースをつぎ込む適切なタイミングを見極めることができる。
- 背景
-
スコープと制限
やることとやらないことを明確にしておくことによって、無駄なスコープクリープに振り回されないようにする。- 主要フィーチャー
どんな機能があればビジネス要求を達成できるかを明確にする。機能要求を一言で表し、開発者に何を作ればよいかを明確にする。 - 最初のリリースのスコープ
どの機能を最初にリリースするかを明確にする。最初のリリースでどのような価値を提供するかを明確にすることで、ビジネス要求を達成するための最小限の機能を明確にする。主要フィーチャーが揃っていないとリリース(顧客に価値を届けられない)出来ないという状況を緩和させるために、最初のリリースのスコープを明確にする。 - 2 回目移行のリリースのスコープ アジャイルのようなフィードバックをもらいながら開発していく方針を取る場合、どのようにして少しずつ機能を追加していくかあらかじめ計画を立てておくことで、フィードバックをどのように取り入れるかを計画しやすくなる。 また、開発者にとって将来のリリースの準備を行うための情報にもなる。
- 制限と対象外
このビジネス要求における「やらないこと」を記述する。やらないことを明確にすることで、無駄なスコープクリープを防ぐことができる。また、色んな機能を追加したくなる誘惑もここでアラインメントすることが狙い。
- 主要フィーチャー
-
ビジネス環境 ステークホルダーがこのビジネス要求によってどのような利益が得られるかを記述する。これは誰に対してどのような価値を与えるべきプロダクトかをはっきりさせておき、妥当性が検証されていない思いつきに振り回されないようにする。
- ステークホルダーのプロファイル このビジネス要求に関わるステークホルダーのプロファイルを記述する。ステークホルダーごとにどのような利益が得たいのかを記述し、コミニュケーションの際の妥当性検証に活用する。
- プロジェクトの優先順位 このビジネス要求が他のビジネス要求と比較してどの程度の優先度があるかを記述する。プロジェクトの優先順位を明確にすることで、リソースの配分を適切に行うことができる。
- 導入時の留意事項 導入時に障害になりそうな事柄を記述する。導入コストをあらかじめ明確にしておくことで、誰にどんな協力を仰げばよいかを考えることができる。
結果
個人で開発しているlydieのビジネス要求についてビジョンスコープ記述書を作成した。
考察
上記の結果今のところ自分が得られた実感は下記のとおりである。
- 目的や誰に対してどんな価値を出したいかアラインメント
- 定量的な目標によるスコープのアラインメント
- やらないことの明確化によるプロダクトのアラインメント
- プロダクトに関係するステークホルダーとどのようにコミュニケーションを取っていくかの想像
- プロダクトに関係するユーザークラスの理解
ざっくりいうと、目的をアラインメントしながらプロダクトが横道に逸れるのを防ぎつつ誰に対してどのようなアプローチを行えばよいかあらかじめ備えておける点がとても良いと感じた。
今のところ完璧には埋まっていない箇所もあったり、記述して間もないのでこの実感が正しいのかはわからないが、今後もこの文書を継続して更新していくことで、このアプローチが自身も目的にあっているものかを検証していきたい。
参考文献
(1) カール ウィーガーズ;ジョイ ビーティ. ソフトウェア要求 第 3 版 (Japanese Edition), 日経 BP 社. Kindle Edition.