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
October 02, 2021
Technology
0
84
効果的なスプリントプランニングのトライ
Scrum fest Osaka 2021
TK
October 02, 2021
Tweet
Share
More Decks by TK
See All by TK
私のチームが実践しているスプリントに集中するための取り組み
tkredman
0
1.9k
アジャイルであり続けるために技術スキルと向き合う
tkredman
4
3.3k
覗いてみよう!現場のスクラムチーム
tkredman
0
2.7k
「守破離の守!」スクラムガイドをみんなで読んでみた。
tkredman
0
1.4k
アジャイルに向かう組織に聴いてほしいアジャイルへの第一歩
tkredman
0
40
スクラム開発と向き合うことでスクラムを習得する
tkredman
0
87
たった一つの質問でマインドセットの灯をともせ!
tkredman
0
16
Other Decks in Technology
See All in Technology
OCI Network Firewall 概要
oracle4engineer
PRO
0
4.1k
SREによる隣接領域への越境とその先の信頼性
shonansurvivors
2
520
複雑なState管理からの脱却
sansantech
PRO
1
140
iOSチームとAndroidチームでブランチ運用が違ったので整理してます
sansantech
PRO
0
130
OTelCol_TailSampling_and_SpanMetrics
gumamon
1
120
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
2
3.2k
マルチプロダクトな開発組織で 「開発生産性」に向き合うために試みたこと / Improving Multi-Product Dev Productivity
sugamasao
1
300
Engineer Career Talk
lycorp_recruit_jp
0
170
マルチモーダル / AI Agent / LLMOps 3つの技術トレンドで理解するLLMの今後の展望
hirosatogamo
37
12k
EventHub Startup CTO of the year 2024 ピッチ資料
eventhub
0
110
20241120_JAWS_東京_ランチタイムLT#17_AWS認定全冠の先へ
tsumita
2
250
障害対応指揮の意思決定と情報共有における価値観 / Waroom Meetup #2
arthur1
5
470
Featured
See All Featured
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
4 Signs Your Business is Dying
shpigford
180
21k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
191
16k
Making Projects Easy
brettharned
115
5.9k
How to Ace a Technical Interview
jacobian
276
23k
Side Projects
sachag
452
42k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
246
1.3M
How GitHub (no longer) Works
holman
310
140k
Building an army of robots
kneath
302
43k
5 minutes of I Can Smell Your CMS
philhawksworth
202
19k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
860
Gamification - CAS2011
davidbonilla
80
5k
Transcript
効果的なスプリントプランニングのトライ Retty株式会社 今井貴明 Scrum Fest Osaka 2021 2021/06/26
自己紹介 • TK (Imai Takaaki) • エンジニア ◦ 2015~ SIer
◦ 2021~ Retty株式会社 • @t_k_redman
今日のお話
スプリントプランニングについて話します • スプリントプランニングってどんなことするイメージ?
スクラムガイドによると・・・ https://scrumguides.org/docs/scrumguide/v2020/2020-Scrum-Guide-Japanese.pdf スプリントプランニングは次のトピックに対応する: トピック 1:このスプリントはなぜ価値があるのか? トピック 2:このスプリントで何ができるのか? トピック 3:選択した作業をどのように成し遂げるのか?
スクラムガイドによると・・・ https://scrumguides.org/docs/scrumguide/v2020/2020-Scrum-Guide-Japanese.pdf スプリントプランニングは次のトピックに対応する: トピック 1:このスプリントはなぜ価値があるのか? トピック 2:このスプリントで何ができるのか? トピック 3:選択した作業をどのように成し遂げるのか? 端的に言えば
「やることを決めてタスク分解」 ・・・かな?
スクラムガイドによると・・・ https://scrumguides.org/docs/scrumguide/v2020/2020-Scrum-Guide-Japanese.pdf スプリントプランニングは次のトピックに対応する: トピック 1:このスプリントはなぜ価値があるのか? トピック 2:このスプリントで何ができるのか? トピック 3:選択した作業をどのように成し遂げるのか? 今日は特にこの部分について
スプリントプランニングで実現できると思ってること • スプリントゴールまでの道のりをクリアにする • デイリースクラムの効果を上げる • 開発チーム内の文化ができる
きっかけ
スクラム学び始めのスプリントプランニング理解 スクラムマスター 兼 開発者の私 スプリントの計画を立て るんだな〜〜〜 タスク分解な〜 完全理解 ガイド読んだ
トレーニング受けた • スクラムガイドとかの説明を読むと一応理解できる • スクラムイベントの中では比較的イメージしやすいイベントではあると思う
やってみると難しい① • タスクが大きくなりすぎたりふわっとしてしまう ◦ やってみないと、調べてみないとわからないからざっくりタスク化 ◦ タスクボリュームが読めなくてバッファを積んでしまう 調査 確認
やってみると難しい② • タスクが属人化してしまう ◦ 詳しい人しか取れないタスクができる ◦ スキル的に取れるタスクが限られる
やってみると難しい③ • 時間がかかりすぎてしまう ◦ 半日とか1日とかかかってしまってもっと短くしたい ◦ 作業に費やす時間の割合が減ってしまう
昔々あるところのチーム • チームメンバーは自分を含む4人 • 結成3ヶ月くらい • スクラムビギナーズ • 自力でコーディングできるメンバーは半分
チームの抱えるスプリントプランニングの悩み タスクが 大きすぎる タスクによって特定の 人に偏ってしまう スプリントプランニング に時間がかかる
チームの抱えるスプリントプランニングの悩み タスクが 大きすぎる タスクによって特定の 人に偏ってしまう スプリントプランニング に時間がかかる
一番の課題はスキル差 • 一人では取れないタスクも多くありパフォーマンスに影響が出 ていた • コーディング経験が浅いメンバーを常にフォローしながら進め ている状態
自力で書ける・書けないの違いは何? • コーディング経験が浅いメンバーも、基本的な文法理解はある し一緒に処理を追えば読むこともできる • ヒアリングしていくと「何から手をつけたらいいかわからない」と いう課題がありそう
• コーディングって何から始めてどうやって進めてたっけ? 無意識でやっていることを言語化してみる 処理の大枠の流れから••• データ取り回しに必要な処理を 洗い出し••• モデルクラス•••関数•••
それをみんなでやってみれば良いのでは • 普段は頭の中で無意識にやっている手順を会話で確認しなが らスプリントプランニングでみんなでやってみることにした
トライと結果
スプリントプランニングでやったこと① • 処理順を会話で確認しながら実装内容をコメントで書いていく ◦ 最初は「ここでこの配列をループさせてこの変数に値を入 れていく」くらいまで ◦ 基準は「みんなが自力でコーディングできる」こと • コメントをキリのいい範囲で切って一つのタスクにする
スプリントプランニングでやったこと② • わからないことがあった場合は調査 ◦ 細かくタスクを切っていくためには不確実なことをなくして いくことが必然 ◦ APIの仕様、データ構造の検討、既存処理把握など今まで 調査タスクにしていたものは全てスプリントプランニング内 で消化した
細かくタスク分解していった結果 タスクが 大きすぎる タスクによって特定の 人に偏ってしまう スプリントプランニング に時間がかかる • 誰が見てもやることが明白な状態になり誰でもタスクが取れる •
経験が浅いメンバーに対してレクチャーもできた
細かくタスク分解していった結果 • 属人化排除のためのタスク細分化でやることがクリアに • 不確定要素が減ってバッファを積む必要がなくなった • メンバー間での仕様の認識乖離がスプリント序盤で解消した タスクが 大きすぎる タスクによって特定の
人に偏ってしまう スプリントプランニング に時間がかかる
細かいタスク分解でチームの文化ができてきた • スキルの高い人に引っ張られてレベルが底上げされる • レベルが上がると必要なタスク粒度や表現方法も変わる • 思想が揃ってくる ◦ クラスやコンポーネントの設計、関数の切り方、モデル化 などのルールが確立されていく
未解決の課題 • 調査事項も消化しながらタスク細分化までやるので当然さらに 時間はかかる タスクが 大きすぎる タスクによって特定の 人に偏ってしまう スプリントプランニング に時間がかかる
時間かかってもいいんじゃない? • むしろこれくらいやらないとスプリントゴールまでの道なんて見 通せない =タスク粒度が粗いと検査の精度が上がらない • なぜ「調べないと分からない」ことが残ってるのにスプリント ゴールが達成できると思っていたのか・・・
そうは言ってもMTGに時間をかけたくない・・・ • 手を動かしてない時間が増えると不安が募る ◦ 当時スプリントプランニングに1.5日くらいかけてた ◦ 1週間スプリントなので手を動かせるのは60%くらい
そもそもMTGとして捉えない方がいい • WFでいうところの詳細設計をしている • 設計工程をモブワークしているのだと思えばこれも必要な時 間
でもそんなに細かくして大丈夫? • タスク間の依存度上がらない? ◦ 時間にして15分とか30分のタスクになる ◦ きれいに疎結合のタスクにするのは難しい • 結局一連のタスクを同じ人がとることにならない? ◦
それスクラム的にどうなの? ◦ それなら細分化しなくても一緒じゃない?
目的は「透明性を上げる」こと • 全てのタスクを疎結合にすることが目的ではない 半日見込みのタスクに昨日から着手 してます。 多分昼過ぎくらいに終わります。 例えばデイリースクラムで・・・ 30分見込みのタスクが半分くらい仕 掛かってます。 次はこの30分タスク取って、午前中は
3つくらい消化できそうです。 スプリントゴールに向けた検査がしやすいのはどっち?
ブラックボックスこわい • 半日で終わる根拠がわからない • 当人が気付いていない問題が眠っているかも • 「このタスク思ったより時間かかった」というときに振れ幅が大 きい
「依存関係になりにくい設計にする」という考え方も • 「必要な関数は何か」という視点で分解していくなど ◦ 依存関係のあるタスクを少なくできる • タスク細分化のためだけにそうするわけでもない ◦ リファクタリングしながら計画するイメージ •
関数ごとに実装するならついでにテストも書いちゃったり ◦ どこかで聞いたような設計方法論がハマりそう
まとめ
スプリントプランニングで実現できると思ってること • スプリントゴールまでの道のりをクリアにする • デイリースクラムの効果を上げる • 開発チーム内の文化ができる
スプリントプランニングで実現できると思ってること • スプリントゴールまでの道のりをクリアにする • デイリースクラムの効果を上げる • 開発チーム内の文化ができる • 不確実なことはクリアにしてしまってやることを明白にする •
タスク細分化の過程で実現内容(仕様)の認識をすり合わせる
スプリントプランニングで実現できると思ってること • スプリントゴールまでの道のりをクリアにする • デイリースクラムの効果を上げる • 開発チーム内の文化ができる • タスクが細かい方が透明性が高まる(ブラックボックスになりにくい) •
スプリントゴールに向けた進捗の検査精度が高まる • 日々の、もっと言えば毎時のステータスが見える
スプリントプランニングで実現できると思ってること • スプリントゴールまでの道のりをクリアにする • デイリースクラムの効果を上げる • 開発チーム内の文化ができる • スキルが高い人に引っ張られる •
タスク粒度の基準を「誰でも一人でできる」にすることでチームのレベルにあったタ スク粒度になっていく • 設計や実装の思想が揃う
言いたいこと スプリントプランニングでは スプリントゴールを見通せる細かいタスク分解が良さそう!
おまけ • CSMとかCSPOのトレーニングで言われて今になって分かった気がすること ◦ 「設計はスプリントプランニング内で行うんです」 ▪ →そうだね ◦ 「スプリントの成功はプランニングで8割決まります(トレーナー調べ)」 ▪
→そうかも ◦ 「スプリントプランニングで立てる計画は一つでなければいけないとは決まってませ ん」 ▪ →どうしてもプランニング内でクリアにしきれない不明事項は条件分岐後の計 画もしっかり立ててスプリントゴールを見通せってことかな?
ご清聴ありがとうございました!