ソフトフェア開発チームのパフォーマンスを測定する4つの指標
問題
開発プロセスの効率性と効果性をどのように測定し、持続的に改善していくのか?
4つの指標
速度
デプロイ頻度:本番環境へのリリース頻度
変更リードタイム:commitから本番環境へのリードタイム
安定性
変更障害率:デプロイが原因で本番環境で障害が発生する割合
サービス復元時間:障害から回復するのにかかる時間
改善プロセス
https://scrapbox.io/files/65461abaa3cd26001cd9b99c.pnghttps://scrapbox.io/files/65461bb8dd1b48001bb53808.png
1.icon事実を集める
2.icon事実を元に仮説を立てる
3.icon仮説に対する対策案を実施する
4.icon実施結果を計測し変化を確認する
5.icon改善サイクルを回しながら目指す姿に近づいているか?を確認する
具体例
デプロイ頻度の増加
自動化されたCI/CDパイプラインを導入して、コードの変更があるたびに自動でテストとデプロイが行われるようにする
リードタイムの短縮
マイクロサービスアーキテクチャを採用してサービスを小さな単位に分割し、変更が小さくなるようにする。これにより、コードのコミットから本番環境へのデプロイまでの時間を数週間から数時間に短縮する
変更時の失敗率の低減
包括的な自動テストスイートを開発し、コードの変更が既存の機能に悪影響を与えないことを保証し、デプロイ時の失敗率を25%から5%以下に低減する
障害発生時の復旧時間の短縮
モニタリングとアラートシステムを強化し、障害をリアルタイムで検出して迅速に対応できるようにする
障害発生時の自動ロールバック機能を実装して、復旧時間を数日から数分に短縮する
参考