
196
アーキテクトと品質保証活動
5.1
品質保証とテスト
品質保証やテストという言葉を聞くと、品質保証部門やQAエンジニ
アの仕事だと考える方もいるかもしれません。実際のところは、品質保
証活動はアーキテクトも深く関与し、一部については主導する役割をも
担う重要な活動です。そのため、本章ではその全体像と、特にアーキテ
クトとの関わりが強いトピックについて説明します。
まず用語を整理しておきましょう。品質保証(QA:Quality
Assurance)とは、システムが期待される品質基準をクリアし、顧客や
利用者のニーズを満たすようにするための活動全般を指すものです。テ
スト(ソフトウェアテスト)とは、開発したソフトウェアが仕様どおり
に動作することを検証する行為を指します。
品質保証はテストを行うだけの活動ではありません。適切なレビュー
の実施や、解析ツールの導入、開発プロセスやドキュメントの標準化な
ど、ソフトウェアの品質を向上し維持するために必要なあらゆるアプ
ローチを包含するものです。
シフトレフト
ソフトウェアの欠陥の発見が後工程になればなるほど、その修正コス
トは増大します。要求仕様の誤りがテスト工程になって発見された場
合、その修正コストは要件定義工程で修正する場合と比べて数倍から数
十倍になるとも言われます。後工程になるほど、仕様書や設計書などの
ドキュメント修正、ソースコードの修正、テストケースの修正と再実
施、という具合に手戻りの量が増えてしまうことが主な原因の一つで