要件定義の方法を知る


要件定義の構造と定義すべき情報を明らかにする



体系化された要件定義手法を利用することにより、定義すべき情報を明確化した上で作業に入ることができます。当社が開発したリレーションシップ駆動要件分析手法(RDRA)もこうした要件定義手法のひとつです。

リレーションシップ駆動要件分析(以下RDRA) では、要件定義の枠組み構造とそれらを構成するモデル要素を定めています。
RDRAの概要は以下のプレゼンまたは書籍ををご参照ください。

プレゼン:
goto pagehttp://k-method.jp/FlashPresen/index.htm

 

参考図書: 「顧客の要求を確実に仕様にできる  要件定義マニュアル」

RDRA本 

 著者: 神崎 善司

 出版: 秀和システム

 

 

 

「要件のツボ」は、RDRA 専用の要件定義支援ツールです。まさに RDRA が規定する情報構造と要件要素そのものを直接定義していくことができます。

 

「要件のツボ」には要件として定義すべき情報を説明するビューがあります。
このビューを使って個々の定義情報の内容と関係を理解することができます。

参照ページ機能/要件定義の登録とそのナビゲーション

top

要件定義の組み立て方を知る

体系化された要件定義手法を利用することで、要件の組み立て方がわかります。当社が開発したリレーションシップ駆動要件分析(RDRA)では、構造から導き出される順序に沿って要件を定義していく方法を提唱しています。

RDRA の要件定義は、システム定義、システム外部情報、システム境界、システムという4つの階層からなる構造を持ち、この構造が要件定義作業の大枠の手順を与えます。この枠組の中で、さらに各モデル要素間の依存関係に基づく順序に従って要件を定義していきます。

「要件のツボ」には、こうした構造と依存関係を利用して効率的に要件を定義していく機能が用意されています。

「要件のツボ」には要件を定義するための順番を説明するビュー(A)があり、その順番に従って入力していくことで一連の定義ができるようになっています。

また、入力においても先に入れた情報を元にそれに依存する情報を入力する形式(B)をとります。これにより素早く情報を登録することができます。

参照ページ機能/要件定義の登録とそのナビゲーション

top

プロジェクトの進め方を変える

議論しながらその場で要件を定義する

限られた時間の中で効率的に要件定義のアウトプットを出していくには、打合せ時、議論、整理、合意した内容をその場で文書化するのが有効です。

合意内容はすでにメンバー間で共有されているので、議論をすぐ次の段階に進めることにもつながり、議論を深める反復作業のスピードを大幅に向上することが可能です。

RDRA が規定する要件定義の枠組みに沿って打合せを進めることで、議論に流れを作り、効果的にアイデアを引き出すことができます。出されたアイデアはその場で記録していきます。

「要件のツボ」では、シンプルな操作で思考や議論を妨げることなく効率的に要件を定義していくことができます。

また依存関係を利用して既存要素から導出する形で新しい要件を登録するなど、要件を洗い出す方法が明確になっています。

これらの工夫により会議の場でこのツールをプロジェクターに映し、その場で入力していくことができます。

機能/要件定義の登録とそのナビゲーション

top

みんなで考え、結果を共有し、議論を積み上げる

要件定義は、種々の要望や要求を分析しながら、システムの目標や役割、価値といった基本的な方向性とそれに整合する個々の事項を決定していく作業です。最初は漠然とした姿しか見えないので、作業の中で理解を深めながら徐々に深堀りしていく必要があります。

こうした段階的な作業は、個々の作業を個人に振り分けるのではなく、共通の課題をみんなで検討し、議論を積み上げ、そこから得られた結論を全員で共有しながら進めていきます。その際、議論を発散させることなく確実にアウトプットを出していくために、要件定義の枠組みを利用します。

「要件のツボ」を使えば、RDRA? が規定する要件定義の枠組みに沿って効率的に議論の成果をそのまま要件として定義でき、それを基にさらに議論を深めていくことが可能です。
テンプレートをカスタマイズすると任意のフォーマットでHTMLを生成することができ、Excelなどで再利用するときにはCSVとして出力することもできます。

機能/要件定義用テンプレートの登録と定義書の生成

 

議論の場では入力と分析に集中し、最終結果をドキュメントとして生成します。
ブラウザーから直接ドキュメントを生成することもでき、いつでも定義内容を確認することができます。

機能/ブラウザからのドキュメント参照

top

本質的な要求を把握する

要求を分析してシステムが目指すべき目標を明らかにしたうえで、関係者共通の認識として合意します。

議論が袋小路に入り込んで行き詰った場合は、要求を階層化したり分類に当てはめるなどして整理し、そもそも何がしたいのかを明らかにすることによって、行き詰まりの原因となっている過去のしがらみを見つけ出します。要求分析を通じてシステム全体として何をやりたいのかを考えることは、枝葉の議論に終始する成果物指向からの脱却にもつながります。

本質的な要求を把握した上で、それを実現するための方法を論理的な枠組みに従って組み立て直し、現実の方法に落とし込みます。

「要件のツボ」では、システムの方向性を導き出すための要求分析を支援する機能が用意されています。

要求をツリー構造を使って階層化することで要求を分析することができます。
「要求Aを満たすためには要求Bと要求Cを満たす必要がある」このような要求間の関係を階層化します。

同じく要求を分類するためにグルーピング用の要求を作成し、対象の要求を子として登録することで、要求を分類し要求の傾向をつかみやすくすることができます。これを繰り返すことでシステム化の価値や目的にまでつなげることが出来ます。

