機能要件と非機能要件 設計機能(その5)

更新日

投稿日

【設計機能 連載目次】

 前回のその4に続いて解説します。
 
 機能要件および非機能要件は、主にソフトウェア開発、システム開発で使用されている専門用語です。システムのインフラを支える、サーバ設計や、ネットワーク設計等に使われています。それらの関係を端的に表現すると図1のようになります。
 
機能要件
図1. 機能要件と非機能要件
 

1. 機能要件とは

 
 システム開発では「要件定義」➡「設計」➡「製造」➡「検査」のような工程で制作が進行します。その最初の工程が「要件定義」になります。この要件定義では、製作するシステムに対し、主目的となる実装すべき機能や満たすべき性能などを明らかにしていきます。要件定義の中で特に実装すべき機能に関する要件のことを「機能要件」と呼びます。機能要件は、クライアントが実装してほしいと望んでいる事項になります。そのため直接のヒアリングでリストアップします。例えば「現行システムで利用している機能を盛り込んで欲しい。」、「・・をできるようにして欲しい。」等のような内容になります。達成しなければならない基本となる部分が機能要件なのです。
 

2. 非機能要件とは

 
 要件定義のうち、機能要件に当てはまるもの以外を「非機能要件」と呼びます。非機能要件はクライアントの満足度に直結します。非機能要件とは、主目的となる機能要件以外の機能であり、機能面以外の要件全般を指します。例えば、ユーザビリティ、性能、拡張性、セキュリティなどの機能を示し、製品にとって不可欠な質の部分です。非機能要件はクライアントから確実な要望があるわけではなく、ヒアリングした内容をベースに、開発側が考える要件と言えます。考えられるすべての非機能要件を盛り込むと、予算と合わなくなってしまうため、どこまで含めるかを判断しなければならない点が課題と言えるでしょう。
 

3. 非機能要件がなぜ重要なのか?

 
 非機能要件は、機能要件を満たした上で付加される要件です。システム開発において、機能要件がメイン機能だとすると、非機能要件はオプションのような機能となります。非機能要件を満たせば満たすほど、クライアントの満足度は高まります。システム拡張、数年後のシステムの置き換え、新たなシステムの発注や運用等、クライアントとの継続的な付き合いを求められます。そのため、非機能要件を満たしてクライアントの満足度を高めることが非常に重要な作業になるわけです。
 

4. 非機能要件の具体的項目

 
 一般的には、非機能要件は以下の6つの大項目で要求グレードを定義されています。
 
(1)可用性:いつでも使えるのか?どれ...

【設計機能 連載目次】

 前回のその4に続いて解説します。
 
 機能要件および非機能要件は、主にソフトウェア開発、システム開発で使用されている専門用語です。システムのインフラを支える、サーバ設計や、ネットワーク設計等に使われています。それらの関係を端的に表現すると図1のようになります。
 
機能要件
図1. 機能要件と非機能要件
 

1. 機能要件とは

 
 システム開発では「要件定義」➡「設計」➡「製造」➡「検査」のような工程で制作が進行します。その最初の工程が「要件定義」になります。この要件定義では、製作するシステムに対し、主目的となる実装すべき機能や満たすべき性能などを明らかにしていきます。要件定義の中で特に実装すべき機能に関する要件のことを「機能要件」と呼びます。機能要件は、クライアントが実装してほしいと望んでいる事項になります。そのため直接のヒアリングでリストアップします。例えば「現行システムで利用している機能を盛り込んで欲しい。」、「・・をできるようにして欲しい。」等のような内容になります。達成しなければならない基本となる部分が機能要件なのです。
 

2. 非機能要件とは

 
 要件定義のうち、機能要件に当てはまるもの以外を「非機能要件」と呼びます。非機能要件はクライアントの満足度に直結します。非機能要件とは、主目的となる機能要件以外の機能であり、機能面以外の要件全般を指します。例えば、ユーザビリティ、性能、拡張性、セキュリティなどの機能を示し、製品にとって不可欠な質の部分です。非機能要件はクライアントから確実な要望があるわけではなく、ヒアリングした内容をベースに、開発側が考える要件と言えます。考えられるすべての非機能要件を盛り込むと、予算と合わなくなってしまうため、どこまで含めるかを判断しなければならない点が課題と言えるでしょう。
 

