LoginSignup
14
25

More than 3 years have passed since last update.

要件定義初心者のための要件定義指南

Last updated at Posted at 2020-01-13

要件定義初心者の自分が、要件定義を日々行っていく中で、大事だなと感じたことを記事にしていこうと思います。

要件定義の話に入る前に、以下のような例を出しておきます。

要件定義はRPG

ドラ○エやファイナル○ァンタジーのようなRPGを思い浮かべてください。
RPGの主な流れとして、
勇者魔王を倒して、世界平和にする
このような構成になっていると思います。

これを目的目標手段に当てはめてみます。(様々な当てはめかたがあると思いますが)

目的世界を平和にする
目標魔王を倒す
手段勇者のレベルを上げる

以上を踏まえて本題に入っていきます。

要件定義

まず初めに、用語を定義しておきます。

クライアント : ここでは、営業さん、webディレクターさん等、エンジニアに要求を持ってくる人達のことを指すとします。

そもそも要件定義とはクライアントの要求に対して、クライアントエンジニアで認識合わせを行い、どう対応するのかを決めていくものです。

ここで、クライアントの要求に関して言及すると、多くの場合クライアントの要求は上のRPGの話でいうところの目標である場合がほとんどです。

例を挙げて説明すると
競合他社には掲載されている情報を自社サイトにも掲載してほしい
という要求がクライアントから来たとします。これは目標に該当しています。
この要求の裏には、
他社サイトにある情報をしっかりと自社サイトでも提供し、他社サイトに流れてしまうのを防ぐ
という目的があります。

この目的を飛ばして、目標の部分がエンジニアに要求として降ってくる場合が多いです。

重要なのは、なんのためにそのタスクを行うのか・そのタスクを達成するとどんなメリットがあるのかという目的の部分をしっかりと聞き出す事です。

ただ言われた目標の部分を遂行しているだけでは、根本的な問題解決にはならないしエンジニアのリソースの無駄遣いになりかねません。

目標の裏にある、目的のヒアリングを行う。
これが要件定義の第一段階です。

エンジニアは手段の提案のプロ

目的のヒアリングを行いお互いに認識を合わせた後は、その目的に即した目標を達成するための手段をどうするか決めていきます。

システム関連では、エンジニアは手段の提案のプロであるため、クライアントの要求に対して最適な手段を提案できなければなりません。

最適な手段を提案するためには、様々な技術に精通しておかなければならず、そのためには日々新しい技術に触れ続け、自分の引き出しを可能な限り広げておくことが必要です。

自分もまだプログラミング初心者で要件定義の際、この技術の引き出しの少なさに悩んでいます。
しかしこればかりはもう、地道に積み重ねていくしかないと思います。

 まとめ

というわけで、要件定義をする上で需要なことをまとめると
相手の要求の裏にある目的の部分をしっかりと聞き出し、その対応策を考える。
最適な対応策を提案するために日々自分の技術に磨きをかけ、
自分の提案できる手段の引き出しを広げていく。

だと思います。

以上でこちらの記事を締めくくります。

ご閲覧ありがとうございました。

14
25
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
14
25