🎸
非機能要件とISO/IEC 25010 SQueRE 品質特性 DevOpsとマイクロサービス時代のQA キーワード解説
非機能要件と品質特性
非機能要件(Non-functional Requirements, NFR)は、システムの機能そのものではなく、システムがどのように機能すべきかに関する要件を指します。ISO/IEC 25010における品質特性のうち、機能適合性(Functional Suitability)を除いたものは、非機能要件として分類されると考えることができます。
ISO/IEC 25010の品質特性は以下の8つです:
- 機能適合性(Functional Suitability)
- 性能効率性(Performance Efficiency)
- 互換性(Compatibility)
- 使用性(Usability)
- 信頼性(Reliability)
- セキュリティ(Security)
- 保守性(Maintainability)
- 移植性(Portability)
これらのうち、機能適合性を除いた7つの特性が非機能要件に該当します。以下、それぞれの特性について詳しく説明します。
1. 性能効率性(Performance Efficiency)
非機能要件の観点
- システムがどれだけ効率的にリソースを使用して、迅速に応答するかを定義します。例としては、応答時間、スループット、リソース利用率などが含まれます。
2. 互換性(Compatibility)
非機能要件の観点
- システムが他のシステムやコンポーネントとどれだけうまく連携できるかを定義します。共存性(Co-existence)や相互運用性(Interoperability)が含まれます。
3. 使用性(Usability)
非機能要件の観点
- ユーザーがシステムをどれだけ使いやすく、直感的に操作できるかを定義します。例としては、ユーザーインターフェースの一貫性、学習のしやすさ、操作の容易さなどが含まれます。
4. 信頼性(Reliability)
非機能要件の観点
- システムがどれだけ安定して動作し続けるかを定義します。成熟性(Maturity)、可用性(Availability)、故障許容性(Fault Tolerance)、回復性(Recoverability)が含まれます。
5. セキュリティ(Security)
非機能要件の観点
- システムが不正なアクセスやデータの漏洩からどれだけ保護されるかを定義します。機密性(Confidentiality)、完全性(Integrity)、可用性(Availability)、認証(Authentication)、監査証跡(Accountability)が含まれます。
6. 保守性(Maintainability)
非機能要件の観点
- システムがどれだけ容易に修正、更新、改善できるかを定義します。モジュール性(Modularity)、再利用性(Reusability)、アナライザビリティ(Analyzability)、変更性(Modifiability)、テスト性(Testability)が含まれます。
7. 移植性(Portability)
非機能要件の観点
- システムがどれだけ容易に異なる環境やプラットフォームに移行できるかを定義します。適応性(Adaptability)、設置容易性(Installability)、置換性(Replaceability)が含まれます。
結論
機能適合性を除いたISO/IEC 25010の品質特性は、非機能要件のカテゴリに該当します。これらの特性は、システムが特定の環境や使用条件でどのように動作すべきかに焦点を当てており、全体としてシステムの品質を確保するために重要な要素です。非機能要件を適切に定義し、管理することは、ユーザーエクスペリエンスやシステムの信頼性、保守性、セキュリティを向上させるために不可欠です。
Discussion