3. 非機能要件がなぜ重要なのか?

 
 非機能要件は、機能要件を満たした上で付加される要件です。システム開発において、機能要件がメイン機能だとすると、非機能要件はオプションのような機能となります。非機能要件を満たせば満たすほど、クライアントの満足度は高まります。システム拡張、数年後のシステムの置き換え、新たなシステムの発注や運用等、クライアントとの継続的な付き合いを求められます。そのため、非機能要件を満たしてクライアントの満足度を高めることが非常に重要な作業になるわけです。
 

4. 非機能要件の具体的項目

 
 一般的には、非機能要件は以下の6つの大項目で要求グレードを定義されています。
 
(1)可用性:いつでも使えるのか?どれだけ安定感があるのか?
(2)性能/拡張性:どれだけ快適に使えるのか?利用者が増えても大丈夫か?
(3)運用/保守性:アフターサービスはきっちりとされているか?
(4)移行性:引っ越しや、乗り換えは簡単にできるのか?
(5)セキュリティ:ウイルス対策など、セキュリティ対策がしっかりされているか?
(6)システム環境/エコロジー:そのモノを置く設置環境は適切か?また環境保護に役立っているか?
 
  

   続きを読むには・・・


この記事の著者

粕谷 茂

「感動製品=TRIZ*潜在ニーズ*想い」実現のため差別化技術、自律人財を創出。 特に神奈川県中小企業には、企業の未病改善(KIP)活用で4回無料コンサルを実施中。

「感動製品=TRIZ*潜在ニーズ*想い」実現のため差別化技術、自律人財を創出。 特に神奈川県中小企業には、企業の未病改善(KIP)活用で4回無料コンサルを...


「技術マネジメント総合」の他のキーワード解説記事

もっと見る
仕事のプロセスを改善ストーリー(SRストーリー)で可視化

 仕事のプロセス(やり方)は、各個人や企業によって多種多様です。そのためチームや組織で課題を共有化するためには、工夫が必要です。たとえば、チームや組織内で...

 仕事のプロセス(やり方)は、各個人や企業によって多種多様です。そのためチームや組織で課題を共有化するためには、工夫が必要です。たとえば、チームや組織内で...


後で使える結果の残し方 新規事業・新商品を生み出す技術戦略(その36)

        開発ステップのように試験・実験が標準化されていない場合、これからたくさん変更が発生するからと...

        開発ステップのように試験・実験が標準化されていない場合、これからたくさん変更が発生するからと...


製造業の生産性 開発効率を上げるには(その1)

  【開発効率向上の重要性 連載目次】 製造業の生産性 開発効率向上の重要性 開発効率向上活動の考え方 開発効率向上、活動計画 1...

  【開発効率向上の重要性 連載目次】 製造業の生産性 開発効率向上の重要性 開発効率向上活動の考え方 開発効率向上、活動計画 1...


「技術マネジメント総合」の活用事例

もっと見る
QFD-TRIZを活用した革新的製品開発への挑戦

♦ 限られた人員、予算で効率的にヒット製品を 1. QFD-TRIZ導入の背景  今回は創業当初から電磁バルブなどの「機器事業」と、198...

♦ 限られた人員、予算で効率的にヒット製品を 1. QFD-TRIZ導入の背景  今回は創業当初から電磁バルブなどの「機器事業」と、198...


トレーサビリティの保証 プロジェクト管理の仕組み (その44)

 前回のその43に続いて解説します。    ハードウェア設計も、ソフトウェア設計ほど明確ではありませんが、同じように開発工程ごとに関連する設...

 前回のその43に続いて解説します。    ハードウェア設計も、ソフトウェア設計ほど明確ではありませんが、同じように開発工程ごとに関連する設...


プロジェクトの問題を見極める1 プロジェクト管理の仕組み (その23)

 進捗管理のための基本メトリクスセットのひとつである開発工数メトリクスについて解説していますが、前回は、プロジェクト構造(WBS)軸とアクティビティ軸のそ...

 進捗管理のための基本メトリクスセットのひとつである開発工数メトリクスについて解説していますが、前回は、プロジェクト構造(WBS)軸とアクティビティ軸のそ...