価値にフォーカスした要件定義を過ごすための4か条

## このページについて
SIの新人さん向けに要件定義など上流工程を過ごす上での考え方をまとめた資料になります。

## １．要件定義のスタートラインとゴールを意識しよう
あるITシステムの企画が始まりたての頃は、お客さんが抱える真の課題やそれに刺さるソリューションはぼやけていることが多いです。まずこのスタートラインを意識しましょう。
SIerさんは、お客さんと一緒に問題設定と仮説設定および評価まで導くことが要件定義のゴールとなります。

<blockquote class="twitter-tweet"><p lang="ja" dir="ltr">要求というのはたいてい混沌としており、スライムのようなものだ。デザインはそこに有理なフレームを与え、新たな要求の形 = 仕事をつくる。混沌とした要求をそのまま反映しただけのデザインは、混沌とした仕事を生むだけ、つまりデザインしていないのと同じである。 <a href="https://t.co/F1Q1W3NS5z">pic.twitter.com/F1Q1W3NS5z</a></p>&mdash; Manabu Ueno (@manabuueno) <a href="https://twitter.com/manabuueno/status/1326539418543423488?ref_src=twsrc%5Etfw">November 11, 2020</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

<blockquote class="twitter-tweet"><p lang="ja" dir="ltr">そもそも問題がわかっていない、ソリューションが適切かどうかわかっていないうちに、大量のお金と時間突っ込んで開発したらヤバいよねと（もちろん企業の体力によるところはある）。 <a href="https://t.co/wbv7LOs7UO">pic.twitter.com/wbv7LOs7UO</a></p>&mdash; Ryutaro YOSHIBA (@ryuzee) <a href="https://twitter.com/ryuzee/status/1377077214575960065?ref_src=twsrc%5Etfw">March 31, 2021</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

## ２．問題や仮説の紐解き方

### ２．１．デザイン思考や要件定義のプロセスを活用しよう

問題や仮説の設定・評価を行うための道具として、デザイン思考プロセスや要件定義プロセス（業務フロー、非機能要件定義の作成など）を利用します。
よくこの道具の完成が目的になりがちなので気を付けましょう。

### ２．２．大局から細部、細部から大局の両面から考えよう
お客さんの抱える問題は大小様々あり、SIerさんは沢山の情報を得ることになります。
これらを大局的に観て1つのシステムコンセプトを捉えること、局所的に観て行って全体コンセプトと整合していること、この様な思考を繰り返して問題と仮説を整理していきましょう。

<blockquote class="twitter-tweet"><p lang="ja" dir="ltr">たとえば、ひとつの全体性としてコンセプトがあり、それを実現するために必要な要素がある。その際、各要素を個別に評価して採用したりしなかったりするのは愚行だ。どれを選ぶかに関係なく、ゲシュタルトを見ていない態度そのものがデザインをスポイルしてしまう。 <a href="https://t.co/V5zVGMJgpK">pic.twitter.com/V5zVGMJgpK</a></p>&mdash; Manabu Ueno (@manabuueno) <a href="https://twitter.com/manabuueno/status/1336306337739722753?ref_src=twsrc%5Etfw">December 8, 2020</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

<blockquote class="twitter-tweet"><p lang="ja" dir="ltr">デザインは How → What → Why の順序で行う。表現する行為の中から論理をリバースエンジニアリングする。我々は形を通じてしかそれが何であるかを言い当てられないから。一方それをプレゼンする時には Why → What → How の順序で行う。そうすることでデザインがそう在るべくして在るように見える。 <a href="https://t.co/e8rsactPup">pic.twitter.com/e8rsactPup</a></p>&mdash; Manabu Ueno (@manabuueno) <a href="https://twitter.com/manabuueno/status/1331639995589791744?ref_src=twsrc%5Etfw">November 25, 2020</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

## ３．設定した問題と仮説を評価しよう
ここまでの検討で出来上がった問題と仮説を評価しましょう。
有識者やユーザー、ステークホルダーとのウォークスルーなど、他者への説明を通してフィードバックを得る方法が有効です。
自分の説明は「いちごを主役としたイチゴヨーグルトパフェ」「果物を少しずつ集めたフルーツパフェ」になっているでしょうか。「すしラーメン、キウイにバナナジュースを添えて…」になっていないでしょうか。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/385780/8737a401-644c-4172-8959-dac7e6dbeaec.png)![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/385780/9e43a2e3-8a0a-7f5f-c970-92605f873a48.png)
		
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/385780/9d49a5e2-85b2-299d-1c70-ddfca26e9e37.png)

## ４．まとめ：価値にフォーカスしよう
昨今のシステム開発では、この様にお客さんの価値にフォーカスすることがより重要視されています。
価値に根差した進め方を心掛けること、それが変わっていないか定期的に検査すること、問題が判った段階で次の手が打てること。こんなことを考えながら日々の業務を進めて貰えれば、もう立派なSIerさんだと思います！

<blockquote class="twitter-tweet"><p lang="ja" dir="ltr">数ヶ月前に私が社内向けにプレゼンした中に「ゴミはいくら納期と予算が守られていてもゴミ」という文があって、その時社内はザワついた。<br><br>構想段階でも作り始めてからでも、いつそれがゴミだと気付けるかがポイントなのに未だに全てのものに大きな価値があると信じる勢力が強いのはどうにかしたい。 <a href="https://t.co/4Oo1DWZaZo">https://t.co/4Oo1DWZaZo</a></p>&mdash; Aki (@AkiDebukatsu) <a href="https://twitter.com/AkiDebukatsu/status/1387314737629720578?ref_src=twsrc%5Etfw">April 28, 2021</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

<blockquote class="twitter-tweet"><p lang="ja" dir="ltr">OutputよりOutcomeなので、生産性という言葉は注意が必要だと思う今日このごろです <a href="https://t.co/pFBfXHLiDK">pic.twitter.com/pFBfXHLiDK</a></p>&mdash; Ryutaro YOSHIBA (@ryuzee) <a href="https://twitter.com/ryuzee/status/1392999509290983426?ref_src=twsrc%5Etfw">May 14, 2021</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>