ソフトウェア要件定義
ソフトウェア開発における工程だよ
「何をやりたいの?」を まとめるよ
作る人たちと お客さまで話し合って まとめるよ
簡単に書くよ
ソフトウェア要件定義(読:ソフトウェアヨウケンテイギ 英:software requirements definition)とは
(ソフトウェア開発における)要件定義
(お客さまの要望を まとめる工程)のこと。
もう少し具体的に書くと
ソフトウェア開発における工程のひとつ
であり
お客さまの「こんなものが欲しいんだよね~」を まとめる工程のこと
です。
詳しく書くよ
順番に見ていきましょう。
まずは予備知識として「要件定義」について説明します。
「そんなの説明されなくても知ってるよ!」な人は適当に読み飛ばしてください。
要件定義は「お客さまの要望を まとめる工程」です。
ソフトウェア開発における最初の工程です。
ソフトウェア開発において、スタートは お客さまの「何がしたいか」です。
自社サービスの場合は、社長とか発案者が お客さまの立ち位置になります。
ゴールは「できあがったソフトウェア」です。
ソフトウェア開発というのは、スタートの「何がしたいか」をゴールの「できあがったソフトウェア」に変換する作業です。
とはいえ、一足飛びにゴールにたどり着くことは できません。
一歩一歩進んでいく必要があります。
最初にやるべき作業は、お客さまの「何がしたいか」を まとめることです。
お客さまだって人間です。
自分の言いたいことを きちんと伝えられるとは限りません。
あるいは、お客さま自身が自覚していない「やりたいこと」もあるはずです。
ですから、お客さまの実現したいことを詳しく聞き取ります。
そして「あなたが やりたいのは、こんなことだよね?」を お客さまと一緒にまとめます。
これができれば、後から「本当は こんなことを やりたかったのに!」と文句を言われる可能性も減るでしょう。
この
やりたいことを まとめる工程
が要件定義です。
「どんなソフトウェアが欲しいのか?」もしくは、そもそもの話として「何をやりたいのか?」の認識を お客さまと作る人たちで合わせるために やります。
あと、ついでなので書いておくと、その後は
・基本設計
・詳細設計
(・プログラム設計)
・プログラミング
・単体試験
・結合試験
・総合試験
のような工程を経て、ソフトウェアは完成します。
以上を踏まえて
ソフトウェア開発における要件定義
が「ソフトウェア要件定義」です。
要件定義の説明で「ソフトウェア開発における最初の工程」と言いましたが、ちょっとウソです。
要件を定義するのが要件定義なので、ソフトウェア開発以外の話(商品開発とか)で出てきても、おかしく ありません。
「要件定義」という表現が出てくるのはソフトウェア開発の話が多いと思いますけどね。
絶対に そうとは限らないわけです。
そこで「これはソフトウェアの話の要件定義ですよ!」と強調するために、頭に「ソフトウェア」と付けて「ソフトウェア要件定義」と表現しているのです……多分。
よって、ソフトウェア開発の話であれば「要件定義」と「ソフトウェア要件定義」は同じ意味だと思って かまいません。
「ソフトウェア開発における要件定義の中でも特にソフトウェア部分の要件定義」のような限定する意図はないはずです。
一言でまとめるよ
まぁ「ソフトウェア要件定義」って単語が出てきたら「(ソフトウェア開発における)お客さまの要望を まとめる工程なんだな~」と お考えください。
おまけ
■訳してみるよ
「soft(ソフト)」の意味は「柔らかい」とか「軟らかい」とかです。
「ware(ウェア)」という接尾辞が付くと「製品」とか「商品」的な意味になります。
「要件定義」は日本語ですね。
何となく くっつけると
柔らかい製品の要件定義
となります。
■検索してみる?






