非機能要件(ひきのうようけん)とは、システムが「何をするか」ではなく「どのように動くべきか」を定めた要求のことです。処理の速さ、止まりにくさ、守りの固さ、直しやすさといった、性能や品質に関わる条件がこれにあたります。
現実世界に例えると、家づくりにおける間取りが機能要件、耐震性や断熱性、手入れのしやすさが非機能要件にあたります。部屋の数がそろっていても、寒くて地震に弱い家では住み続けられません。
非機能要件 図解
機能要件との違い
| 項目 | 機能要件 | 非機能要件 |
|---|---|---|
| 問い | 何ができるか | どのように動くか |
| 例 | 申込書を登録できる | 3秒以内に表示される |
| 気づきやすさ | 目に見えて分かる | 問題が起きて初めて分かる |
どんな種類があるか
非機能要件は幅広く、一般には可用性、性能・拡張性、運用・保守性、移行性、セキュリティ、システム環境といった観点に整理されます。止まらないこと、速いこと、直しやすいこと、安全であること。どれも欠かせない条件です。
後回しにされやすい
打ち合わせでは、どうしても画面や帳票といった目に見える話が中心になります。非機能要件は目に見えないため話題に上りにくく、決めないまま開発が進んでしまうことが少なくありません。そして問題が表面化するのは、たいてい完成間際か稼働後です。
あいまいな言葉が危ない
「なるべく速く」「できるだけ止まらないように」といった表現は、人によって思い浮かべる水準が違います。作る側は達成できたつもりでも、使う側は不満を抱く。この食い違いが、後になって大きなもめごとに発展します。
数字で決めておく
だからこそ、非機能要件は「検索結果を3秒以内に表示する」「年間の停止時間を合計8時間以内に収める」といった形で、測れる数字にしておくことが大切です。数字にしておけば、達成できたかどうかを誰でも同じ基準で判断できます。
費用との兼ね合い
止まりにくさや速さを高めようとすれば、その分だけ設備や手間の費用がかさみます。どこまでの水準が本当に必要なのかを、費用と見比べながら決めていく作業でもあります。求めるだけ求めれば良いというものではありません。
使う側からは言い出しにくい
非機能要件は、専門的な知識がなければ言葉にしづらいものです。使う側は「当然そうなっているだろう」と思い込み、作る側は「言われていないから対象外」と考える。この行き違いが起こりやすいため、作る側から具体的に問いかけていく姿勢が求められます。
実際に問題になりやすい場面
月末に処理が集中して画面が開かなくなる、データが増えるにつれて検索が遅くなる、担当者しか復旧の手順を知らない。こうした困りごとの多くは、機能そのものではなく非機能要件を詰めきれなかったことに原因があります。
あとから直すのは高くつく
処理の速さや止まりにくさは、システムの土台となる設計に深く関わります。完成してから求める水準を引き上げようとすると、作り直しに近い規模の改修が必要になることも珍しくありません。早い段階で決めておくことが、結果として費用を抑えます。



コメント