システムの開発やWeb制作の現場にいると、「要件定義」や「要求定義」という言葉を耳にする機会もあるでしょう。しかし、要件定義、要求定義について実は理解していない、という方も少なくありません。この記事では、要件定義、要求定義とは何かについて説明していきます。初心者の方にも分かりやすい内容になっています。要件定義、要求定義について知りたい方は、是非チェックしてください。
要件定義とは?要求定義との違いは?
要件定義とは、発注したユーザーの希望、要望を明らかにし、実装すべき機能や性能を明文化することです。簡単にいえば「どういうものを作るか」を文章化したものといえるでしょう。要件定義を行うのは、システム開発、Web制作を受注するシステムエンジニアの仕事です。
要求定義は、ユーザーの希望、要望を聞き取り、システムエンジニアが文書化したものです。要件定義と似ていますが、要求定義は要件定義のひとつ前段階の作業となります。
要求定義を元に要件定義をしていくので、要求定義の段階でユーザーの希望を正しく把握できていないと、大きなトラブルや工程の遅延につながる可能性がありますので、慎重に行いましょう。
要件定義書で定義すべきもの
一般的に、要件定義は要件定義書という文章にまとめていきます。文書化し、エビデンスとして残しておかないと後々に「言った、言わない」のトラブルになる可能性があるからです。要件定義書を元に、システムやWebの設計を行いますので、要件定義の段階で関係者やユーザー、開発部門と合意をしておきます。
受託側は、ユーザーの要求に対してできないことはできないとハッキリさせておくことが大切です。案件を受注したばかりに無理なオーダーを聞き入れてトラブルになったケースは決して少なくありません。
要件定義書で定義しておく内容は主に以下の通りです。
機能要件
機能要件とは、「必ず実装すべき機能」のことです。機能要件はユーザーが「これができなくては困る」という直接的な希望と直結しやすいので、比較的カンタンに決まると思います。機能要件はシステム化の要となる部分です。機能要件が実装できなければ納品できません。機能要件は「出来て当たり前」の最低限のラインなので、機能要件を明確にすることでプロジェクト全体のスケジュールが大体決まります。
非機能要件
非機能要件は、実装される要件のうち機能以外の部分のことです。保守性やセキュリティ、可用性といった項目が非機能要件です。性能面ともいえます。機能要件はユーザーが求めるものですから実装できても満足度はそれほど得られません。むしろ利用していくうちに不満な点が出てくるかもしれません。例えば、ユーザーの要望を満たしたシステムを開発しても、使っていて画面表示が遅かったりスマホやタブレットとの連動ができなかったりすると、徐々にユーザーの満足度は下がってしまいます。
しかし、非機能要件が充実していればユーザーの満足度のアップが期待できます。サクサク動作する、便利な機能がある、サポートが充実しているということが実現できればユーザーは長く利用してくれるでしょうし、新たな発注につながる可能性もあります。非機能要件は、ユーザーの隠れた要望であり、システムを支える質の部分となります。
サイト要件
サイト要件はWebサイトの要件定義です。Webサイトは企業のスタッフが使うのではなく、ユーザーにアクセスしてもらうのが目的です。そのためにターゲット層や利用端末、ブラウザ、OS、SEO対策などをユーザーからヒアリングして明確にしていく必要があります。
インフラ要件
インフラ要件は、サーバやDB、SSL証明書、ネットワークなど、システムの環境を支える部分を指します。高性能のものはそれだけコストがかかりますので、ユーザーの要望を踏まえてメリット・デメリットを伝えながら決定していきます。
Comments are closed.