品質評価の仕事とは
品質評価の仕事は「製品評価」「製品テスト」などとも呼ばれており、ソフトウェアあるいはハードウェアの開発現場に欠かせない業務です。エンジニアが開発した製品が正しく動作するか、不具合が生じないかを実際に使って確認する仕事で、顧客目線で検証を重ねることで、完成度の高い製品をリリースできるようなります。
自社製品の品質検証・保証を行う
主に自社製品の品質検証と保証を行うのが、品質評価の業務です。具体的には、開発された製品のオペレーターとしてテスト運用を行い、手順書の作成と、不具合や問題点の報告などを行います。テスト運用や製品評価に必要な期間を割り出し、全体の進捗管理を担う統括者としての立場を兼任するポジションの人もいます。
改善点の提案
製品テストの結果を評価・分析し、開発側に改善点の提案を行うのも、品質評価の重要な役割です。既存の問題点を抽出し、さらに顧客の意見を交えながら開発側に提案するのに加えて、分析データをまとめたものを資料化して全社的にシェアします。単に製品の運用テストを行うだけでなく、その後の開発計画に関わる重要な提案をする役割を持っているわけです。
そもそも品質評価とは?
品質評価の仕事の概要を説明しましたが、そもそも品質評価とは何でしょうか? 端的に言えば、開発された製品の善し悪しを判断したり、問題点や不具合がないか確認したりすることであり、評価の方法として、主観的評価と客観的評価の2種類があります。
主観的評価
主観的評価は、評価者自身の考え方や価値観、そして評価対象となる製品を使って感じたことを基準に評価する方法です。評価基準を設ける手間が掛かりませんが、人によって評価にブレが生じてしまうデメリットがあります。
例えば、製品の見た目やデザインなどを評価する場合、評価者の好みが多分に反映される可能性があります。同じデザインでも、洗練されていると感じる人もいれば、飾り気がないと感じる人もいるでしょう。主観的な評価も尊重されるべきですが、品質評価の分野においては、より客観的な視点から善し悪しを判断する必要があります。
客観的評価
客観的評価は、評価者自身がどう感じるではなく、蓄積されたデータや過去の事例などをもとに評価を下す方法です。多くの人が共通して感じることや、客観的な数値を基準とするため、誰もが納得感を得られる評価ができるメリットがあります。
評価者の思い込みや偏見などを排除でき、評価に間違いが起こりにくいため、ソフトウェアの開発では、客観的な評価をもとに品質管理が行われることが多いです。客観的な評価によって厳しく品質管理を行うことで、品質の信頼性を担保でき、顧客満足度を高められます。
品質評価・検証の手法について
それでは、品質評価の具体的な手法を紹介します。製品の品質評価には客観的な基準が求められ、次のような指標や基準をもとに、評価が下されることが多いです。
バグ密度
バグ密度とは、ソフトウェアの開発規模に対して、どの程度のバグが起こっているかを測る指標です。発生したバグの数を規模で割ることで算出され、規模の単位としては、ソフトウェアのプログラムの行数や、機能数などが用いられます。
規模の異なるプログラムのバグを比較でき、同じチームが開発したソフトウェアのバグ密度を測ることで、プログラマーのスキルレベルを把握したり、開発現場の問題点などを抽出したりするのに役立ちます。
テスト密度
テスト密度とは製品の品質テストの回数が、十分かどうかを判断するための指標です。テストの回数を開発規模で割ることで算出され、規模感はバグ密度と同様、プログラムの行数や機能数などが用いられます。
テスト密度を測る際には、事前に目標値を設定しておき、それに応じて製品の品質テストを実施するケースが多いです。異なる開発プロジェクトで同じ回数テストを行えば、プロジェクト全体の質や成果を比較できるようになります。
観点カバレッジ
開発規模によって、何件のテストを行ったかを測るテスト密度に対して、具体的にどのようなテストを行ったかを把握するのには「カバレッジ(網羅率)分析」が用いられることが多いです。
カバレッジとはソフトウェアの品質テストにおいて、どのテストをどれぐらい実施したのかを割合として示したもので、カバレッジを測定することで品質テストの漏れを防止できます。品質テストのカバレッジは、プログラムのコードや要件、仕様など、さまざまな点から計測する方法があります。
DDPモニタリング
DDP(Defect Detection Percentage)とは、製品のリリース前に発見されたバグの数だけではなく、リリース後に発見されたバグも含めて、ソフトウェアの欠陥の検出率を求めたものです。
リリース前の品質テスト中に発見された欠陥を、テスト中およびリリース後に発見された総欠陥数で割った値で、ユーザーからのバグ報告も計算に含めるのが特徴です。より正確に発生したバグを把握できるので、製品や開発環境の改善につなげられます。
まとめ
ソフトウェア開発における品質評価の重要性と、具体的な評価方法を解説しました。品質評価には主観的評価と客観的評価がありますが、後者の方がより製品の品質を担保できます。実際に評価を行う際には、バグ密度やテスト密度などの指標を用いて、開発プロジェクト全体の評価につながるように工夫することが大事です。適切な品質評価が顧客満足度の向上につながるので、しっかりと品質チェックのできる体制を整えておきましょう。