U「良いソフトウェアとは何か」を客観的に定義しようとすると、意外に難しいものです。ISO/IEC 25010(SQuaRE)はその答えを8つの品質特性で示しています。機能性だけでなく、使いやすさ・保守しやすさ・セキュリティまで含めた品質の全体像を整理してみました。
この記事でわかること
- SQuaRE(ISO/IEC 25010)の8つの品質特性の内容
- 利用時の品質特性(有効性・効率性・満足性等)との違い
- 品質特性をシステム要件定義・テスト設計にどう活かすか
- ソフトウェアメトリクス(定量的品質測定)の基礎
- CMM/CMMIによるプロセス成熟度の考え方
目次
SQuaRE——ソフトウェア品質の国際標準
ISO/IEC 25010(SQuaRE)とは
SQuaRE(Systems and software Quality Requirements and Evaluation)は、ソフトウェア製品の品質を評価・要求定義するための国際標準規格。品質モデルは2層構造:
① 製品品質モデル:ソフトウェア自体の内部・外部特性(8特性)
② 利用時の品質モデル:ユーザーが実際に使う際に感じる品質(5特性)
製品品質の8特性——ソフトウェア自体の品質
| 品質特性 | 意味 | 副特性の例 |
|---|---|---|
| 機能適合性 | 要求された機能を正しく提供できるか | 機能完全性・機能正確性・機能適切性 |
| 性能効率性 | リソース(時間・メモリ)を効率よく使えるか | 時間効率性・資源効率性・キャパシティ |
| 互換性 | 他システムとデータ・機能を共有・共存できるか | 共存性・相互運用性 |
| 使用性 | ユーザーが目標を効果的・効率的・満足して達成できるか | 適切認識性・習得容易性・運用操作性・アクセシビリティ |
| 信頼性 | 必要な機能を定められた条件のもとで維持できるか | 成熟性・可用性・障害許容性・回復性 |
| セキュリティ | 情報・データの保護(機密性・完全性・可用性) | 機密性・完全性・否認防止性・責任追跡性・真正性 |
| 保守性 | 変更・修正・テスト・移植のしやすさ | モジュール性・再利用性・解析性・修正性・試験性 |
| 移植性 | 別の環境・プラットフォームに移植できるか | 適応性・設置性・置換性 |
利用時の品質モデル——ユーザー視点の品質
| 特性 | 内容 |
|---|---|
| 有効性 | ユーザーが目標を正確・完全に達成できるか |
| 効率性 | 目標達成に要するリソース(時間・労力)の適切さ |
| 満足性 | 使用中・使用後のユーザー満足度(ユーザビリティ・信頼性感) |
| リスク回避性 | 経済・健康・環境へのリスクを軽減できるか |
| コンテキスト網羅性 | 想定内・想定外の使用状況でも有効性・効率性を維持できるか |
CMMIによるプロセス成熟度
CMMI(能力成熟度モデル統合)の5段階
- レベル1(初期):プロセスが属人的・場当たり的。成功は個人の能力に依存
- レベル2(管理された):プロジェクト単位でプロセスが計画・管理されている
- レベル3(定義された):組織全体で標準プロセスが定義・活用されている
- レベル4(定量的に管理された):統計的手法でプロセスを定量管理
- レベル5(最適化):継続的改善が組織に組み込まれている
Uのメモ
学習メモ
- SQuaRE(ISO/IEC 25010):製品品質8特性+利用時品質5特性の2層構造
- 製品品質8特性:機能適合性・性能効率性・互換性・使用性・信頼性・セキュリティ・保守性・移植性
- 保守性の副特性:モジュール性・再利用性・解析性・修正性・試験性
- 利用時の品質:有効性・効率性・満足性・リスク回避性・コンテキスト網羅性
- CMMI:1(初期)→2(管理)→3(定義)→4(定量管理)→5(最適化)の5段階成熟度モデル









