実体のないシステム開発において、どのような要望や目的を満たすシステムを開発するのか、はっきりとイメージを持つことは難しいことです。
ですが、「要求は伝えたから、あとは開発側にお任せしよう!」と解釈のすり合わせが行われないまま開発を進行するとシステム開発が失敗に終わってしまう可能性もあります。
そのため、システム開発を成功に導くためには、「要件定義」で開発側との解釈のすり合わせや、要件の明確化を行うことが重要です。
この記事では、「要件定義」で意識すべきことは何なのか、用語の説明を踏まえ、分かりやすく説明いたします。
要件定義で発注者がするべきこととは
要件定義は発注者にとっても重要な工程となります。この工程をいかに行うかによってシステム開発の失敗を招く可能性もあります。
ですが、発注者も下記項目を意識することで失敗を防ぐことができます。
- 要求や資料を洗い出す
- 主体的に参加する
- 解釈のズレがないか確認する
システム開発の工程
システム開発は一般的には次のような工程で行われます。
- 要件定義
- 設計
- 開発
- 納品
- 運用
要件定義は開発において一番最初の工程です。
設計の段階までは、システムに対する発注者(ユーザー側)の目的や要求が満たされているか確認する必要があり、発注者の参加が必要不可欠です。
設計に関しては下記記事で説明しています。
システム開発の最初の工程「要件定義」の後に設計段階があります。要件定義では発注者と開発者の打ち合わせがとても重要となります。 「要件定義で十分開発会社に要望は伝えたから、もう発注者の役目はないだろう」と思われるかもしれません。しかし、[…]
要件定義とは
発注者から受け取ったRFP(提案依頼書)を元に、開発するシステムで解決したい問題や、目的に対して開発するシステムでどのような機能の開発が必要になるか明確にし、資料に取りまとめる工程になります。
要件定義を作成することで、開発する範囲や、実際にシステムに組み込めるものかどうかなどが分かり、求めていたシステムの完成に近づけることができます。
そのため、具体的かつ明確に要件を洗い出す必要があります。
RFP(提案依頼書)とは
RFP(提案依頼書)はRequest for Proposalの略で、どのようなシステムを開発したいかに関して発注者が開発者に提案を依頼する資料になります。RFPは開発会社の選定や見積検討のために提出する資料ですが、要件定義は開発会社が決定し、開発がスタートした時点で作成されるものです。
そのため、RFPの内容をより具体的にシステムに落とし込むにはどうするか決定する段階となります。
要件定義のフロー
進め方に関してご説明いたします。
- 発注者(ユーザー側)へのヒアリング
- 要求から機能の策定
- 要件定義書の作成
発注者(ユーザー側)へのヒアリング
プロジェクトを行うに至っての目的や要求を発注者と担当者が話しあい、解釈のすり合わせを行います。
ヒアリング担当者は、営業担当の場合や実際に開発を行う開発者が兼任である場合もあります。
要件定義書作成の前に発注者の要求をまとめる要求定義を行う場合もあります。
要求定義とは
発注者(ユーザー側)がシステム開発に何を求めるかまとめることです。
要件定義が発注者が解決したい目的をどのようなシステムで解決すべきかをまとめたものに対し、要求定義はそもそも開発するシステムによって達成したい目的や、解消したい問題をまとめることになります。
要求から機能の策定
聞き取りを行った後、実際のシステムにどのような機能を実装するかを決めます。
要求を全てそのまま機能にする前に、その要求が本当に機能として必要なものかどうかも含めて検討します。
要件定義書の作成
機能を検討し、要求をシステムの中に落とし込んだものを開発者が要件定義書にまとめます。
要件定義において意識すべき点
発注者の要求をヒアリングし、開発側が機能へ落とし込むため、発注者は開発者に投げてしまっても問題ないように見えます。
しかし、実際は発注者の協力が重要になります。
以下の項目を発注者が意識することで要件定義はスムーズに進行します。
要求や資料を洗い出す
要求を提出する前に発注者が実際に利用するユーザーではない場合は特にシステムの利用者を想定して調査することが重要です。
要件定義で話し合う前に発注者が要求を網羅し、具体的にすることで開発者側も提案をしやすくなります。また、漏れなく要件を反映することができます。
主体的に参加する
要件定義は発注者側の主体的な参加が不可欠になります。
必要とする機能や解消したい問題は発注者にしかわからないためです。打合せの際はどういった機能が必要か漏れなく伝えましょう。
開発者は発注者から伝えられた要件のみで機能を決定し、開発を開始します。必要な機能が漏れると別途改修が必要になり、予算よりも費用が高くなる場合もあります。
解釈のズレがないか確認する
要求を提出しただけでは要件定義は行えません。発注者と開発者の間では解釈に差が出ることがあるため、開発側が要求をそのまま落とし込んだだけでは不十分です。
要求定義で提出した要求事項が機能として正しく落とし込まれているかどうかは発注者が確認しなければ分かりません。確認せずに開発が進むことで想定していたシステムとは異なるものが完成する可能性があります。
打ち合わせの中で解釈のズレが無いか相互にコミュニケーションをとり確認することが重要です。
要件定義でするべきこと
要件定義に関して説明いたしました。
- 要件定義とはシステムで解消したい問題や達成したい要求をシステムでどう開発するか取りまとめる工程
- 実際の利用者を想定し実現したい要求を漏れなく網羅することが重要
- 発注者は要求や資料をあらかじめ洗い出し主体的な参加を志すことでスムーズな要件定義に繋がる
メディアファイブでも、事前に必要な資料の作成や課題の洗い出しをしていただくことでスムーズにお話を進めることができます。
ですが、資料が不明な場合は、打ち合わせの中で都度必要なものを確認しながら進めますのでご安心ください。
メディアファイブは、自社エンジニアによってお客様の業務改善・課題解決につながる高品質なシステムを開発します。
幅広い業種の開発実績がありますので、まずはお気軽にご相談ください!
詳しくはこちら