02_応用

Section 4: 技術ビジネスプロセス分析 — 🔧 応用編

対象: 実務 3-5 年・GCP 経験あり / CI/CD 設計・DORA・DR パターン・組織変革 を体系化したい人。 目標: 試験で問われる「プロセス設計と組織判断」を高精度で出せるようになる。


1. SDLC モデルの選定判断

モデル別の適性

モデル 強み 弱み 適すケース
Waterfall 計画明確、コスト読みやすい 変化に弱い 規制業界(医療・金融)、ハードウェア統合
Agile (Scrum) 変化に強い、フィードバック早い ドキュメント弱い Web/モバイル、SaaS
DevOps デリバリ速度、品質両立 文化変革が必要 クラウドネイティブ
SRE 信頼性定量化、自動化推進 組織成熟度必要 大規模サービス、グローバル

Shift Left の概念

テスト・セキュリティを開発の早期段階に組み込む 考え方。

従来(Right):
要件 → 設計 → 実装 → 【テスト】 → 【セキュリティ】 → リリース
                       ↑問題発覚時の修正コスト大

Shift Left:
要件 → 設計 →【テスト計画】【セキュリティ】→ 実装(自動テスト)→ リリース
              ↑早期発見で修正コスト小

AWS / Azure との比較

概念 GCP AWS Azure
CI Cloud Build CodeBuild Azure Pipelines (Build)
アーティファクト Artifact Registry ECR / CodeArtifact ACR / Artifacts
CD Cloud Deploy CodeDeploy / CodePipeline Azure Pipelines (Release)
Git Cloud Source Repositories CodeCommit Azure Repos
マネージドサービスカタログ Service Catalog Service Catalog Service Catalog

2. CI/CD パイプライン設計の深掘り

Cloud Build の機能と制約

項目 内容
並列実行 最大 30 同時ビルド(デフォルト、増減可)
ビルド時間 デフォルト 60 分、最大 24 時間
マシンタイプ E2、N1(Standard)/ High-CPU / High-Memory
Private Pool VPC 内で実行(プライベートリソースアクセス)
トリガー Git push、Pub/Sub、手動、cron
認証 Workload Identity Federation(鍵管理不要)

Cloud Deploy のデプロイ戦略

戦略 内容 用途
Standard 全インスタンス一括更新 開発・小規模
Canary 一部(10% → 50% → 100%)に段階リリース 本番リリース
Blue/Green 旧版と新版を並行稼働、切替で全量更新 ダウンタイム最小化
Progressive 自動メトリクス監視つきカナリア 高度な本番運用

Cloud Deploy 構造

# clouddeploy.yaml
apiVersion: deploy.cloud.google.com/v1
kind: DeliveryPipeline
metadata:
  name: my-pipeline
serialPipeline:
  stages:
  - targetId: dev
  - targetId: staging
  - targetId: prod
    strategy:
      canary:
        runtimeConfig:
          kubernetes:
            serviceNetworking:
              service: "my-svc"
        canaryDeployment:
          percentages: [10, 50]

Binary Authorization(重要)

未承認・未署名イメージのデプロイを防ぐ ガードレール。

[ビルド] ── 署名 (Attestation) ──→ [Artifact Registry]
                                       ↓
[GKE / Cloud Run]
   ↓
Binary Authorization が
署名検証 ── 失敗 → デプロイ拒否
        ── 成功 → デプロイ許可

ポリシー例:

GitOps パターン

[Git] ── 宣言(YAML) ──→ [Config Sync / ArgoCD] ──→ [GKE Cluster]
   ↑                                                       ↓
   ←──────── PR でロールバック ──────────────── ドリフト検知

3. DORA メトリクス(重要・頻出)

DevOps Research and Assessment が定義する 4 つの主要メトリクス

4 メトリクス

メトリクス 定義 Elite High Medium Low
Deployment Frequency(デプロイ頻度) 本番リリースの頻度 オンデマンド(>1/日) 1/日 〜 1/週 1/週 〜 1/月 <1/月
Lead Time for Changes(変更リードタイム) コミット → 本番までの時間 <1 時間 <1 日 1 日 〜 1 週 >1 週
Mean Time to Restore(MTTR) 障害発生 → 復旧までの平均時間 <1 時間 <1 日 1 日 〜 1 週 >1 週
Change Failure Rate(CFR) リリース後に障害となる割合 0-15% 16-30% 16-30% 46-60%

