Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Four Keysに基づくリリースプロセス改善とその成果 / Release process improvement based on the Four Keys and its results

Four Keysに基づくリリースプロセス改善とその成果 / Release process improvement based on the Four Keys and its results

akihisa1210

October 07, 2023
Tweet

More Decks by akihisa1210

Other Decks in Technology

Transcript

  1. Four Keys ⚫ DevOps Research and Assessment(DORA)が特定した、 ソフトウェア開発チームのパフォーマンスを示す 4つの重要なメトリクス ⚫

    Are you an Elite DevOps performer? Find out with the Four Keys Project https://cloud.google.com/blog/products/devops-sre/using- the-four-keys-to-measure-your-devops-performance?hl=en ⚫ 2022 Accelerate State of DevOps Report https://cloud.google.com/devops/state-of-devops
  2. Four Keys(各項目・DORA版) デプロイ頻度 Deployment Frequency 本番環境へのデプロイの頻度 変更のリードタイム Lead Time for

    Changes コミットが本番環境にリリースされるまでの時間 変更障害率 Change Failure Rate デプロイが本番環境に障害をもらたす割合 サービス復元時間 Time to Restore Service 本番環境の障害を復旧させるまでの時間
  3. Four Keys(パフォーマンスの目安) (From “2022 Accelerate State of DevOps Report”) Low

    Medium High デプロイ頻度 Deployment Frequency 毎月~6か月ごと 毎週~毎月 必要な時に(1日複数回) 変更のリードタイム Lead Time for Changes 1か月~6か月 1週間~1か月 1日~1週間 変更障害率 Change Failure Rate 46%~60% 16%~30% 0%~15% サービス復元時間 Time to Restore Service 1週間~1か月 1日~1週間 1日未満
  4. Four Keys + 1 ⚫ 2021年から追加されている「信頼性 Reliability」ではなく…… ⚫ 変更サイズ ⚫

    『LeanとDevOpsの科学』によると、Four Keysに もともと採用しようとしていたのはデプロイ頻度ではなく バッチサイズ(p.26) ⚫ Garoonチームでは、1つのリリースに含まれる プロダクトバックログアイテム(PBI)の数を測定した
  5. 新しいリリースプロセスの特徴 従来のリリースプロセス 新しいリリースプロセス リリースする単位 特定のタイミングでまとめて リリースしたい複数のPBI 1つのPBI リリースする頻度 月に1回、または緊急時 いつでも

    リリースに関わる人 開発チーム、QAチーム、プロダク トマネージャー、基盤チーム、他プ ロダクト開発チームなど 開発チーム リリースに必要な(手動の)作業 リリースする成果物の特定、リリー ス日程の調整、自動化されていな いリグレッションテスト、リリースシ ステムへの情報登録など マージ
  6. チーム内外の共感を得る(1) ⚫ オピニオンリーダーを巻き込む & 活動を相手に合わせて伝える ⚫ プロダクトマネージャーに対して ⚫ リリースの調整コストが削減できることをアピール ⚫

    テクニカルサポートのメンバーに対して ⚫ 不具合の問い合わせがあっても、すぐに改修してリリースできる ようになることをアピール
  7. リリースに関する課題の状況 ⚫ ビッグバンリリースが常態化している ⚫ 小さなリリースを可能にするリリースプロセスができ、運用中! ⚫ 機能がリリースされるまで時間がかかる ⚫ 今のところ変化なし ⚫

    リリース後の障害の改修にも時間がかかる ⚫ 障害復旧のためのリリースが簡単にできるようになった! ⚫ 複数チームが利害関係者になっているリリースプロセスが複雑で制約が多い ⚫ 開発チームだけでリリースができるようになった!
  8. よかった点(1) ⚫ Four Keysを活用できた ⚫ 現状の測定に ⚫ 改善の方向決定に ⚫ 改善の共感を得るコミュニケーションに

    ⚫ 測定からアクションまでを一貫して行う上で、 目安にできる客観的な指標があるのはありがたい
  9. よかった点(2) ⚫ 少しずつでも改善に着手した ⚫ 新しいリリース方式でリリースできるものは、最初は少なかった ⚫ それでも新しいリリース方式を実際に導入してみることで ⚫ 新しいプロセスの課題が明確になったり ⚫

    新しいリリース方式の嬉しさが色々な人に伝わったり ⚫ フィードバックを得られてモチベーションが上がったりした ⚫ 始める + 一緒にやる + 応援する