要件定義とは(全体像)
要件定義は、システム開発の最初のステップ。「どんなシステムを作るのか」を、関係者で話し合ってはっきり決める工程だ。ここがあいまいなまま先に進むと、「思っていたのと違う」となり、あとで大きなやり直しになる。
決めることは、大きく3種類の要件に分けられる。
- 業務要件 … その業務をどう進めるか(仕事のやり方・ルール)。
- 機能要件 … システムが何をするか(できること。たとえば「ユーザー登録ができる」)。
- 非機能要件 … 機能以外の条件(たとえば「速く動く」「止まりにくい」「安全である」など)。
この3つ、とくに非機能要件を忘れないことが大切。「機能だけ決めればよい」と思い込みやすいので、ここがよく問われる。
詳しく:3種類の要件と1:10:100
ここが心臓部。3種類の要件を表で押さえよう。
3種類の要件
| 種類 | 何を決めるか | 例 |
|---|---|---|
| 業務要件 | 仕事の進め方・ルール | 注文を受けてから発送するまでの流れ |
| 機能要件 | システムができること | ユーザー登録、検索、購入の機能 |
| 非機能要件 | 機能以外の条件 | 速さ(性能)、止まりにくさ、安全性、直しやすさ |
※非機能要件でいう「止まりにくさ」は可用性(いつも使える度合い)、「直しやすさ」は保守性とも呼ばれる。機能ではないが、満足度を大きく左右する大事な条件だ。
そしてもう1つ、1:10:100の法則。これは、間違いを直すコストは、後の工程になるほど大きくなるという考え方だ。
直すコストの目安(1:10:100)
| いつ直すか | コストの目安 |
|---|---|
| 要件定義の段階 | 1 |
| 設計の段階 | 10 |
| 運用の段階 | 100 |
つまり、要件定義でしっかり決めておくほど、あとのムダなやり直しを減らせる。「後でいくらでも直せる」と考えず、最初を固めるのが大事、という点が問われる。
わかりやすく言い換えると
身近なたとえで整理しよう。
要件定義は、家を建てる前の「どんな家にするか、しっかり決める打ち合わせ」のイメージ。間取り(業務)・つけたい設備(機能)・暮らしやすさ(非機能)を決める。要するに、作る前に「何を作るか」をはっきりさせる、ということだ。
非機能要件は、「設備の有無」ではなく「住み心地」にあたる。つまり、機能そのものではないが、満足度を大きく左右する条件だ。
1:10:100は、設計図の間違いは早く直すほど安いのと同じ。つまり、建てたあとに直すと大工事になるから、最初に固めよう、ということ。
試験のツボ
🔴 一番出る:3種類の要件
①業務要件(仕事の進め方)・機能要件(システムができること)
②非機能要件(速さ・止まりにくさ・安全性など、機能以外)
🔴 次に出る:非機能要件を忘れない
①機能だけでなく、性能・可用性・安全性なども決める
②満足度を大きく左右する大事な条件
🟡 押さえると安定:1:10:100の法則
①直すコストは後の工程ほど大きくなる(要件1・設計10・運用100)
②最初にしっかり決めるほど、やり直しを減らせる
よくある間違い
①「要件定義で決めるのは、機能要件だけでよい」→ ✗ 業務要件・機能要件・非機能要件の3種類を決める。非機能要件も忘れない。
②「要件は後の工程でも、低いコストで自由に直せる」→ ✗ 後の工程ほど直すコストは大きくなる(1:10:100)。最初に固めるのが大事。
③「非機能要件とは、システムができること(機能)のことだ」→ ✗ 非機能要件は、速さ・止まりにくさ・安全性など、機能以外の条件のこと。
試験での出題パターン
実際の問題でたしかめてみよう。
オリジナル問題1(要件定義とは)
要件定義に関する次の記述のうち、最も適切なものはどれか。
- 完成したシステムの不具合を、運用しながら直していく日々の作業のことである
- 社員の出退勤の時刻を記録して、毎月の給与を計算するためのしくみである
- 開発の最初に、どんなシステムを作るかをはっきり決める工程のことである
- 取引先へ毎月の請求書を郵送する、決まった事務作業のことを指している
解答は 3 だよ。
要件定義は、開発の最初に、どんなシステムを作るかをはっきり決める工程だよ。ここがあいまいだと、あとで大きなやり直しになるんだ。
選択肢1は運用中の修正、選択肢2は勤怠と給与、選択肢4は請求書の事務で、どれも違うよ。
| 選択肢 | 判定 | 理由 |
|---|---|---|
| 1 | ✗ | 運用中の不具合修正の話 |
| 2 | ✗ | 勤怠・給与のしくみの話 |
| 3 | ✓ | 最初に何を作るか決める工程で正しい |
| 4 | ✗ | 請求書の事務の話 |
オリジナル問題2(3種類の要件)
要件定義で決める要件の種類として、最も適切なものはどれか。
- 業務要件・機能要件・非機能要件の3種類をまとめて決めるのが基本である
- 機能要件だけを決めればよく、ほかの要件は決めなくてもよいとされている
- 社員の給与の金額だけを決めればよく、機能は決めなくてよいとされる
- 要件には種類の区別がなく、すべて同じ1つの要件として扱うものである
解答は 1 だよ。
要件定義では、業務要件・機能要件・非機能要件の3種類をまとめて決めるよ。とくに非機能要件を忘れないことが大事だね。
選択肢2の「機能だけ」、選択肢3の「給与だけ」、選択肢4の「区別がない」は、いずれも誤りだよ。
| 選択肢 | 判定 | 理由 |
|---|---|---|
| 1 | ✓ | 業務・機能・非機能の3種類で正しい |
| 2 | ✗ | 機能要件だけではない |
| 3 | ✗ | 給与の金額を決める工程ではない |
| 4 | ✗ | 3種類に分かれている |
オリジナル問題3(非機能要件)
非機能要件に関する次の記述のうち、最も適切なものはどれか。
- 非機能要件とは、システムができること(機能)そのものを指す言葉である
- 非機能要件とは、速さや止まりにくさ、安全性など機能以外の条件である
- 非機能要件とは、社員の給与を計算する方法を決めることを指している
- 非機能要件とは、取引先へ請求書を郵送する事務作業のことを指している
解答は 2 だよ。
非機能要件は、速さや止まりにくさ、安全性など、機能以外の条件だよ。機能そのものではないけれど、満足度を大きく左右するんだ。
選択肢1は「機能そのもの」が誤り、選択肢3の給与、選択肢4の請求書の事務は、いずれも誤りだよ。
| 選択肢 | 判定 | 理由 |
|---|---|---|
| 1 | ✗ | 機能そのものは機能要件 |
| 2 | ✓ | 速さ・止まりにくさ・安全性などで正しい |
| 3 | ✗ | 給与計算の話ではない |
| 4 | ✗ | 請求書の事務ではない |
まとめ
押さえどころ
- 🔴 要件定義 = 開発の最初に、どんなシステムを作るかをはっきり決める工程。
- 🔴 3種類の要件 = 業務要件・機能要件・非機能要件(速さ・止まりにくさ・安全性など)。非機能要件を忘れない。
- 🟡 1:10:100 = 直すコストは後の工程ほど大きい(要件1・設計10・運用100)。最初に固める。
次に学ぶ
- 情報システム化計画 ── システムを作る前の計画。要件定義はその中の大事な段階。
- ウォーターフォールモデル ── 上から順に進める開発。要件定義は一番上流の工程にあたる。
執筆: SikakuQuest編集部