Skip to content

認証成熟度モデル

29.4.1. 成熟度モデルの概要

TQS 成熟度モデルはCMMI (Capability Maturity Model Integration) の5段階成熟度概念に着想を得て、ティエニピアの技術環境に合わせて再設計した独自の成熟度フレームワークです。

CMMIが組織のプロセス成熟度の測定に焦点を当てているのに対し、TQS 成熟度モデルはプロジェクトの 技術実装品質成熟度 を測定します。コードコンベンション、テスト、セキュリティ、ビルド自動化等の実際の実装レベルに基づいてプロジェクトの現在位置を診断し、次の段階に進むための具体的な方向性を提示します。

TQS 成熟度モデルの5段階構造は以下の通りです。

段階名称TQS 認証等級核心特徴
第1段階初期未認証標準未適用、個人別コーディングスタイル
第2段階管理未認証(準備段階)基本コンベンション適用、フォーマッタ設定完了
第3段階定義基本認証TQS 必須項目100%充足
第4段階定量優秀認証指標モニタリング、推奨項目80%以上
第5段階最適化最優秀認証推奨項目100%、継続的改善プロセス

各段階は前の段階の要件を包含します。すなわち、第3段階に該当するためには第1段階と第2段階の要件もすべて充足しなければなりません。段階を飛ばすことは許容されません。

成熟度モデルはTQS 認証と直接連携されます。第3段階以上に到達したプロジェクトのみがTQS 認証を申請することができ、第4段階と第5段階はそれぞれ優秀認証と最優秀認証に対応します。


29.4.2. 段階別定義

29.4.2.1. 第1段階:初期

第1段階は技術標準が適用されていない状態です。開発者個人の経験と好みに応じてコーディングスタイル、ツール選択、プロジェクト構造が決定されます。

領域第1段階の状態
コードスタイルフォーマッタ未適用、個人別に異なるコーディングスタイル
プロジェクト構造非標準ディレクトリ構造、一貫性のないパッケージ構成
テストテスト未作成または非常に低いカバレッジ(30%未満)
構成管理ブランチ戦略未定義、コミットメッセージ規則なし
CI/CDパイプライン未構成または手動デプロイ
セキュリティ体系的なセキュリティ基準なし、シークレット管理不備
ドキュメント化APIドキュメント未作成、プロジェクト説明文書の不在

第1段階にあるプロジェクトは技術負債が急速に蓄積され、チームメンバーの変更や要求事項の変更に脆弱です。大部分の新規プロジェクトは意図的に標準を適用しない限り第1段階から開始します。

29.4.2.2. 第2段階:管理

第2段階は基本的なコーディングコンベンションとツール設定が完了した状態です。標準化の第一歩を踏み出した段階であり、TQS 認証に向けた準備が始まります。

領域第2段階の状態
コードスタイルフォーマッタ設定完了(Google Java Format、Prettier)
プロジェクト構造基本的なレイヤー構造の適用(Controller-Service-Repository)
テスト主要機能に対するテストが存在(カバレッジ30~60%)
構成管理ブランチ戦略の導入、基本コミット規則の適用
CI/CD基本パイプライン構成(ビルド + テスト)
セキュリティ基本入力検証の適用、.gitignore設定
ドキュメント化基本プロジェクト説明文書が存在

第2段階はTQS 認証基準には未達ですが、標準化の基盤が整った状態です。この段階でTQS規格の必須項目を1つずつ充足していけば第3段階に移行することができます。

29.4.2.3. 第3段階:定義

第3段階はTQS規格の必須項目を100%充足した状態であり、TQS 基本認証に該当します。

領域第3段階の状態
コードスタイルフォーマッタ + リンターの自動適用、CIでスタイル検証
プロジェクト構造TQS 標準プロジェクト構造100%遵守
テストラインカバレッジ80%以上、ブランチカバレッジ70%以上
構成管理GitHub Flow、Conventional Commits、PRレビュー1名以上
CI/CDリント + テスト + ビルドパイプライン完備
セキュリティTLS 1.2以上、BCryptハッシュ、Bean Validation、RBAC
ドキュメント化APIドキュメント自動生成(SpringDoc)、標準エラーレスポンス

第3段階はTQS 認証の最低基準です。必須項目100%充足が要件であるため、1つの必須項目でも未充足であれば第3段階として認定されません。第3段階に到達したプロジェクトはTQS 基本認証を申請することができます。

29.4.2.4. 第4段階:定量

