Four Keys 変更障害率の重要性と改善方法

目次

はじめに

ソフトウェア開発の生産性を測る指標は多岐にわたりますが、その中でも変更障害率(Change Failure Rate、CFR)は、変更時に発生する障害の割合を示す重要な指標です。

Four Keys を用いた生産性可視化や改善などの業務は、プラットフォームエンジニアが支援する領域となり得ます。この記事は、Four Keys 関連の業務を行うことになったプラットフォームエンジニアや旗振り役のエンジニアに向けて書きました。ぜひ最後までご覧ください。

変更障害率とは

変更障害率(CFR)は、リリースやデプロイ後に発生した障害の割合を示す指標です。これは、システムの安定性とリリースの品質を評価するための重要なメトリクスとなります。CFR が低いほど、リリースの質が高く、安定していることを意味します。

変更障害率を見る理由

CFR に着目したり改善したりすると、以下のようなメリットがあります。

  • 品質評価:リリースの品質を評価するための重要な指標として機能する。
  • 信頼性向上:CFR の低減は、システムの信頼性が向上していることを意味する。
  • 顧客満足度の向上:安定したリリースにより、顧客満足度が高まる。
  • 開発効率の向上:問題の発生を減少させ、開発効率が向上する。

変更障害率を改善する方法

改善方法について考える前に以下の疑問にまず答えます。

  • そもそも改善する必要があるかどうかどう判断すればいいの?
  • 改善する方法の前にまずは原因の話からじゃない?

前者についてはベンチマークがあるのでこのあと紹介します。

後者については以下で触れているので、この記事では割愛します。

改善すべきかどうか判断するためのベンチマーク

それではまずベンチマークから紹介します。

レベルMTTR の値
Elite5.0%未満
High5.0%以上-10.0%未満
Medium10.0%以上-15.0%未満
Low15.0%以上
CFR のベンチマーク

これをもとに組織で改善すべきかどうか判断しましょう。CFR 以外も生産性を測る指標は色々ありますし、他の案件もあるでしょう。それらの中から適切に優先度を決めていきましょう。

具体的な施策

CFR を改善するための具体的な施策としては、たとえば以下のようなものがあります。「技術者のスキルをあげる」とかは意図的に省いていて、どちらかといえば仕組みで解決する系のものを集めました。

施策有効とされる理由具体例
コードの品質を高く保つ高品質なコードにはバグが混入しづらいコードレビュー、静的解析ツールの活用
テストを整備するリリース前に問題が発見できれば、その分リリース後の障害発生数を減少させられる単体テスト、結合テスト、E2Eテスト
デプロイプロセスを自動化する人為的なミスを減らせるCI/CD ツール導入
フィーチャーフラグを使う新機能の影響が限定的になるので、問題の発生確率を下げられるフィーチャートグル
ポストモーテムの実施障害の再発防止策を講じることができる障害発生後の振り返り、レビュー、改善策の実施
リリース戦略を整備するリリースの頻度や粒度などを適切に管理して、リリースの安定性を向上させられる段階的リリース、カナリアリリース
CFR を改善する具体的な施策

さいごに

CFR については今回紹介した内容を理解することが第一歩です。Four Keys を計測して PDCA サイクルを回していく開発組織は肌感として増えてきた印象です。いきなり完璧にはいかないとは思いますが、少しずつその組織でできることをやっていくことで、着実に強い開発組織になると思います。ので頑張っていきましょう。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

歴1年のプラットフォームエンジニアで、その前は7年程度ソフトウェアエンジニアをしていました。
HR系の大手SaaS企業に所属しています。
プラットフォームエンジニアリングに興味あり。

コメント

コメントする

目次