ATS|テスト自動化

2024.2.21

【第2回】:品質計画の手順と着目ポイント

「品質保証DX」の実現に向けて

日本社会におけるITへの依存度が高まるにつれ、ソフトウェアの品質問題がメディアを騒がせる日々も増えてきました。こうした品質問題の多くは、ソフトウェアの品質保証の不備に起因するものです。品質保証の質を向上させるうえでは、QA人材やテスト工数の不足、テスト難易度の上昇といった、QA現場が抱える課題を解決することが重要となります。

これらの課題を解決するうえでは、「品質保証DX」が有力なソリューションと言えます。QA現場のプロセスにDX(デジタルトランスフォーメーション)の概念を適用し、あらゆる開発サイクルにおける「持続可能な生産性向上」の実現を図るものです。

前回は、品質保証DXの実現にあたって次の3点が重要となることをお伝えしました。

  • 品質計画
  • 開発・テスト環境
  • テスト実行

詳細については、第1回の記事をご一読ください。

【第1回】:品質保証の課題と解決のポイント

第2回となる本記事では、1つ目の重要な着眼点である「品質計画」を策定する際の手順と鍵となるポイントについてお伝えします。

品質計画とは

ソフトウェア開発における品質計画とは、達成すべき品質目標を定め、それらの達成につながる具体的な計画や施策を明確にするプロセスです。品質計画はプロジェクトの初期段階で策定し、以降のプロセスを進めるうえでのガイドラインとなります。

品質計画策定の目的

品質計画の策定には、ソフトウェア開発の品質管理プロセス全体において明確な目標を与え、方向性のぶれを防ぐ目的があります。また、品質保証への影響も非常に大きく、品質保証DXの実現にあたっても不可欠な要素と言えます。

品質保証に焦点を当てた場合、品質計画を策定する目的は主に次の2つです。

方向性の明確化

品質計画を策定することで、品質保証における方向性が明確となります。品質計画の過程で決定する品質目標は、品質保証に欠かせないテストやレビューといったプロセスの判断材料にもなるためです。

特にテスト計画やテストケース作成などにおいては、「各工程で、どの品質をどこまで作りこむか」「何をもって品質が妥当であると判断するか」がプロセスの方向性を大きく左右します。すなわち、「品質目標に達するか」という明確な判断材料を与えることで、こうした品質保証活動の方向性が鮮明となります。

また品質目標が定まっていれば、品質の「現在地」をリアルタイムに把握し、必要に応じて軌道修正することも可能です。「品質目標に対して、現状の品質がどの水準にまで達しているか」を測定すれば、目標達成のために活動の方向性を見直すべきかが判断できます。

リソースの適切な配分

プロジェクトの中盤以降、開発力のあるリソースを設計製造作業にアサインするか、テスト関連作業にアサインするか、といった人材配置のあり方は、ソフトウェア開発のQCDに影響を与える重要な検討事項です。設計製造とテストの両面が佳境に入り、スキルのある要員が不足に陥ることにより発生するジレンマです。

また、ソフトウェア開発の失敗ケースとして、「すでに十分な水準に達している品質項目に対して過剰に工数を投入してしまう」結果、本当に工数を必要とする項目で工数不足が発生するといったことが往々にしてあります。これらは、品質目標が曖昧なままプロセスが進んでいくために起きる問題と言えます。

「目標達成のために何を重視すべきか」と逆算的にリソースの配分を考えることで、より効率的にテスト工数などを配分することが可能です。本来注力すべき品質保証プロセスにリソースが配分されることは、品質の早期安定化にも寄与します。

品質計画策定の手順

品質計画策定は、大まかに次の3プロセスに沿って進めていくことが通例です。ただし、企業やチームによって品質計画の進め方は異なる場合があります。

1.品質方針の把握

最初に、「品質方針」を把握することが重要となります。品質方針とは、開発・QAチームを包括する組織全体としての、品質に対するあり方や方向付けです。品質方針は一般に、組織における経営陣が決定し、対外的に公表します。

品質方針は、顧客や株主といったステークホルダーも参照する可能性があるため、これに準拠した品質計画を策定しなければなりません。したがって、QAチームとしても最初に品質方針を把握することが肝要です。