第4段階は必須項目の充足に加えて、推奨項目の80%以上を充足し、品質指標を定量的にモニタリングしている状態です。TQS 優秀認証に該当します。

領域第4段階の状態
コードスタイル第3段階充足 + コード複雑度/重複度のモニタリング
プロジェクト構造第3段階充足 + 推奨設定項目80%以上適用
テストラインカバレッジ85%以上、統合テスト含む
構成管理第3段階充足 + Semantic Versioningの厳格適用
CI/CD第3段階充足 + セキュリティスキャン段階含む
セキュリティ第3段階充足 + OWASP Dependency-Check適用
ドキュメント化第3段階充足 + アーキテクチャ文書、運用ガイド作成
モニタリングカバレッジ、ビルド成功率、欠陥密度の定期測定

第4段階の核心は 定量的管理 です。品質指標を数値で測定し、推移を分析し、目標対比達成率を管理します。感覚による判断ではなくデータに基づく品質管理が行われる段階です。

29.4.2.5. 第5段階:最適化

第5段階は必須項目と推奨項目をすべて100%充足し、継続的改善プロセスを運営している状態です。TQS 最優秀認証に該当します。

領域第5段階の状態
コードスタイル第4段階充足 + チーム独自のコンベンション改善活動
プロジェクト構造すべての必須/推奨項目100%充足
テストラインカバレッジ90%以上、E2Eテスト含む
構成管理第4段階充足 + リリース自動化
CI/CD第4段階充足 + 無停止デプロイ、カナリアデプロイ
セキュリティ第4段階充足 + 定期セキュリティ監査、ペネトレーションテスト
ドキュメント化第4段階充足 + 技術決定記録(ADR)
改善活動定期振り返り、KPI基盤の改善目標設定および達成

第5段階の核心は 継続的改善 です。現在のレベルに満足せず、データに基づいて改善機会を探索し、新しい技術と方法論を積極的に導入します。第5段階のプロジェクトは社内技術優秀事例として登録され、他のプロジェクトのベンチマーク対象となります。


29.4.3. 自己診断ガイド

プロジェクトチームが現在の成熟度段階を自主的に診断できるよう、段階別の診断基準を提供します。

29.4.3.1. 診断基準テーブル

以下のテーブルの各項目に対して「充足」または「未充足」を判定します。当該段階のすべての項目を充足してはじめて当該段階として認定されます。

第1段階 -> 第2段階 移行診断

番号診断項目充足基準
1フォーマッタ設定ファイルがプロジェクトに含まれているか.editorconfig またはフォーマッタ設定ファイルの存在
2基本的なレイヤー構造が適用されているかController-Service-Repositoryの分離
3テストコードが存在するか最低1つ以上のテストクラスの存在
4ブランチ戦略が定義されているかmain/featureブランチの区分使用
5CIパイプラインが構成されているかビルド自動化構成
6.gitignore ファイルが適切に設定されているかビルド成果物、IDE設定ファイルの除外

第2段階 -> 第3段階 移行診断

番号診断項目充足基準
1TQS 必須チェックリストをすべて通過しているか当該カテゴリの必須項目100%充足
2フォーマッタ/リンターがCIで自動検証されているかCIパイプラインにリント段階を含む
3テストカバレッジ基準を充足しているかライン80%、ブランチ70%以上
4Conventional Commitsを適用しているかコミットメッセージ形式の遵守
5PRレビュープロセスが運営されているか最低1名レビュー後にマージ
6セキュリティ基本項目が適用されているかTLS、BCrypt、Bean Validation、RBAC
7APIドキュメントが自動生成されているかSpringDoc/Swagger UIの構成完了

第3段階 -> 第4段階 移行診断

番号診断項目充足基準
1推奨項目充足率が80%以上であるか推奨チェックリスト80%以上
2コード品質指標を定期的に測定しているか月1回以上の測定
3テストカバレッジが85%以上であるかラインカバレッジ85%以上
4セキュリティスキャンがCIに統合されているかOWASP Dependency-Checkまたは同等ツール
5品質指標の推移を追跡しているかダッシュボードまたはレポートの存在

第4段階 -> 第5段階 移行診断

番号診断項目充足基準
1すべての推奨項目を100%充足しているか推奨チェックリスト100%
2継続的改善プロセスが運営されているか定期振り返り、改善目標の策定
3テストカバレッジが90%以上であるかラインカバレッジ90%以上
4E2Eテストが含まれているかE2Eテスト自動化
5無停止デプロイが実装されているかデプロイ時のサービス中断なし
6KPI基盤の改善活動実績があるか最低2件以上の改善事例

