Slide 1

Slide 1 text

私のチームが実践している
 スプリントに集中するための取り組み
 Retty株式会社
 Imai Takaaki
 2022/09/02 アジャイルひよこクラブ 


Slide 2

Slide 2 text

自己紹介
 ● TK (Imai Takaaki)
 ● エンジニア
 ○ 2015〜SIer
 ○ 2021〜Retty株式会社
 ● @t_k_redman


Slide 3

Slide 3 text

今日のテーマ


Slide 4

Slide 4 text

スクラムを始めてみたけど、スプリント中に終わらない


Slide 5

Slide 5 text

スクラムを始めてみたけど、スプリント中に終わらない


Slide 6

Slide 6 text

スクラムを始めてみたけど、スプリント中に終わらない
 何が終わらない?

Slide 7

Slide 7 text

● スプリントプランニングで選んだアイテムが完了しない
 終わらないとは


Slide 8

Slide 8 text

● スプリントプランニングで選んだアイテムが完了しない
 終わらないとは


Slide 9

Slide 9 text

● スプリントゴールというものがあるらしい
 ● それはスプリントの唯一の目的であるらしい
 スクラムガイドによると
 https://scrumguides.org/docs/scrumguide/v2020/2020-Scrum-Guide-Japanese.pdf

Slide 10

Slide 10 text

● スプリント中に終わらない
 ● →スプリントの目的が果たせない
 ● →スプリントゴールが達成できない
 終わらないとは


Slide 11

Slide 11 text

①適切なボリュームのアイテムを取る


Slide 12

Slide 12 text

● スプリントプランニングでプロダクトバックログからアイテムを 選ぶ時に何を考える?
 ○ 過去のスプリントから得られたベロシティ?
 ○ アイテムの見積もりであるストーリーポイント?
 「これなら終わる!」ってどう判断する?


Slide 13

Slide 13 text

● 事前にある程度見積もらないといけないのでそれも○
 ● でもそれだけだと不確実性が高すぎる!
 ● スプリントプランニングでタスク分解することでスプリントの解 像度をあげてから判断したい
 実際には計画してみないとわからないことも多い


Slide 14

Slide 14 text

● 終われそうかを判断するための情報が増えていない
 ● 各タスクで何をやるかのイメージが人によって異なっている可 能性がある
 例:解像度があまり上がらないタスク分解
 バックエンド
 実装
 フロント
 実装
 テスト
 リリース
 テーブル設計


Slide 15

Slide 15 text

● 各タスクの中身が具体化されて暗黙の作業がなくなることで 見通しが立てやすくなる
 ● チームの認識が揃うことで抜け漏れ、考慮漏れが減る
 例:解像度が高められるタスク分解
 バックエンド
 実装
 フロント
 実装
 テスト
 リリース
 テーブル設計
 CREATE TABLE
 クエリ作成
 テーブル
 設計
 開発DB
 クエリ実行
 本番DB
 クエリ実行
 レビュー
 xxxControllerCla ssに
 xxxメソッド
 追加
 
 xxxメソッドがxxx を返すように修 正
 
 xxxのテストコー ド追加
 
 xxxコンポーネン トを作成
 
 xxxが押された時 の処理を修正
 
 xxxプロパティを 受け取れるよう に修正
 
 テスト項目
 作成
 
 テストデータ
 準備
 
 テスト実施
 リリース後
 周知


Slide 16

Slide 16 text

● ただし「スプリント内で絶対終わる安全圏」を確保したいわけで はない
 ● 無計画に決めるのをやめたいだけでバッファ積みまくるとかは 違う
 ● 「無謀でもスクラムなんだからやると決めたらやり切るぞ!」と 言う根性論をやらない
 計画を立ててからゴールを確約(コミットメント)


Slide 17

Slide 17 text

● スプリントプランニングが終わってから改めてPOとゴールの共 通認識をもつ
 スプリントプランニング後のコミットメント


Slide 18

Slide 18 text

②スプリントの計画をアップデートする


Slide 19

Slide 19 text

● 開発が始まっても「終われるか?」は常に気にしておく
 ● 計画をアップデートしながら進む
 ○ 「計画通り進められるように頑張る」というよりも「ゴールす るために計画し続ける」
 スプリントは油断してるとあっという間


Slide 20

Slide 20 text

● 計画通りかどうかわかる目安
 ● 計画からズレたことを検知する仕組み
 計画アップデートのために必要なこと


Slide 21

Slide 21 text

計画通りかどうかわかる目安
 スプリント終了までの日割りのタス ク量をイメージできるようにラインを ひいている ギリギリになってくると半日単位 でひいていくこともある

Slide 22

Slide 22 text

● 普通にデイリースクラムで確認
 計画からズレたことを検知する仕組み
 Day 5 Day 4 Day 3 Day 2 Day 1 Daily Scrum Daily Scrum Daily Scrum Daily Scrum Daily Scrum

Slide 23

Slide 23 text

● 普通にデイリースクラムで確認
 ● 加えて同期タイムを決めて確認している
 計画からズレたことを検知する仕組み
 Day 5 Day 4 Day 3 Day 2 Day 1 Daily Scrum Daily Scrum Daily Scrum Daily Scrum Daily Scrum

Slide 24

Slide 24 text

● スプリントプランニングで立てた計画はあくまでもその時点で わかっている情報を元に立てたもの
 ● 進めていく中で情報量が増えれば打ち手も変わってくる
 スプリントゴール達成のためにできることをやる
 そこの実装がボトルネックに なってきそうだから先に片付け よう! この部分はAさんが詳しいからタスク割り振 り変えてスピードアップ図ろう! その仕様はマストじゃなさそうだか らPOに相談してスコープから外そ う!

Slide 25

Slide 25 text

③目的を考慮してスプリントを終える


Slide 26

Slide 26 text

● ただそのまま「終わりませんでした」はもったいない
 ● できるだけ上手に着地を決められるようにする
 それでも計画通りいかないことはある


Slide 27

Slide 27 text

● スプリントゴールというものがあるらしい
 ● それはスプリントの唯一の目的であるらしい
 再・スクラムガイドによると
 https://scrumguides.org/docs/scrumguide/v2020/2020-Scrum-Guide-Japanese.pdf

Slide 28

Slide 28 text

● 選んだアイテムをやり切るのが全てじゃない
 ● 当初想定とは別の形でゴールが達成できるならそういった選 択肢も考える
 スプリントゴールにできるだけ近づく
 Web申し込みが
 できるようにする
 Product Backlog Items Web申し込み フォーム
 フォームへの 
 導線追加
 販促ページの 公開
 A案
 B案
 コスト
 <


Slide 29

Slide 29 text

● 次に繋げられるように受け身を取る
 ○ 一部の仕様を別のアイテムに切り出す
 ○ 残対応が整理しやすいようなタスクの取り方をする
 ■ スプリント跨いでダラダラ続けない
 ● タスク消化率ではなく動くものをアウトプットする
 ○ ここまで動いているけど、この機能が足りていない
 ○ この機能だけバグが残っている
 スプリントゴールの達成ができないとしても


Slide 30

Slide 30 text

まとめ


Slide 31

Slide 31 text

● 適切なボリュームのアイテムを取る
 ● スプリントの計画をアップデートする
 ● 目的を考慮してスプリントを終える
 スプリント中に終わらせるために


Slide 32

Slide 32 text

ご清聴ありがとうございました!