機能要件と非機能要件 設計機能(その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回無料コンサルを...


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

もっと見る
整理の為に考える要素、その中の物理量の選択 普通の組織をイノベーティブにする処方箋 (その70)

 前回のその69に続いて解説します。  現在、収集した知識・経験をイノベーションに向けて整理するフレームワークを解説していますが、今回も前回に引き続...

 前回のその69に続いて解説します。  現在、収集した知識・経験をイノベーションに向けて整理するフレームワークを解説していますが、今回も前回に引き続...


設計品質作り込み:設計のしくみとは

 一般的にしくみとは、①組織 ②制度 ③プロセス ④コンピュータシステムなどを指します。しくみ化とは、処理をコンピューター化する意味だけではなく、決められ...

 一般的にしくみとは、①組織 ②制度 ③プロセス ④コンピュータシステムなどを指します。しくみ化とは、処理をコンピューター化する意味だけではなく、決められ...


類似-3 普通の組織をイノベーティブにする処方箋(その102)

   現在、KETICモデルの中の「知識・経験を関係性で整理する」について解説しています。今回は、引き続き「類似」について考えてみたいと思...

   現在、KETICモデルの中の「知識・経験を関係性で整理する」について解説しています。今回は、引き続き「類似」について考えてみたいと思...


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

もっと見る
進捗の可視化は必要最小限にするのがポイント(その2)

  3. アクティビティとプロダクトの2軸管理    基本メトリクスセットの4指標(基本メトリクスと呼びます)について計画と実績...

  3. アクティビティとプロダクトの2軸管理    基本メトリクスセットの4指標(基本メトリクスと呼びます)について計画と実績...


製品開発部へのカンバン導入記(その2)

        前回からの続きです。前回は製品開発部がカンバンを導入するに至った簡単な経緯と、最初の問題点(...

        前回からの続きです。前回は製品開発部がカンバンを導入するに至った簡単な経緯と、最初の問題点(...


ソフト開発計画の作成方法 プロジェクト管理の仕組み (その5)

 前回のその4:プロジェクトの進捗管理に続いて解説します。前回は CMMI を使い、要件管理、計画作成、進捗管理のポイントを紹介しました。多くの開発組織で...

 前回のその4:プロジェクトの進捗管理に続いて解説します。前回は CMMI を使い、要件管理、計画作成、進捗管理のポイントを紹介しました。多くの開発組織で...