29.4.3.2. 現在段階の判別方法

現在の成熟度段階を判別する方法は以下の通りです。

  1. 第1段階から開始して上位段階に順次的に診断します。
  2. 当該段階のすべての診断項目が「充足」であれば次の段階に移動します。
  3. 1つでも「未充足」の項目があれば前の段階が現在の段階です。
  4. 例えば、第2段階 -> 第3段階の診断で未充足項目がある場合、現在の段階は第2段階です。

自己診断はTQS 認証審査前に必ず行わなければなりません。自己診断の結果が第3段階未満のプロジェクトは認証審査を申請することができません。


29.4.4. 段階別移行ロードマップ

現在の段階から次の段階に上がるための核心活動を定義します。各移行には予想所要期間と優先度の高い活動を案内します。

29.4.4.1. 第1段階から第2段階へ

予想所要期間:2~4週

優先度核心活動詳細内容
1フォーマッタ設定Google Java Format(バックエンド)、Prettier(フロントエンド)の設定および適用
2プロジェクト構造整備標準レイヤー構造(Controller-Service-Repository)へのパッケージ再構成
3CIパイプライン構成ビルド + テスト自動化の基本パイプライン構築
4ブランチ戦略導入GitHub Flow適用、main/featureブランチ運用開始
5基本テスト作成コアビジネスロジックに対する単体テスト作成
6.gitignore 整備標準 .gitignore ファイルの適用

第1段階から第2段階への移行は最も基本的ですが、以降のすべての段階の基盤となります。フォーマッタ設定から始めることを推奨します。フォーマッタの適用だけでもコードの一貫性が大幅に向上します。

29.4.4.2. 第2段階から第3段階へ

予想所要期間:4~8週

優先度核心活動詳細内容
1TQS チェックリスト自己点検必須項目全体を点検し、未充足項目のリスト作成
2テストカバレッジ確保ライン80%、ブランチ70%達成のためのテスト作成
3CIパイプライン強化リント検証段階の追加、カバレッジレポートの生成
4セキュリティ基本項目の適用TLS、BCrypt、Bean Validation、Spring Security設定
5構成管理規則の適用Conventional Commits、PRテンプレート、レビュープロセス
6APIドキュメント自動化SpringDoc(Swagger UI)構成
7未充足項目の補完自己点検で発見された残りの必須項目の充足

第2段階から第3段階への移行が最も労力を要する区間です。テストカバレッジの確保に最も多くの時間を要するため、可能な限り早期に着手することを推奨します。

29.4.4.3. 第3段階から第4段階へ

予想所要期間:4~6週

優先度核心活動詳細内容
1推奨項目の点検推奨チェックリストを点検し、充足可能な項目を優先適用
2品質指標モニタリング体系の構築カバレッジ、ビルド成功率、欠陥密度の自動測定環境
3セキュリティスキャンのCI統合OWASP Dependency-CheckをCIパイプラインに追加
4テストカバレッジの向上85%以上達成、統合テストの追加
5運用ドキュメントの作成アーキテクチャ文書、運用ガイド、障害対応マニュアル
6定期測定プロセスの策定月別品質指標測定およびレポート体系

第3段階から第4段階への移行は「管理」から「測定」への転換です。品質を定量的に測定し追跡する体系を構築することが核心です。

29.4.4.4. 第4段階から第5段階へ

予想所要期間:6~12週

優先度核心活動詳細内容
1残りの推奨項目の充足未充足推奨項目100%達成
2継続的改善プロセスの策定定期振り返り、データ基盤の改善目標策定
3E2Eテストの構築主要ユーザーシナリオに対するE2Eテスト自動化
4無停止デプロイの実装ブルーグリーンまたはカナリアデプロイ戦略の適用
5セキュリティ強化定期セキュリティ監査、ペネトレーションテストの実施
6技術決定の記録ADR (Architecture Decision Records) 作成開始
7チーム改善活動技術負債解消スプリント、コード品質改善活動の定例化

第4段階から第5段階への移行は最も長い時間を要する区間です。第5段階は単にチェックリストを充足することを超えて、継続的に改善する文化とプロセスを備えてはじめて達成することができます。この段階に到達したプロジェクトは組織内の技術標準の模範事例として認定されます。

TIENIPIA QUALIFIED STANDARD