Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
私のチームが実践しているスプリントに集中するための取り組み
Search
TK
September 02, 2022
Technology
0
1.9k
私のチームが実践しているスプリントに集中するための取り組み
2022/09/02
TK
September 02, 2022
Tweet
Share
More Decks by TK
See All by TK
アジャイルであり続けるために技術スキルと向き合う
tkredman
4
3.4k
覗いてみよう!現場のスクラムチーム
tkredman
0
2.8k
「守破離の守!」スクラムガイドをみんなで読んでみた。
tkredman
0
1.5k
効果的なスプリントプランニングのトライ
tkredman
0
95
アジャイルに向かう組織に聴いてほしいアジャイルへの第一歩
tkredman
0
43
スクラム開発と向き合うことでスクラムを習得する
tkredman
0
93
たった一つの質問でマインドセットの灯をともせ!
tkredman
0
19
Other Decks in Technology
See All in Technology
テストって楽しい!開発を加速させるテストの魅力 / Testing is Fun! The Fascinating of Testing to Accelerate Development
aiandrox
0
170
データベース04: SQL (1/3) 単純質問 & 集約演算
trycycle
PRO
0
730
Simplify! 10 ways to reduce complexity in software development
ufried
2
240
CodeRabbitと過ごした1ヶ月 ─ AIコードレビュー導入で実感したチーム開発の進化
mitohato14
1
240
Serverlessだからこそコードと設計にはこだわろう
kenichirokimura
2
960
Coding Agentに値札を付けろ
watany
3
460
Terraform にコントリビュートしていたら Azure のコストをやらかした話 / How I Messed Up Azure Costs While Contributing to Terraform
nnstt1
1
470
10分で学ぶ、RAGの仕組みと実践
supermarimobros
0
920
ソフトウェアテスト 最初の一歩 〜テスト設計技法をワークで体験しながら学ぶ〜 #JaSSTTokyo / SoftwareTestingFirstStep
nihonbuson
PRO
1
150
経済メディア編集部の実務に小さく刺さるAI / small-ai-with-editorial
nkzn
2
350
Gateway H2 モジュールで スマートホーム入門
minoruinachi
0
140
TanStack Start 技術選定の裏側 / Findy-Lunch-LT-TanStack-Start
iktakahiro
0
120
Featured
See All Featured
Agile that works and the tools we love
rasmusluckow
329
21k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.6k
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
The Language of Interfaces
destraynor
158
25k
Testing 201, or: Great Expectations
jmmastey
42
7.5k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
The Invisible Side of Design
smashingmag
299
50k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
5
600
Transcript
私のチームが実践している スプリントに集中するための取り組み Retty株式会社 Imai Takaaki 2022/09/02 アジャイルひよこクラブ
自己紹介 • TK (Imai Takaaki) • エンジニア ◦ 2015〜SIer ◦
2021〜Retty株式会社 • @t_k_redman
今日のテーマ
スクラムを始めてみたけど、スプリント中に終わらない
スクラムを始めてみたけど、スプリント中に終わらない
スクラムを始めてみたけど、スプリント中に終わらない 何が終わらない?
• スプリントプランニングで選んだアイテムが完了しない 終わらないとは
• スプリントプランニングで選んだアイテムが完了しない 終わらないとは
• スプリントゴールというものがあるらしい • それはスプリントの唯一の目的であるらしい スクラムガイドによると https://scrumguides.org/docs/scrumguide/v2020/2020-Scrum-Guide-Japanese.pdf
• スプリント中に終わらない • →スプリントの目的が果たせない • →スプリントゴールが達成できない 終わらないとは
①適切なボリュームのアイテムを取る
• スプリントプランニングでプロダクトバックログからアイテムを 選ぶ時に何を考える? ◦ 過去のスプリントから得られたベロシティ? ◦ アイテムの見積もりであるストーリーポイント? 「これなら終わる!」ってどう判断する?
• 事前にある程度見積もらないといけないのでそれも◦ • でもそれだけだと不確実性が高すぎる! • スプリントプランニングでタスク分解することでスプリントの解 像度をあげてから判断したい 実際には計画してみないとわからないことも多い
• 終われそうかを判断するための情報が増えていない • 各タスクで何をやるかのイメージが人によって異なっている可 能性がある 例:解像度があまり上がらないタスク分解 バックエンド 実装 フロント 実装
テスト リリース テーブル設計
• 各タスクの中身が具体化されて暗黙の作業がなくなることで 見通しが立てやすくなる • チームの認識が揃うことで抜け漏れ、考慮漏れが減る 例:解像度が高められるタスク分解 バックエンド 実装 フロント 実装
テスト リリース テーブル設計 CREATE TABLE クエリ作成 テーブル 設計 開発DB クエリ実行 本番DB クエリ実行 レビュー xxxControllerCla ssに xxxメソッド 追加 xxxメソッドがxxx を返すように修 正 xxxのテストコー ド追加 xxxコンポーネン トを作成 xxxが押された時 の処理を修正 xxxプロパティを 受け取れるよう に修正 テスト項目 作成 テストデータ 準備 テスト実施 リリース後 周知
• ただし「スプリント内で絶対終わる安全圏」を確保したいわけで はない • 無計画に決めるのをやめたいだけでバッファ積みまくるとかは 違う • 「無謀でもスクラムなんだからやると決めたらやり切るぞ!」と 言う根性論をやらない 計画を立ててからゴールを確約(コミットメント)
• スプリントプランニングが終わってから改めてPOとゴールの共 通認識をもつ スプリントプランニング後のコミットメント
②スプリントの計画をアップデートする
• 開発が始まっても「終われるか?」は常に気にしておく • 計画をアップデートしながら進む ◦ 「計画通り進められるように頑張る」というよりも「ゴールす るために計画し続ける」 スプリントは油断してるとあっという間
• 計画通りかどうかわかる目安 • 計画からズレたことを検知する仕組み 計画アップデートのために必要なこと
計画通りかどうかわかる目安 スプリント終了までの日割りのタス ク量をイメージできるようにラインを ひいている ギリギリになってくると半日単位 でひいていくこともある
• 普通にデイリースクラムで確認 計画からズレたことを検知する仕組み Day 5 Day 4 Day 3 Day
2 Day 1 Daily Scrum Daily Scrum Daily Scrum Daily Scrum Daily Scrum
• 普通にデイリースクラムで確認 • 加えて同期タイムを決めて確認している 計画からズレたことを検知する仕組み Day 5 Day 4 Day
3 Day 2 Day 1 Daily Scrum Daily Scrum Daily Scrum Daily Scrum Daily Scrum
• スプリントプランニングで立てた計画はあくまでもその時点で わかっている情報を元に立てたもの • 進めていく中で情報量が増えれば打ち手も変わってくる スプリントゴール達成のためにできることをやる そこの実装がボトルネックに なってきそうだから先に片付け よう! この部分はAさんが詳しいからタスク割り振
り変えてスピードアップ図ろう! その仕様はマストじゃなさそうだか らPOに相談してスコープから外そ う!
③目的を考慮してスプリントを終える
• ただそのまま「終わりませんでした」はもったいない • できるだけ上手に着地を決められるようにする それでも計画通りいかないことはある
• スプリントゴールというものがあるらしい • それはスプリントの唯一の目的であるらしい 再・スクラムガイドによると https://scrumguides.org/docs/scrumguide/v2020/2020-Scrum-Guide-Japanese.pdf
• 選んだアイテムをやり切るのが全てじゃない • 当初想定とは別の形でゴールが達成できるならそういった選 択肢も考える スプリントゴールにできるだけ近づく Web申し込みが できるようにする Product Backlog
Items Web申し込み フォーム フォームへの 導線追加 販促ページの 公開 A案 B案 コスト <
• 次に繋げられるように受け身を取る ◦ 一部の仕様を別のアイテムに切り出す ◦ 残対応が整理しやすいようなタスクの取り方をする ▪ スプリント跨いでダラダラ続けない • タスク消化率ではなく動くものをアウトプットする
◦ ここまで動いているけど、この機能が足りていない ◦ この機能だけバグが残っている スプリントゴールの達成ができないとしても
まとめ
• 適切なボリュームのアイテムを取る • スプリントの計画をアップデートする • 目的を考慮してスプリントを終える スプリント中に終わらせるために
ご清聴ありがとうございました!