ざっくりと要求分析
要求分析とは、要件定義の前工程です。
概要説明
要求分析とは、要件定義の前に行う利用者のニーズを明確にする工程である。 なぜならば、開発が成功するかどうかの基礎を作るからだ。
例えば、オフィスの業務で「この機能が欲しい」という声を集める。そして、それをドキュメント化する。つまり、要件定義に進む前の重要なステップである。だから、開発をスムーズに進める。
職業職種
プロジェクトマネージャー
プロジェクトマネージャーは、要求分析を主導する。なぜなら、プロジェクト全体の方向性を決めるから。例えば、利用者とのミーティングを設定する。
システムアナリスト
システムアナリストは、要求分析を詳細に作成する。なぜなら、技術的な観点から可能性を評価するから。例えば、利用者の要求をシステム設計に落とし込む。
利用者(エンドユーザー)
利用者は、要求分析に参加する。なぜなら、自分たちが何を求めているのかを直接伝える最良の機会だから。例えば、ミーティングで自分のニーズを話す。
要求分析は、名前の由来は「要求(Requirements)を分析(Analysis)する」から来ています。
要求分析の代表例
IBM
IBMは、要求分析で有名である。なぜなら、長い歴史と経験を持ち、多くの大規模プロジェクトでその技術を活かしているからだ。例えば、WatsonというAIシステムの開発においても要求分析が詳細に行われた。
Atlassian
Atlassianは、要求分析で名高い存在である。なぜなら、Jiraというプロジェクト管理ツールが要求分析のプロセスを効率化する機能を多く持っているからだ。例えば、ユーザーストーリーやエピックを使って要求を整理できる。
Ken Schwaber
Ken Schwaberは、要求分析で世間に知られている。なぜなら、Scrumというアジャイル開発手法の共同創設者であり、要求分析の現代的なアプローチに多く貢献しているからだ。例えば、プロダクトバックログという要求をリスト化する手法を提案している。
手順例
以下は、要求分析の基本手順です。利用者とのミーティングを設定する
ミーティングの設定は、要求を直接聞く第一歩である。なぜなら、口頭でのコミュニケーションが最も効率的だから。例えば、ZoomやTeamsを使ってオンラインで行う。
要求をドキュメント化する
ドキュメント化は、要求を明確にする工程である。なぜなら、後で確認できる形にすることで誤解を防ぐから。例えば、ExcelやWordを使ってリスト化する。
要求を評価する
要求の評価は、実現可能かどうかを判断するステップである。なぜなら、全ての要求が現実的でない場合もあるから。例えば、時間とコストを考慮して評価する。
要求を優先順位付けする
優先順位付けは、何から手をつけるかを決める工程である。なぜなら、リソースは限られているから。例えば、最も重要な機能から開発を始める。
要件定義に移行する
要件定義に移行するのは、要求が明確になった後のステップである。なぜなら、次のフェーズに進むための準備が整ったから。例えば、要求文書をもとに具体的な設計に取り掛かる。
類似語
要求仕様
要求仕様は、要求分析の類似語である。なぜなら、要求を文書化したものを指す場合が多いから。例えば、要求仕様書を作成する工程がある。
ニーズ分析
ニーズ分析は、要求分析の類似語である。なぜなら、利用者が何を求めているのかを調査する点が共通だから。例えば、マーケットリサーチで行われることが多い。
フィージビリティスタディ
フィージビリティスタディは、要求分析の類似語である。なぜなら、要求が実現可能かどうかを調査する工程で使われるから。例えば、プロジェクトの初期段階で行う。
反対語
無計画
無計画は、要求分析の反対語である。なぜなら、要求分析は事前に計画をしっかりと立てる行為だから。例えば、開発を始める前に何が必要かをリストアップする。
勝手な開発
勝手な開発は、要求分析の反対語である。なぜなら、要求分析は利用者のニーズに基づいて開発を行うから。例えば、利用者が求めていない機能を勝手に追加すること。
後付け仕様
後付け仕様は、要求分析の反対語である。なぜなら、要求分析は開発前に必要な機能や仕様を明確にするものだから。例えば、開発後に「これも必要だった」と追加する行為。
要求分析の注意点
要求分析を行う時の注意点は、全ての利用者からの要求を集めることである。なぜならば、一部の利用者だけの意見で進めると、後で問題が起きる可能性が高いからだ。
例えば、一部の人が使いやすくても、他の人が使いにくいシステムになる可能性がある。そして、要求は文書化して保存する。だから、後で確認できるように。
要求分析と要件定義は、間違えやすいので注意しましょう。
要求分析は、利用者が何を求めているかを明確にする行為です。
一方、要件定義は、その要求をもとに具体的なシステムの仕様を決める行為です。
コメント