ストーリー
田
田中VPoE
組織全体のCI/CDを改善するには、まず現在地を正確に把握する必要がある。そのためのフレームワークが「CI/CD成熟度モデル」だ
あなた
成熟度モデルというと、CMMIのようなものですか?
あ
田
田中VPoE
近い発想だが、CI/CDに特化したものだ。レベル1の「手動デプロイ」からレベル5の「自律的最適化」まで、組織がどの段階にいるかを客観的に評価できる。20チームすべてを同じ物差しで測れるんだ
あなた
なるほど、チームごとの成熟度の差も見えてきそうですね
あ
田
田中VPoE
そう。そしてその差こそが、今回の設計で最も考慮すべきポイントだ
CI/CD成熟度モデルとは
CI/CD成熟度モデルは、組織のCI/CDプラクティスを段階的に評価するフレームワークです。DORA(DevOps Research and Assessment)の研究をベースに、以下の5段階で定義します。
5段階モデル
| レベル | 名称 | 特徴 |
|---|
| Level 1 | 初期(Ad-hoc) | 手動ビルド・手動デプロイ。CI/CDの概念が浸透していない |
| Level 2 | 管理(Managed) | CIが導入され、自動テストが存在する。デプロイは手動または半自動 |
| Level 3 | 定義(Defined) | 標準パイプラインが存在。CD(継続的デリバリー)が一部で実現 |
| Level 4 | 計測(Measured) | DORA指標で計測。フィードバックループが確立。継続的デプロイ |
| Level 5 | 最適化(Optimized) | 自律的な改善。AI/ML活用。自己修復パイプライン |
評価軸:6つのディメンション
成熟度は単一の指標では測れません。以下の6つの評価軸で多角的に分析します。
1. ビルドとテスト
| レベル | 実践内容 |
|---|
| Level 1 | ローカルでビルド、手動テスト |
| Level 2 | CIサーバーで自動ビルド、ユニットテスト |
| Level 3 | マルチステージビルド、統合テスト自動化 |
| Level 4 | テストピラミッド最適化、並列テスト |
| Level 5 | テスト影響分析、AI支援テスト生成 |
2. デプロイメント
| レベル | 実践内容 |
|---|
| Level 1 | 手動デプロイ(SSH、FTP) |
| Level 2 | スクリプト化されたデプロイ |
| Level 3 | Blue/Green、カナリアデプロイ |
| Level 4 | GitOps、プログレッシブデリバリー |
| Level 5 | 自動ロールバック、自己修復デプロイ |
3. セキュリティ
| レベル | 実践内容 |
|---|
| Level 1 | セキュリティチェックなし |
| Level 2 | 手動セキュリティレビュー |
| Level 3 | SAST/DAST統合 |
| Level 4 | SCA、シークレット管理、SBOM |
| Level 5 | ゼロトラストパイプライン、自動修復 |
4. インフラストラクチャ
| レベル | 実践内容 |
|---|
| Level 1 | 手動プロビジョニング |
| Level 2 | 一部IaC化 |
| Level 3 | 完全IaC、環境テンプレート |
| Level 4 | 不変インフラ、ポリシーasCode |
| Level 5 | 自律的スケーリング、カオスエンジニアリング |
5. 可観測性
| レベル | 実践内容 |
|---|
| Level 1 | ログファイルの手動確認 |
| Level 2 | 集中ログ管理 |
| Level 3 | メトリクス・アラート設定 |
| Level 4 | 分散トレーシング、SLI/SLO |
| Level 5 | AIOps、異常検知、予測分析 |
6. ガバナンス
| レベル | 実践内容 |
|---|
| Level 1 | ガバナンスなし |
| Level 2 | ドキュメントベースのルール |
| Level 3 | 共有テンプレート、レビュープロセス |
| Level 4 | ポリシーエンジン、自動監査 |
| Level 5 | セルフサービスプラットフォーム、自動コンプライアンス |
DORA指標との関係
DORA(DevOps Research and Assessment)が定義する4つのキー指標は、CI/CD成熟度と強い相関があります。
| 指標 | Elite | High | Medium | Low |
|---|
| デプロイ頻度 | オンデマンド(1日複数回) | 1日1回〜週1回 | 週1回〜月1回 | 月1回〜半年1回 |
| リードタイム | 1時間未満 | 1日〜1週間 | 1週間〜1ヶ月 | 1ヶ月〜半年 |
| 変更失敗率 | 0-15% | 16-30% | 16-30% | 46-60% |
| 復旧時間 | 1時間未満 | 1日未満 | 1日〜1週間 | 半年以上 |
// DORA指標の型定義
interface DORAMetrics {
deployFrequency: "on-demand" | "daily-weekly" | "weekly-monthly" | "monthly-biannual";
leadTimeForChanges: Duration;
changeFailureRate: Percentage;
timeToRestore: Duration;
}
// 成熟度レベルとDORAの対応
const maturityToDORA: Record<MaturityLevel, DORAPerformance> = {
"Level 1": "Low",
"Level 2": "Low-Medium",
"Level 3": "Medium-High",
"Level 4": "High",
"Level 5": "Elite",
};
組織全体の成熟度マッピング
20以上のチームがある組織では、チームごとの成熟度にばらつきがあるのが普通です。
成熟度レベル分布(仮想的な組織の例):
Level 5 | [チームE]
Level 4 | [チームA] [チームB]
Level 3 | [チームC] [チームD] [チームF] [チームG]
Level 2 | [チームH] [チームI] [チームJ] [チームK] [チームL]
Level 1 | [チームM] [チームN] [チームO]
+---------------------------------------------------
フロント バックエンド インフラ データ モバイル
ばらつきの典型的な原因
| 原因 | 影響 |
|---|
| チーム発足時期の違い | 古いチームはレガシーな手法が残りがち |
| 技術スタックの違い | モダンなスタックほどCI/CDツールが充実 |
| チームの技術力 | シニアエンジニアの有無が成熟度に直結 |
| プロダクトの性質 | 規制業界のプロダクトはセキュリティ面の成熟度が高い |
| 経営の関心度 | 投資が集中するチームほど成熟度が高い |
まとめ
| ポイント | 内容 |
|---|
| 成熟度モデル | 5段階で組織のCI/CDプラクティスを評価 |
| 評価軸 | ビルド/テスト、デプロイ、セキュリティ、インフラ、可観測性、ガバナンス |
| DORA指標 | デプロイ頻度、リードタイム、変更失敗率、復旧時間 |
| 組織マッピング | チームごとのばらつきを可視化し、改善計画の土台にする |
チェックリスト
次のステップへ
次は「組織のCI/CD課題を特定する」です。成熟度モデルという物差しを手に入れたところで、具体的な課題パターンを深掘りしていきましょう。
推定読了時間: 30分