改善方法

メトリクス 改善アプローチ
Deployment Frequency 向上 CI/CD 自動化、小さなバッチサイズ、Feature Flags
Lead Time 短縮 ビルド・テスト並列化、自動デプロイ、承認自動化
MTTR 短縮 Runbook 整備、自動ロールバック、観測可能性強化
CFR 低下 テスト自動化、カナリアデプロイ、Progressive Delivery

DORA 補足メトリクス(最近追加)


4. テスト戦略の詳細

テストピラミッド vs テストトロフィー

テストピラミッド(古典)        テストトロフィー(Kent C. Dodds)

         /\                          ___
        /E2E\                       /E2E\
       /------\                    /-----\
      / 結合 \                    / 結合  \  ← 重視
     /--------\                  /---------\
    /  単体   \                 / 単体     \
   /----------\                /------------\
                              / 静的解析     \  ← 重視
                             /---------------\

Chaos Engineering(カオスエンジニアリング)

Netflix の Chaos Monkey が起源。意図的に障害を起こして耐性を検証 する手法。

ツール 内容
Chaos Monkey ランダムに VM を停止
Litmus / Chaos Mesh K8s ネイティブのカオスツール
Gremlin 商用のカオスプラットフォーム

IaC のテスト

階層 ツール 内容
構文 terraform fmt, terraform validate 構文・型チェック
静的解析 tflint, checkov, tfsec セキュリティ・ベストプラクティス
Plan 検証 terraform plan, Conftest, OPA ドリフト、ポリシー違反
統合テスト Terratest, Kitchen-Terraform 実環境でのデプロイ確認
コンプライアンス InSpec, Config Validator 規制適合

Config Validator / Policy as Code

GCP 環境のリソースが ポリシーに違反していないか を自動チェック。

[Terraform Plan] ──→ [Config Validator] ──→ ✓/✗
                          ↓ ポリシー
                    constraints/
                    ├── no_public_ip.yaml
                    ├── encrypt_disk.yaml
                    └── allowed_locations.yaml

5. RCA とポストモーテム文化

良い Postmortem の要素

要素 内容
タイムライン 何が、いつ、どの順で起きたか
影響 何人/どの機能が影響を受けたか、規模
検知方法 何で気づいたか(アラート / 顧客報告)
緩和策 どう被害を最小化したか
根本原因 何が悪かったか(プロセス / 技術)
トリガー 何が引き金になったか
アクション項目 再発防止策(Owner、期限つき)

Google 流 SRE の信条

  1. エラーバジェット: SLO に未到達分をリリース速度に振り向ける
  2. Toil の削減: 繰り返し作業を自動化
  3. Blameless: 個人を責めずプロセスを直す
  4. Production Readiness Review (PRR): 本番投入前のチェックリスト
  5. DiRT(Disaster Recovery Testing): 計画的障害訓練

6. DR 戦略の詳細設計

DR パターン詳細

Backup & Restore

本番リージョン               DR リージョン(停止中)
┌──────────┐               ┌──────────┐
│ App     │               │ (停止) │
│ DB ────→│ Snapshot ──→ │ GCS バックアップ │
└──────────┘               └──────────┘

障害時: バックアップから手動で復旧(数時間)

Pilot Light

本番リージョン               DR リージョン(最小起動)
┌──────────┐               ┌──────────┐
│ App     │               │ DB Replica │ ← 常時同期
│ DB ────→│ Replication →│            │
└──────────┘               └──────────┘

障害時: アプリ層を起動(数十分)

Warm Standby

本番リージョン               DR リージョン(縮小起動)
┌──────────┐               ┌──────────┐
│ App x10 │               │ App x2  │ ← 常時稼働
│ DB     │←── 同期 ──→  │ DB     │
└──────────┘               └──────────┘

障害時: スケールアップ(数分)

Hot Standby (Active-Active)

本番リージョン               DR リージョン
┌──────────┐               ┌──────────┐
│ App x10 │←── Global LB →│ App x10 │
│ DB     │←── 同期 ──→  │ DB     │
└──────────┘               └──────────┘

障害時: LB が自動でトラフィック切替(数秒)

サービス別 DR 機能

