システム開発の要件定義の進め方

「はじめよう! 要件定義 ~ビギナーからベテランまで」という本を読む機会があり、要件定義について分かりやすくまとまっている本だったので、自分が必要と思った情報をまとめていきます。

目次

1.要件定義とは

そもそも、システム開発での要件定義とは何ぞやということで、この 書籍 では「要件定義は作ってほしい人と作る側の合意事項」としています。この条件が揃った内容のシステムであれば合格という基準づくりのようなものの解釈でよいのではないかと思います。
(ただ、あとがきのほうではこの作者は画面遷移図を作ることが要件定義で企画と実装のブリッジであるとも書かれていました。)

2.基本的な要件定義の進め方

要件定義の進め方についてこの書籍 で書かれていた内容としては、だいたい下記になります。

依頼者の要望を要求にする

要求を検討する

代替案を考え提案する

提案への検討から再要求を繰り返して合意から要件へ

この内容から依頼者がかなえたい曖昧な要望を要求事項として明確にし、色々な方法を提案して吟味するという流れになるのかと思います。ここで言いたいのは曖昧にしないことと依頼者の言われたことだけを実現するのではないということだと思います。そのため、代替案も検討することになります。

3.定義すべき要件の内訳

要件定義で作成する成果物はゴールから逆算すると書かれていました。
その中の内訳が下記になります。
 (1)UI
 (2)機能
 (3)データ

それぞれの私の解釈は下記で成果物も下記のようになります。
(1)UIは画面イメージ、レイアウト、画面遷移などユーザーが利用する画面の設計
 ・ラフイメージまたはモックアップ
 ・画面遷移図
(2)機能は画面上でボタンからの処理、バックグラウンドで処理するような動作
 ・機能の入出力定義
 ・機能の処理定義
(3)データは、機能でやりとりする項目やDBに保管する項目
 ・ 項目の説明
 ・ 統合ERD

4.企画を確認する

またプロジェクトを進めていると何がゴールかを明確にしておかないと個人の認識がバラバラになります。そのため、 書籍 では企画書を作成するとありました。この企画書は企画を提案する内容ではなく、既に決定した進めていく内容のサマリ版を作成するという内容です。

企画書の内容の項目
<1>プロジェクトの名称
<2>なぜ
 ・目的
<3> 何を
 ・目的達成するために作るもの
 ・作るものの説明
 ・作るものを利用する人
 ・利用する人が得られる便益
<4>どのように
 ・作るための体制
 ・期限

上記のようになぜはWHY、何をはWHAT、どのようにでHOW、WHO、WHENで5W1Hで考えることで明確にできるようになるのかと思います。

5.全体像を描く

またこの書籍では全体像を描くとあり、プレゼンテーションにも利用できるパンフレットのようなものを作成すると書かれていました。
書き方は自由と思いますが、書籍では
中心にシステムを書き、その周りに登場人物と利用者が行うことを書く。
連携するシステムを書く。移行するデータも書く。
大規模な場合は、サブブロック図も用いるとありました。

要は、システムと利用者、データの流れが要件定義をしている人以外にも分かるような簡易資料を作成する必要があることになります。

6.要件定義の成果物

 この書籍では、要件定義で必要な成果物は下記とありました。資料ごとの説明自体は書籍を読んで頂いたり調べてもらったらよいかと思うので割愛しますが、
必要な書類のチェックに使えるかと思います。

 ・企画書(提案ではなく、決まったことのサマリ版)
 ・全体像
 ・利用する実装技術
 ・実現したいこと一覧(要求一覧)
 ・行動シナリオ=業務フロー
 ・ラフイメージまたはモックアップ
 ・画面遷移図(データ項目、操作項目、レイアウトが分かる)
 ・項目の説明(エラーメッセージ含む)
 ・機能の入出力定義
 ・機能の処理定義
 ・統合ERD(ER図、CRUDでチェックも)

※おまけ:権限管理の機能とパーミッション表を作るのも書いていました

7.要件定義後は説明する必要がある

 要件定義の成果物を作成して、終わったと思っても次の工程の実装する人やステークホルダーに説明する必要が出てきます。その説明に下記を作成して、まずは一覧を作ることが挙げられていました。
 ・行動シナリオ一覧
 ・ワークセット一覧
要は、構造化すること(箇条書き)で順番に説明していけば、このシステムについてWHY(何故作るのか)⇒WHAT(何を作るのか)⇒HOW(どのようにして作るのか)の説明ができるようになるとの意図です。


<書籍の感想>
要件定義の方法は人や状況によってやり方は色々あるとは思いますが、この書籍では要定義で基本的に必要になってくる内容を分かりやすくまとめられている内容でした。状況によっては全ての成果物を作成することが出来なかったり必要ないこともあるかもしれませんがそれは状況により取捨選択してこの書籍を参考に自分なりの要件定義をすることが出来るのではないかと思います。是非、読んでみてください。

参考書籍: はじめよう! 要件定義 ~ビギナーからベテランまで