PR

8種類あるソフトウエアの「品質」

 ソフトウエアの品質とは「システムやサービスを使う人の要求をどれだけ満足させるか」ということだ。しかし、前述したようにシステムの種類や関係者の立場によって要求や考え方は様々。要求を漠然と並べるだけだと、考慮不足や矛盾がある要求一覧になってしまう。

 要求の整理に役立つのが、ソフトウエア品質の評価に関する国際規格「ISO/IEC 25010:2011」である。この規格では、ソフトウエアの品質特性を次の8つに分類している。

(1)機能適合性
実装された機能がニーズを満たす度合い
(2)性能効率性
システムの実行時の性能や資源効率の度合い
(3)互換性
他製品やシステムと機能や情報を共有、変換できる度合い
(4)使用性
効果的、効率的に利用できる度合い
(5)信頼性
必要時に実行することができる度合い
(6)セキュリティ
不正に悪用されることがなく、情報やデータが保護される度合い
(7)保守性
効果的、効率的に保守や修正ができる度合い
(8)移植性
効果的、効率的に他のハードウェアや実行環境に移植できる度合い
[ISO/IEC 25010:2011] JIS X 25010:2013,p7 図4 より引用

 この分類と定義だけでは、表現の抽象度が高く理解が難しい。そこで、モバイル端末から利用できるECサイトを例にイメージを説明しよう。なお、以下は読者にイメージを持ってもらうためで、ECサイトに求められる品質を網羅しているわけではない点は注意してほしい。

 (1)機能適合性とは、利用者が買い物をするために必要な機能が過不足なく備わっていることだ。(2)性能効率性は、ユーザーが購入ボタンや決済ボタンを押下したときに、適切なタイミングで応答があること。商品検索の応答時間も同様だ。(3)互換性は、様々な機種のモバイル端末やPCからアクセスしても同じように使用できることを指す。(4)使用性は、年齢や性別、システムへの慣れなどに関係なく、商品検索や購入をスムーズにできることだ。

 (5)信頼性とは、購入合計金額の計算や決済が間違いなく行われること。システム障害が起こらないことも信頼性の重要な要素だ。(6)セキュリティは、登録してある個人情報の流出・不正利用がないこと。(7)保守性は、システムやソフトウエアに不具合が発生した際に、原因の特定と修正を速やかに行えること。(8)移植性は、新しいモバイル端末の機種やOSに速やかに対応できることを指す。

 曖昧としていた品質に対するイメージも、8つの品質特性を使って分類して整理すると分かりやすくなるはずだ。開発するシステムには、必ず目指すべき品質がある。これを曖昧に表現するのではなく、8つの品質特性で検討するといい。