サービス DR 機能 RPO
Cloud SQL PITR + Cross-region Read Replica 数秒(PITR)
Spanner Multi-region 5 ノード以上で 99.999% SLA、強整合性 0(同期レプリケーション)
Cloud Storage(Multi-region) リージョン跨ぎ自動レプリケーション ほぼリアルタイム
BigQuery リージョン内冗長、Cross-region データセット コピー 数時間
Bigtable App Profile + Cluster ルーティング 数秒〜分
Persistent Disk Region PD(同期)、Snapshot Schedule 数分〜時間
GKE Multi-cluster + Backup for GKE 設定次第

DR テスト(DiRT)

実際にフェイルオーバーを定期実施 して計画の有効性を検証。

種類 内容
Tabletop Exercise 机上演習、シナリオを口頭で確認
Partial Failover 一部システムだけ切替
Full Failover 本番を DR リージョンに切替
Game Day 故意に障害を起こして対応訓練

7. Service Catalog の応用

組織への導入パターン

Cloud Identity / Workspace
  ↓
組織 (Organization)
  ├── フォルダ: 本社
  │     └── プロジェクト群
  └── フォルダ: 部門 A
        └── 部門用 Service Catalog ← 部門固有テンプレート
        └── プロジェクト群

組織レベル Service Catalog ── 全社共通テンプレート

コンテンツの種類

種類 内容
Deployment Manager Template リソース構成 標準 GKE クラスタ
Terraform Module IaC モジュール 承認済み VPC 設計
Marketplace Solution サードパーティ製品 社内承認済み MongoDB
Document URL / PDF 利用ガイド

統制とガバナンス


8. ステークホルダー管理の応用

戦略的なステークホルダー分析

Salience Model(顕著性モデル)

3 軸でステークホルダーを分類:

3 軸全て持つ ─→ Definitive(最優先対応)
2 軸 ─→ Expectant(期待される対応)
1 軸 ─→ Latent(潜在的、軽く対応)

Influence Strategy

状況 アプローチ
反対勢力が強い One-on-One で個別説得、共通利害を見つける
中立層が大半 データと事例で説得
支持層 早期に味方化、推進力に

コミュニケーション計画

役割 頻度 内容 媒体
経営層 月次 KPI、ROI、リスク 報告書、役員会
プロジェクトメンバー 毎日 タスク進捗、課題 デイリースタンドアップ
部門横断 週次 マイルストーン、依存関係 ステコミ会議
一般ユーザー 随時 機能変更、利用ガイド メール、社内ポータル

9. 変更管理の応用

ADKAR の各段階での施策

段階 課題 施策例(GCP 移行プロジェクト)
A: Awareness なぜ変化が必要かわからない 経営層からの宣言、競合事例の共有
D: Desire やる気にならない 早期参加メリット提示、表彰制度
K: Knowledge 何をすべきかわからない GCP 認定トレーニング、ハンズオン
A: Ability できない ペアプロ、メンター制度、サンドボックス環境
R: Reinforcement 元に戻る 成功事例の共有、KPI 連動

Kotter 8 Step の現場応用

ステップ
1. 危機感 「3 年後にオンプレ EOL、対応必須」
2. 推進チーム クラウド推進室(5 名、各部門代表)
3. ビジョン 「2 年でフルクラウド、デプロイ速度 10 倍」
4. 共有 全社タウンホール、社内ポータル
5. 障害除去 旧プロセス廃止、予算配分変更
6. 短期成功 パイロット部門で 3 ヶ月で成果報告
7. 追加変革 他部門展開、追加自動化投資
8. 定着 評価制度連動、新人研修に組込

抵抗を減らすコミュニケーション

抵抗タイプ 原因 対処
失職への不安 スキル陳腐化を懸念 研修提供、配置転換
慣れた業務の喪失 既存業務へのプライド 既存業務の価値を認め、新業務に意義付け
技術への不信 知らないものへの恐れ デモ、PoC、サンドボックス
マネジメント不信 過去の失敗体験 透明性、約束遵守、小さな成功積み上げ

10. 意思決定プロセス(RAPID 等)

RAPID モデル

意思決定の役割を 5 つに分けるフレームワーク(Bain & Co.)。

役割 内容
R Recommend 推奨案を作成
A Agree 推奨案に同意(拒否権あり)
P Perform 決定後に実行
I Input 情報を提供
D Decide 最終決定

RAPID 例(マルチクラウド戦略決定)