要求を有効に使うために4つに分けて管理します。

・要望      ヒアリングした情報をそのまま載せる
・機能要求   要望を整理し機能要求として粒度と階層化を行い本質的な要求を洗い出す
・非機能要求 要望から非機能(性能要求、操作性など、機能要求に結びついて意味を持つもの)なものを整理した物
・要件      ステークホルダーが関心を持つ重要な要求を要件としてまとめる

要望は「要件登録」で連続的に登録し、機能要求以降をこの要求分析で整理します。
要件一覧ペインからDrag&Dropするだけで要求がコピーされるので、要望から機能要求、非機能要求へとDrag&Dropして各々の要求を作成します。
次にそれらの要求を階層化、分類、整理します。最後にステークホルダーが感心を持つ機能要求、非機能要求を要件としてD&Dします。

要求を4つに分けて管理し、コピー、階層化、分類作業を行い本質的な要求を明らかにします。
「要件のツボ」は上記一連の作業を素早く行うための支援を行います。

機能/分析支援ツール

要求の階層化 例

要求A
要求B 
要求C

 

要求のグルーピング

グルーピング用

 要求X
 要求Y

 

要求を以下の4つに分けて管理する

 ・要望
 ・機能要求
 ・非機能要求
 ・要件

 

要件一覧ペインからDrag&Dropすることでコピー可能

top

網羅性を確保する

要件定義として抜けがないようにするために網羅性を確保する必要があります。
網羅性は、アクターからユースケース、外部システムからイベントまでのつながりを確認することで確保できます。具体的には次手順を踏みます。

1.システムに関わる全ての関係者と全ての外部システムを洗い出す
2.関係者の要望、要求を捉え、同時にシステムの目的・役割を導き出す
3.上記関係者が関係する業務フローもしくは利用シーンを全て洗い出す
4.上記業務フローあるいは利用シーンに関わるシステムの接点(ユースケース、イベント)を洗い出す
5.全てのユースケース、イベントに結びつく機能を洗い出す

関係者と外部システムを出発点として、そのつながりを手がかりに全体をカバーすることが重要です。

「要件のツボ」には関連性を確認するための画面(関連チェックA)が用意されており、論理的につながっている関係にあるものが、実際の定義ではつながっていない場合に警告をだします。

そのつながりを確認し、つながりが必要であればこの画面で関連性を持たせます。
この画面を使ってシステム価値から、システム境界までの関係を確認することで網羅性の確認ができます。

機能/検証支援ツール

 

またオーバービュー(B)を使うことで全定義情報を確認することができます。この画面で俯瞰的に定義情報をみることで抜けを見つけられる可能性があります。

機能/検証支援ツール

top

精度を向上する

要件の各情報には関連があり、それに基づいて作成した要件定義のつながりを利用することで精度を向上させることができます。

情報のつながりには意味があります。つながりの意味を理解して各定義情報を見直すことで精度が向上します。

例えば、アクターにひもづく要求が無ければ、ヒアリングする要求が漏れている可能性があります。
またアクターに結びつく利用シーンをそのアクターの要求を同時に見ることで利用シーンが適切なものであるか否かを確認できます。

「要件のツボ」では、モデル要素間の関連性に基づいて、要件定義プロセスの各シーンごとに整合性をチェックする機能が用意されています。


分析シーン 参照ページ機能/分析支援ツール   

各情報のつながりを確認するための「リンク分析」   
機能とデータのつながりを利用して全体の整合性を最終確認する「CRUD 分析」

 

検証シーン 参照ページ機能/検証支援ツール   

各情報のつながり方を確認する「関連チェック」   
項目単位で整合性を確認する「項目チェック」

 

レビューシーン 参照ページ機能/レビュー支援ツール   

ステークホルダーに対して要求の考慮度合いを示す目的で使える「要求マッチ」
レビューを支援する「要件レビュー」

top

ゴールとマイルストーンに基づくプロセス管理

要件定義を進めていくにあたっては、 成果物の条件、粒度など作業上の進め方についてベクトル合わせをしておくことが重要です。

具体的には次の手順を踏みます。

対象を決める
目標を決める
実施すべき作業をリストアップする
目標までの道筋を示す
各作業に必要なスキルを明らかにし担当を決める

RDRAでは、まず最終目標となるゴールを設定し、そこに至るまでの過程をテーマ別に区切ってマイルストーンを設定します。テーマごとのマイルストーンを設定することにより、作業の進行にメリハリが付きます。最初に決めたゴールは必ずしも正確とはいえないので、マイルストーンごとに見直して軌道修正を図ります。

「要件のツボ」には、こうしたゴールとマイルストーンによるプロジェクトの管理機能が用意されています。

要件定義のゴールを明らかにし、要件定義の作業として目指すべき方向を明らかにします。同時にマイルストーンを設定し、軌道修正のタイミングを明らかにします。
マイルストーンにテーマを設定することで、その期間の重点ポイントを明らかにし、メンバーの作業に統一性を持たせます。
要件定義のゴールやマイルストーンのテーマはヘッダーに表示されいつでも参照できるようになっているので、リーダーはメンバーの意識をあわせるために積極的にヘッダーの共通領域を使うことをおすすめします。

マイルストーンの考え方や候補の情報なども説明されており、リーダーやメンバーがマイルストーンの組み立て方や役割つながりを確認できるようになっています。

参照ページ機能/要件定義工程を管理するマイルストーンの登録

 

top