こんにちは、なかみーです。
新人ディレクター向けシリーズ、第5弾です。
Web制作における契約書の種類とその範囲 Web制作における契約成立の流れと注意点 Web制作における財務について(請求・入金・源泉徴収) Web制作における試験(デバッグ・テスト)について
今回は、クライアントとの意識のすりあわせの中で重要な要件定義のポイントについて書いていきたいと思います。
そもそも要件定義とは?
現場でよくある「要件定義」。言葉は立派に見えますが、そもそもどういうことなのでしょうか。改めて調べてみました。
要件定義とは、システムやソフトウェアの開発において、実装すべき機能や満たすべき性能などのを明確にしていく作業のこと。いわゆる上流工程の一部で、実際の開発・実装作業を始める前に行う作業の一つである。
要件定義では、利用者がそのシステムなどで何がしたいのかを元に、それを実現するために実装しなければならない機能や、達成しなければならない性能などを開発者が検討して明確にしていく。まとめられた成果は「要件定義書」として文書化されることが多い。引用元:要件定義とは – IT用語辞典
すこしわかりにくいですね。
例で見てみましょう。
- 例
-
ディレクター:どんなサービスを作りたいのですか?
クライアント:住宅が少しでも早く探せるサービスですね。
ディレクター:ほうほう、少しでも早くと言うと?
クライアント:チャット機能とかあって相談できたら便利じゃないですか?
ディレクター:確かにそうですね。チャット使うなら会員機能も必要ですか?
クライアント:そうですね、そこは必須ですね。
とこんなやり取りをしながら、どんなシステム・サービスにしていくか、クライアントの要求を定義していく工程のことです。しかし、これだけでは単なる御用聞きとなってしまいがち。それでは良いものは出来上がりません。
僕らはプロとして、クライアントが「なぜその機能をほしがっているのか」「なぜ必要なのか」を意味付けしていく必要があります。
「とりあえず作って、使うか使わないかはユーザが選択すればいい」と、機能がてんこ盛りであるほど喜ばれる傾向にあると思いがちですが、実は逆で、必要としない機能があることは、ユーザにとってストレスになってしまう可能性があります。
要件の定義次第でシステム・サービスの良し悪しが決まるので、今回はディレクターとしてそれらをうまく導いていくためのポイントを紹介します。
要件定義で心がける5つのポイント
1. その機能はなにを解決するためのものなのか
無駄な機能というものはありません。そんな機能があれば、それは機能と呼ばれません。つまり、Webサービスやシステムというのはなにかを解決するために開発されているんです。
1つ1つの機能に課題解決の役割が与えられており、その集合体がWebサービスです。
機能をつけること自体にフォーカスして話が進みがちですが、「その機能はどんな問題点や課題を解決するための機能なのか」を1つ1つ明確にしていきましょう。こうすることで、意図したサービスを構築できるようになります。
2. 優先度の定義
でも日々色々なサービスがリリースされていくので、のんびり開発している暇はありません。スケジュールにゆとりがない中、開発していくのが世の常だと思います。
そのため、開発する機能の優先度をつけることが重要なポイントとなります。
全部作りきれればいいですが、スケジュールから延びてしまうことも少なくないかと思います。
優先度の付け方はいくつかありますが、下記がオススメです。
- その機能がないと、サービスとして成立しないもの
- 競合サービスが既に実装しているもの
- 運用でカバーできないもの、明らかに非効率なもの
- 営業的な側面、資金調達の側面から、ないと始まらないもの
- 実装することで、劇的に改善が見込めるもの
これらは優先度として高い代表的な項目だと思います。そのときどきで優先度の切り口を洗い出して分類しましょう。
LIGはWebサイト制作を支援しています。ご興味のある方は事業ぺージをぜひご覧ください。