役割 担当
R クラウドアーキ
A セキュリティ部門
P DevOps チーム
I 各事業部門
D CTO

意思決定スピード

種類 特徴
Consensus(全員合意) 遅いが定着率高
Consultative(協議型) 中庸、現実的
Authoritative(権威型) 速いが反発リスク
Delegative(委任型) 速いが責任分散

Disagree and Commit(Amazon 流)

反対しても、決まったら全力でコミット する文化。意思決定スピードと実行力を両立。


11. カスタマーサクセスマネジメント

Customer Success の役割

営業(販売) ──→ オンボーディング ──→ 活用支援 ──→ 拡大販売
                ↑                ↑              ↑
            セットアップ   ヘルスチェック   アップセル/クロスセル
                    (Customer Success Manager)

重要指標

指標 内容
NRR(Net Revenue Retention) 既存顧客の収益維持率(>100% で拡大)
Churn Rate(解約率) 一定期間の解約割合
NPS(Net Promoter Score) 推奨意向スコア
Time to Value (TTV) 顧客が価値を実感するまでの時間
Adoption Rate 機能の利用率

GCP のカスタマーサクセス支援

サービス 内容
Customer Care Plans(Standard / Enhanced / Premium) サポートレベル
TAM(Technical Account Manager) Premium で専任
Customer Engineer (CE) 提案 / PoC 支援
Professional Services 設計・移行コンサルティング

12. コスト最適化の応用

階層別コスト最適化

1. アーキテクチャ層
   - サーバーレス優先(リソース最小)
   - マネージドサービス活用(運用コスト削減)
   - リージョン選定(北米は安い)

2. リソース層
   - Right-sizing(Recommender)
   - Spot VMs(バッチ)
   - Custom Machine Type
   - Hyperdisk(旧 SSD より割安)

3. 課金モデル層
   - Committed Use Discounts
   - Sustained Use Discounts(自動)
   - BigQuery Editions / Slot Reservations
   - Cloud Storage Autoclass

4. 運用層
   - Billing Budgets / Alerts
   - Cost Anomaly Detection
   - Idle リソース削除(Recommender / Active Assist)
   - タグ付け(Labels)でコスト追跡

5. 組織層
   - チャージバック / ショーバック
   - FinOps チーム設立
   - Cloud Quotas / Budgets で部門制限

Committed Use Discounts (CUD)

種類 対象 割引率
Resource-based CUDs 特定 VM タイプ・リージョン 1 年 30% / 3 年 55%
Spend-based CUDs 金額コミット(柔軟) 1 年 28% / 3 年 46%
Flexible CUDs リージョン跨ぎ、ファミリー跨ぎ可 中間水準

Cost Anomaly Detection / FinOps

概念 内容
FinOps Cloud Financial Operations、コスト管理の組織文化
Showback 部門別コストの「見える化」(請求はしない)
Chargeback 部門別に実費請求
Cost Anomaly Detection AI で異常コストパターンを検知

Carbon Footprint

GCP の カーボン排出量を可視化 する Carbon Footprint レポート。


13. 実践ケーススタディ

ケース 1: CI/CD 設計(製造業の Web サイト刷新)

要件:

選択:

ケース 2: DR 設計(決済システム)

要件:

選択:

ケース 3: 組織変革(メインフレーム → クラウド)

要件:

選択:


14. 章末まとめ

必ず覚える「プロセス選定パターン」

要件 デフォルト解
高頻度自動デプロイ Cloud Build + Artifact Registry + Cloud Deploy
本番デプロイ承認制 Cloud Deploy + 承認ゲート + Binary Authorization
障害根本原因分析 5 Whys + Blameless Postmortem
DR で許容停止 4 時間 Pilot Light or Warm Standby
DR で許容停止数秒 Hot Standby(Spanner Multi-region + Global LB)
データ損失ゼロ Synchronous Replication(Spanner / Region PD)
役割分担明確化 RACI マトリクス
組織変革推進 ADKAR モデル + Kotter 8 Step
意思決定構造化 RAPID
30-55% コスト削減 Committed Use Discounts
バッチ最大 91% 割引 Spot VMs
社内承認済みテンプレート Service Catalog
サードパーティ製品 Marketplace
統合バックアップ Backup and DR Service
ポリシー違反検知 Config Validator / OPA

次のステップ