2.品質目標の決定

品質方針を念頭に置いたうえで、達成すべき品質目標を決定します。品質方針だけでなく、現状の品質や顧客からのフィードバックなども勘案する必要があります。

以降のプロセスを方向付ける品質目標は、測定可能なものでなければなりません。品質目標が抽象的だと判断基準が曖昧となるばかりか、DXによりプロセスの自動化を図るうえでも技術的な障壁となります。

品質保証においては、たとえば製造規模に対応するテスト項目数やバグ検出数、機能や品質観点ごとのテストカバレッジ(網羅率)などが挙げられます。このように、定量的に判断できる品質目標が理想です。

3.品質管理における基本事項の定義

品質目標に沿って、以降のプロセスで実施していく品質管理における基本事項を定義します。具体的には、投入する工数や人員などのリソース配分、品質目標を達成するまでのスケジュール、レビュー対象のプロセスや評価方法、成果物などの明確化が必要です。

品質保証に係る事項としては、テストやレビューで用いる技法、チェックリストなどをこの段階で作成することが望ましいと言えます。また、プロジェクト遂行にあたって重要な観点である開発・テスト環境に関しても、環境要件や構築プロセス、各種ツール・ライブラリとの連携やデータ管理、環境モニタリング方式などを整理し、計画書として落とし込むことが推奨されます。

品質計画策定のポイント

品質保証DXの実現につながる品質計画を策定するためのポイントは、主に次の2点です。特に、昨今の主流となっているアジャイル開発を採用している場合、これらのポイントはより重要となります。

達成すべき品質の分析・可視化

より高い品質目標を設定できるに越したことはありません。しかしながら、プロジェクトの実態に即さない品質目標では実現性が低く、結果として目標未達に終わることが通例です。実現性の高い品質目標を設定するうえでは、達成すべき品質の分析・可視化が重要となります。

短期間の開発サイクルを繰り返すアジャイル開発においても、作りこむ品質を体系的に整理し可視化する作業は、品質目標を正しく設定するために必要不可欠です。開発状況を踏まえて品質計画を適時迅速に調整していくうえで、その基礎となる重要なプロセスと言えます。

品質の分析・可視化にあたっては、品質観点や開発プロセスをマトリックスなどで可視化する「品質マップ」といった手法が有効です。こうした手法により正しく分析・計画することで、開発の全工程に渡り達成すべき品質の構造を明らかにし、目標と技法を最適化することができます。実現可能な品質計画の策定にあたっては起点となる作業であると言えます。

品質計画と後工程のトレーサビリティ確保

品質計画は、以降のあらゆるプロセスに大きく影響を及ぼします。言い換えれば、品質計画に調整が発生した場合、様々な後工程の関連要素にも反映されなければなりません。こうした仕組みを実現するうえでは、品質計画と後工程のトレーサビリティ確保が肝要です。

特にアジャイル開発では、開発サイクルごとに品質計画を調整していく必要が生じ、そのたびに後工程への反映作業が発生します。こうした高負荷な作業を削減するためには、品質計画と関連要素の紐づけを確実に行い、相互に自動反映される仕組みを構築することが理想です。なお、このような自動化の仕組みは、まさにDXが得意とする領域と言えます。

開発・テスト環境における課題やポイントとは?

今回は品質計画を策定する際の手順やポイントについて整理しました。後のプロセス全体を左右する品質計画は、品質保証DXの実現にあたっても欠かせません。

■第2回のポイント

  • 品質計画は、品質保証の方向性の明確化やリソース配分の適正化につながる。
  • 品質計画は、品質方針の把握→品質目標の決定→品質管理における基本事項の定義といった流れで進めることが多い。
  • 品質計画においては、達成すべき品質の分析・可視化や後工程とのトレーサビリティ確保が重要。

適切に設定した品質目標を達成するうえでは、開発・テスト環境の準備や構築が不可欠です。第3回となる次回は、開発・テスト環境の準備や構築における課題やポイントについて解説します。

「品質保証DX」の実現に向けて の記事一覧

「品質保証DX」の実現に向けて

  • 2024.4.3
  • 【第4回】:IaC運用管理ソリューション「Torque」とは

BLOG シリーズ 一覧