フィーチャーフラグのライフサイクル管理

フィーチャーフラグの作成からクリーンアップまでの完全なライフサイクルを管理します。オーナーシップ、有効期限、削除プロセスを定義してフラグ債務を防止。

Best Practices

詳細な説明

フィーチャーフラグのライフサイクル

フィーチャーフラグは恒久的なものではありません。ライフサイクル管理がないと、コードベースに「フラグ債務」が蓄積されます。何百もの古いフラグがコードを複雑にし、フラグ評価を遅くし、チームメンバーを混乱させます。

フラグのライフサイクルステージ

DRAFT → ACTIVE → ROLLED OUT → DEPRECATED → REMOVED
  |        |          |              |             |
  |     ターゲティング   100%の      クリーンアップ     コード
  |     ルール定義    ユーザーに      スケジュール     ブランチ
  |                2週間以上                      削除
  |
  フラグ作成、
  まだ有効化されていない

メタデータ付き設定

{
  "new-onboarding-flow": {
    "name": "新しいオンボーディングフロー",
    "description": "リデザインされた初回ユーザー体験",
    "type": "boolean",
    "enabled": true,
    "defaultValue": false,
    "targeting": [
      { "type": "percentage-rollout", "percentage": 100 }
    ],
    "_metadata": {
      "owner": "growth-team",
      "createdDate": "2025-01-15",
      "targetRemovalDate": "2025-03-15",
      "jiraTicket": "GROW-1234",
      "lifecycle": "rolled-out",
      "tags": ["temporary", "onboarding", "q1-initiative"]
    }
  }
}

ライフタイム別のフラグカテゴリ

カテゴリ ライフタイム
リリースフラグ 数日〜数週間 新機能ロールアウト
実験フラグ 2-4週間 A/Bテスト
運用フラグ 恒久的 キルスイッチ、サーキットブレーカー
権限フラグ 長期間 プレミアム機能

フラグ債務の防止

  • すべてのリリースフラグに必須の有効期限を設定
  • チームスタンドアップでの週次フラグレビュー
  • 目標削除日を過ぎたフラグに対する自動アラート
  • 各フラグの年齢、状態、オーナーを表示するフラグダッシュボード
  • コード内の非推奨フラグについて警告するLintルール

ユースケース

エンジニアリングチームが2年間で200以上のフィーチャーフラグを蓄積し、多くの古いフラグがコードベースを乱雑にしている。ライフサイクルポリシーを実装:すべてのフラグにはオーナーと目標削除日が必要。週次の自動レポートが有効期限を過ぎたフラグを強調表示。3ヶ月以内に60のアクティブフラグに削減。

試してみる — Feature Flag Config Generator

フルツールを開く