本書は、QA(品質保証)機能のないソフトウェア会社に向けて、QA組織・QA機能の効果的なつくり方を解説するものです。著者らは長年QAとして活躍し、特にスタートアップ、中小企業におけるQAの知見を本書に惜しみなく詰め込みました。
プロダクトの性質、段階によって、必要なQAは異なります。本書では、それらをモデル化した考え方をベースに、各性質や段階に応じて必要なQA施策を解説します。実際の事例をふんだんに用い、また図解をとおして、各読者が置かれている状況をイメージしやすい構成としました。
数値で把握できるQAの指標や、今すぐ実行したいファーストアプローチ、アンチパターンの例も紹介し、現場に適用しやすい内容です。
https://www.ohmsha.co.jp/book/9784274235054/
正誤表やDLデータ等がある場合はこちらに掲載しています
1章 品質フレームワーク「AQUA」
2章 現場で学ぶ品質管理のリアル
3章 品質が顧客価値とブランドを作る
4章 品質を可視化する指標
5章 AIネイティブ開発時代の品質保証
6章 品質保証を組織に実装する
7章 品質保証のアンチパターン
はじめに
1章 品質フレームワーク「AQUA」
1.「AQUA」とは
人海戦術からの脱却
AQUAフレームワークの概要
「知のスケールアウト」とは何か
なぜ「知のスケールアウト」が重要なのか
「知のスケールアウト」の2つの軸
2.「AQUA」フレームワークとソフトウェアライフサイクル
Accelerating project:プロジェクト加速
Qualifying value:価値の明確化
Unveiling weakness:弱みの顕在化
Accumulating knowledge:知識の蓄積
AQUAフレームワークを通じた「知」の深化
2章 現場で学ぶ品質管理のリアル
1.品質戦略とリーダーシップ
品質戦略を策定する
品質戦略を品質計画で具体化する
QAはプロダクトの成長フェーズに応じて行う
テストの限界を理解し、サービス開始後の品質も考慮する
プロダクトリリースまでのQAの進め方
効果的なSLO設定のタイミングと方法
2.QAと改善
低品質プロダクトが及ぼすビジネスインパクト
インシデントを正しく捉え、正しく改善する
インシデントからの学びを最大限に活用する
インシデントが発生する前に改修する:下流工程の改善
インシデントを作り込まないようにする:上流工程の改善
段階的に品質を可視化して改善する
すべてのバグは改修すべきか
3.QA組織と人材管理
品質戦略を理解できる1人目QAを見つける
品質戦略を実現するQA組織を構築する
QA組織のスケールアップを意識した組織やインフラを構築する
育成型採用で人材不足を補い、ビジネスとともに成長させる
品質戦略に適応できる協力会社を選定する
オフショアを開始する前には、損益分岐点を算出しておく
4.技術的アプローチと実行
設計されていないテストは効率的か?
テストもプランニングが大事!
プロセスを分解し、品質を段階的に育てる
テストプロジェクトのコントロールは、プロマネ技術で安定的に
テストのナレッジが展開しない
3章 品質が顧客価値とブランドを作る
1.品質とは
品質の定義
品質保証の定義
品質保証の目的
2.品質保証を実現する仕組み
QM、QC、QAの違いを理解する
プロダクト品質とプロセス品質
「品質文化」を築く
3.品質保証を通じて実現したいこと
プロダクトを通じた顧客価値を最大化させる
ユーザーに支持されるブランド作り
4.品質を理解する際に利用するモデル
ISO/IEC 25000 シリーズ(SQuaRE)
狩野モデル
AQUAフレームワーク
JCSIモデル
DORAのソフトウェアデリバリーパフォーマンスとSPACEフレームワーク
4章 品質を可視化する指標
1.事業から得る指標
利用者数(DL数、MAU、DAU)
ライフサイクル(CVR、利用率、継続率、離脱率、解約率)
財務データを活用した品質指標(ARPU/ARPA、ARPPU、GMV、LTV)
成長率
2.ユーザーから得られる指標
お問い合わせ数(電話、メール、チャット)
SNS、Web反響とユーザーコミュニティ
ストア評価、レビューサイト評価、NPS、CSAT
3.開発プロセスから得る指標(Dev)
規模(Function、Size)
工数(Effort)
期間(Time)
品質(Quality)
生産性(Productivity)
非機能品質の作り込み(脆弱性・パフォーマンス)
4.サービス運用から得る指標(Ops)
インシデント発生頻度(件数/率)とMTBF
MTTR(TTM、TTD、TTE、TTF)
SLA、SLO、SLI、レイテンシー、スループット
5.指標の統合評価と改善サイクル
指標のダッシュボード設計
エラーバジェットによる意思決定
エスカレーション基準の明確化
指標に基づくフィードバックループ(Ops → Dev)
5章 AIネイティブ開発時代の品質保証
1.開発パラダイムの転換:AIネイティブ開発とは
「支援(Copilot)」から「実行(Agent)」への進化
スプリントの再定義と「マイクロサイクル」
2.AIネイティブ開発プロセスとQAの介入点
仕様駆動開発(SDD)によるシフトレフト【要件定義】
リスクベースド・オーバーサイト【実装】
AIオペレーションの監督【運用】
3.組織のケイパビリティ支援とQAの役割変化
タスク分解の支援
セルフQAの実現:プロンプトによる品質管理の実践
AIネイティブ開発ライフサイクルにおけるQAプロセスの設計
4.AI自体の品質とリスク管理
ハルシネーション対策と「問いかけ」の質
セキュリティとコンプライアンス
6章 品質保証を組織に実装する
1.トップ(経営層)がとるべきアプローチ
QAを自分事として認識する
ビジョン、ミッションに対する品質について考える
サービスの状況とそれに対応できる品質戦略を策定する
品質戦略が作れない場合は、専門家を採用する
2.専門家の1人目QAに求める視座
事業フェーズを考慮したQA戦略
サービス特性(ビジネス特性)を考慮した品質保証
開発組織が大事にしていること、文化の尊重
品質戦略全般を考慮したQA体制の設計
組織形態と開発プロセスに関する知識の活用
QAの「能力ポートフォリオ」と投資領域
3.品質戦略の立ち上げプロセス
組織の品質スタンスと現在地を把握する
仮説としてのロードマップを描き、学習しながら進む
ケイパビリティの拡張を意識して始める
7章 品質保証のアンチパターン
1.組織と文化に潜むアンチパターン
丸投げQA:The "Throw-it-over-the-wall"
責任のポテンヒット:Ambiguous Ownership
QA担当者のポリス化:QA as a Gatekeeper
精神論による品質担保:Gut-Feel Testing
ヒーローへの過度な依存:The Hero Trap
短期的利益の優先:Ship It Now,Fix It Later
フィードバックの無視:Feedback Loop Failure
2.プロセスと戦略に潜むアンチパターン
ビッグバン・テスト:Testing at the End
不吉な自動化:Automated Testing Theater
ユーザー不在の品質基準:Verification without Validation
リスク無視の全テスト:Testing Everything Equally
改善なきモグラ叩き:The Bug Factory
ブラックボックス化した仕様:Zombie Documentation
3.知識、技術、AI活用に潜むアンチパターン
AIの絶対視:Blind Trust in AI
虚栄のメトリクス:Vanity Metrics Obsession
スキルアップの軽視:Lack of QA Education
ツール導入=解決という幻想:The Silver Bullet Illusion
特殊環境でのテスト:"Works on My Machine"
付録A テストプロセスの基礎知識
A-1 テストプロセスの全体像
A-2 テストレベルとテストタイプ
A-3 テストアーキテクチャ:テストにも設計図が必要である
A-4 テスト設計技法の概観
A-5 テスト計画とテストマネジメント
付録B インシデント管理の基礎知識
B-1 インシデントの深刻度と優先順位
B-2 工程分析:インシデントから改善行動へつなげる視点
B-3 インシデントデータの可視化:経営層が見るべきグラフ