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

利用可能なインクリメントとちゃんと向き合ったら成長できた / The story that a...

利用可能なインクリメントとちゃんと向き合ったら成長できた / The story that a team was confronted with the available increment

スクラムフェス大阪2023で登壇した際の発表資料です。

[イベントページのURL]
https://www.scrumosaka.org/

[スライドの概要を説明]
スクラムフェス大阪2023の登壇資料です。
https://confengine.com/conferences/scrum-fest-osaka-2023/proposal/18592

株式会社カオナビ

July 04, 2023
Tweet

More Decks by 株式会社カオナビ

Other Decks in Business

Transcript

  1. © kaonavi, inc. 自己紹介
 • 名前:髙橋 朝人(asato) 
 • ロール:スクラムマスター

    || プロダクトオーナー 
 
 • 好き:アジャイル開発、プロダクト開発、温泉、謎解き・クイズ 
 • 苦手:はじめまして、大人数、あんこ、うなぎ 
 2
 @at_946

  2. © kaonavi, inc. 4 チーム紹介
 • Feature:人材配置
 • Framework:LeSS(2 teams)

    
 ◦ PO & SM:It’s me!! It’s anti-pattern!!
 ◦ Designer:1
 ◦ Engineer:8
 ◦ QA Engineer:3

  3. © kaonavi, inc. • “ 開発者はスクラムチームの一員である。各スプリントにおいて、 利用可能なインクリメント のあらゆる側面 を作成することを確約する。 ”

    
 • “ 価値を提供するには、 インクリメントを利用可能に しなければならない。 ” 
 by スクラムガイド
 
 • 「利用可能とは何か」については言及されていない 
 
 • チームの解釈
 ◦ 利用可能 = 全顧客にリリースできる状態 
 利用可能なインクリメント とは 
 6
  4. © kaonavi, inc. • でもうちは特殊だから、 
 ◦ 頻繁なリリースが顧客の不利益になる場合もあるし(マニュアル、周知、問い合わせ、...) 
 ◦

    大きなリリースの方が顧客に伝えやすいしインパクトもあるし 
 ◦ コアなデータを扱う開発は元々規模が大きくなるし 
 
 • リリース時(Nスプリント後)に「利用可能なインクリメント」ならOK! 
 7 でもうちは特殊だから距離を置いた 

  5. © kaonavi, inc. 【転機】FeatureToggles がやってきた 
 8 • (Feature|Release)(Toggles|Flags) 


    ◦ 顧客に機能解放するかどうかを制御する仕組み 
 ◦ カオナビでは顧客単位で制御可能 
 
 • 導入目的:ビッグバンリリースの回避 
 ◦ リリースとデプロイを分離しデプロイ頻度を増やす 
 ◦ 祈りのリリース回避(影響範囲が大きくなりやすい) 
 ◦ 不具合の対応範囲の特定しやすく 
 ◦ 大量のコンフリクトの回避 
 https://hatenanews.com/articles/2023/06/27/103000
  6. © kaonavi, inc. 9 FeatureTogglesを活用すれば、新しいフィードバックループをつくれるのでは!? 
 • ドッグフーディング 🐶
 ◦

    自社の人事メンバーに通常業務で使ってもらう 
 ◦ 人事メンバーからのフィードバックをGet !! 
 
 • Salesデモ 🤝
 ◦ Salesメンバーに提案時のデモで使ってもらう 
 ◦ Salesメンバー & 見込み顧客からのフィードバックをGet !! 
 
 • CSデモ ❤
 ◦ Successメンバーに既存顧客への新規機能紹介で使ってもらう 
 ◦ Successメンバー & 既存顧客からフィードバックをGet !! 
 

  7. © kaonavi, inc. 10 【気づき】利用可能の利用シーンはひとつじゃない 
 • ドッグフーディング 🐶
 ◦

    自社の人事メンバー に通常業務で使ってもらう
 ◦ 人事メンバーからのフィードバックをGet !! 
 
 • Salesデモ 🤝
 ◦ Salesメンバーに提案時のデモで使ってもらう
 ◦ Salesメンバー & 見込み顧客からのフィードバックをGet !! 
 
 • CSデモ ❤
 ◦ Successメンバーに既存顧客への新規機能紹介で 使ってもらう
 ◦ Successメンバー & 既存顧客からフィードバックをGet !! 
 

  8. © kaonavi, inc. • ユーザーストーリーマッピング 
 ◦ ユーザーの体験・物語をベースにユーザーストーリーを整理し、 
 全体像を可視化するアクティビティ、またはその成果物

    
 14 【取り組み】ユーザーストーリーマッピングとエピック 
 エピック1 (利用可能) エピック2 (利用可能) エピック3 (利用可能) バックボーン ユーザーストーリーマッピング リリース
  9. © kaonavi, inc. 17 【取り組み】エピック単位のUndone workの可視化 
 • Undone work

    とは? 
 ◦ “ Doneの定義と潜在的に出荷可能の間にある差分 ” by Done の定義 - Large Scale Scrum (LeSS)
 ◦ 完成の定義には含まれないが、リリースまでには完了させる必要のあるタスク 
 
 • やったこと
 ◦ Undone workリストを作成 
 ◦ エピック単位でUndone workリストから取り組むものをリファインメント 
 ◦ Undone workをエピックの計画づくりに組み込み 

  10. © kaonavi, inc. 19 Undone workが多すぎる… 
 • 状況
 ◦

    Undone workを可視化した結果、undone workだけで2, 3スプリント必要なことが判明 
 
 • 例えば
 ◦ i18n対応
 ◦ ストーリーのE2Eテスト 
 ◦ リグレッションテスト
 ◦ パフォーマンステスト 
 ◦ 補助ドキュメントの作成 
 ◦ リリース手順・切り戻し手順の作成 
 ◦ …

  11. © kaonavi, inc. 20 【取り組み】Undone workの完成の定義化 or 早期着手化 
 •

    i18n対応 👍
 ◦ スプリント内で対応したい&できるものだったので 完成の定義へ
 • ストーリーのE2Eテスト 👍
 ◦ 開発プロセスの見直しと職能にこだわらない行動でスプリント内で対応できるように改善し 完成の定 義へ
 • リグレッションテスト
 ◦ playwrightの活用などを検討中 
 • パフォーマンステスト 
 ◦ スプリント中から大量データで動作をさせてみるなどし予兆を検知するように 
 • 補助ドキュメントの作成 👍
 ◦ 一部スプリント内で対応したい&できるものだったので 完成の定義へ
 • リリース手順・切り戻し手順の作成 
 ◦ リリース直前の実施が効果的・効率的なのでUndone workのまま 

  12. © kaonavi, inc. 22 まとめ
 • 利用可能なインクリメントに向き合うことでチームとしてもう1段階成長できた 
 ◦ ユーザーストーリーマッピングとエピック

    
 ◦ Undone workの可視化 
 ◦ Undone workの完成の定義化 & 早期着手 
 ◦ (エピック見積もりで早くより遠くを見通す) 
 ◦ (LeSSのブランチ戦略) 
 ◦ (スプリントゴールでスプリントに集中) 
 ◦ (スプリントゴールでデイリースクラムが活性化) 
 ◦ (チーム合同モブプログラミング) 
 ◦ (防災訓練(障害対応の練習)) 
 今回の発表内容以外にも 色々な変化がありました! 🎉