
第42回「ソフトウェア品質の品質測定2」
独立行政法人情報処理推進機構(略称IPA)がつながる世界のソフトウェア品質モデルとして国際標準規格「SQuaRE」を共通言語とすることは何度も書きました。このシリーズの中でISO/IEC 2502nが品質測定の規格で2016年にISO/IEC 25022ならびに25023が、利用時の品質およびソフトウェア製品の品質測定量として定義されました。
第36回で少し書きましたが、今回は具体的な取り組みについてお話します。
ソフトウェア製品の分類と測定方法の確立
国内では早稲田大学グローバルソフトウェアエンジニアリング研究所の鷲崎研究室がこのSQuaREシリーズをベースとして調査研究を行いました。テーマは「ソフトウェア製品群の測定評価と分析による製品品質の実態定量化および総合的品質評価枠組みの確立」です。なんとも長くてわかりにくい表現ですが、ソフトウェアにはいろいろな分野があります。
会計のシステム、建設用の計算ソフト、Web作成の支援ツール等々、利用目的に応じた多くの製品があります。これを"群"として分類します。できれば群ごとに製品が複数あれば良いのですが、協力できる製品が少なく苦労したようです。研究は群ごとに外部品質、内部品質の測定方法の確立から入りました。測定の単位は、これまでにお話した品質特性もしくは副特性となります。
例えば、ソフトウェア製品を一定の条件で運用して不具合の件数をカウントします。計算式は、運用していた総時間もしくは入力件数/不具合時間または件数となります。これを平均故障時間、もしくは平均不具合件数とします。故障や不具合ですから、品質特性としては信頼性や使用性が該当し、副特性としては成熟性となります。
品質測定の手法解説
このように一定の条件を決めて測定し、その測定値を品質特性に紐付けて複数の観点で比較することで品質を判断します。利用時の品質の場合、複数の人に同条件で操作していただき停止した機能や時間を測定・分析することも可能です。
一方では、実際にソフトウェアを動作しないで検証測定する手法があります。仕様書と照合や項目チェックを行い整合性の取れていない項目をカウントします。または、画面遷移のレビューを行い設計通り動くかをチェックします。テスト結果がある場合は、設計時の目標値と比較して達成率をカウントすることも可能です。これにより当初の目的である、「意図とした性能が達成できているか分析する」ことが可能となり、製品の妥当性確認ができると考えられます。

利用時における品質測定の手法
これまで利用時の品質を測定することは難しいと考えられていました。しかし、2016年の規格で代表的な測定方法が紹介されました。作業目標を設定し、正しく満たして完了できた割合を測定する方法です。誤操作を起こす頻度・正しく作業を完了できる時間が、学習効果で短縮されていく作業効率性の時間変化を測定する。利用者が作業を行うためにシステムを操作している時間や、運用期間中に設定した項目の一定時間を測定します。これらを品質特性と組み合わせて分析します。
この手法はソフトウェアに限らず家電や工場の機械の操作性等々、何でも活用が可能と考えられます。作業時間や故障時間を測定することで、利用時の品質を測定できます。「使いづらいなあ、この製品」こんな声が聞こえたら、感覚だけでなく数値化して示せる手法があることだけ覚えてください。


