この投稿は、アジャイル開発 Advent Calendar 2018の25日目です。
昨日は、@matsu0228さんの「ヨーロッパ最大のアジャイル・テスト自動化カンファレンス「AgileTestingDays2018」に参加してきた」でした。
この記事は、約半年間、スクラムマスターとして経験したアンチパターンの振り返りとそれに関連するスクラムの概念のまとめです。
記事下部にリンクしてあるLT資料からの抜粋 + α の内容なので併せてご覧ください。
アンチパターン集
リリースバーンダウンチャート
- これは正直判断が難しいですが、SCMでは、3ー4スプリント以上の未来予測はウォーターフォールになってしまうのでリリースバーンダウンは非推奨と言われました。一方で、組織としてはリリース予定日の決定と、それに向かっての経過報告は避けきれない部分もあったので、PBI(プロダクトバックログアイテム)を積んで、6スプリント先までの未来予測を行いました。結果、合計100ptのストーリーポイントが、リリース時には170ptまでにふくれあがっていましたが、チームの成長も相まってリリース日は守りきりました。
序盤の見積もりの精度は相対的に低めであることから、やはりあまり長期のPJにはリリースバーンダウンは非推奨だと感じます。
あまりに未来日のリリースポイントをに設定しすぎないような検討と併せて使うのならば効果的だと考えます。
人の入れかわりへの対応
スクラム開発は、「長期的に安定したメンバーによって構成される」という原則がありますが、実際にPJを進める中で以下の困難にぶつかりました。
- バス因子になっていたメンバーの離脱
- 新規メンバーの加入
人の減少は私がコントロールできるレベルを超えている事象でしたが、今後は「この人が抜けたら困る」という人数をいかに減らすかという視点を手に入れることができました。
また、私個人としても「失敗したなあ」と感じていた新規参入者のオンボーディングについて、PJ全体の振り返りの場で当人からキャッチアップするまでかなりしんどかったとのフィードバックをもらいました。もっとペアプロなどを活用して、自分がスクラムチームの一員だと感じてもらうまでのプロセスには気を配るべきだと反省しております。
一方で、少ない開発リソースしか持たない組織において、既存プロダクトの理解と進行中の新規機能開発のどちらに比重をおいて教育すべきか?というのは自分の中でも答えが出ていない部分です。コメント待ってます。
チームの学習レベルにあわせた行動ができなかった
もっと早くElastic Leadershipを読んでおけばよかったなと思います。同著によれば、チームの学習レベルは以下の3フェーズに分けられます。
- サバイバルフェーズ
- 仕事に追われている状態。自律的な判断というより統率者が必要。
- 学習フェーズ
- チームに学習に使う時間がある状態。ティーチングよりもコーチングが必要。
- 自己組織化フェーズ
- チームメンバーが自律的に意思決定ができる。ファシリテーターが必要。
今自分のチームがどのフェーズにいるのか?という問いと理解は戦略上必要だと思います。この概念を理解せずに、スクラムの「自己組織化されたチーム」という文言に囚われてしまったのは失敗でした。
学習という変数を考慮に入れておらず、モチベーションに負の影響を与えた
序盤のベロシティ低迷期に、学習の途上なので今は下がるのはしょうがないという考えでファシリテートできなかったのは勉強不足でした。
また、当初はスプリントゴールの設定をしていなかったため、スプリントプランニングで決定したストーリーの全消化そのものが目標になってしまい、チームで開発をしている一体感が出せませんでした。
スプリントゴールを決め、チームに対してこれを学習してもらうぞという戦略を実行し始めてから、スクラムがかなりうまく回るようになった気がします。
最終的には、平均ベロシティも10ptだったものが30pt程度まで上昇しました。
一方で、仮に学習をしないメンバーがいるとスクラム開発の前提が崩れます。そういう場合は、本人に改善を求め、それでもダメならチームから外れていただくというアプローチが必要になると思います。
振り返り
PJ終了後、チームとして振り返りを行いました。
参考:https://blog.lucidmeetings.com/blog/how-to-lead-a-successful-project-retrospective-meeting
何を得たか
リリースできた成果物があることもさることながら、この数ヶ月の経験から学習し、HRTの原則を理解しているメンバーがいることが財産なのだと思います。スクラム開発における「長期的に安定したメンバー」、「職能横断的な組織」、どちらもハードルは高いですが、学習意欲のあるメンバーが一つのPJをやりきったというのはチームの成長なのだと思います。
発表資料
この題材でLTした際に使用した発表資料です。
https://speakerdeck.com/mpls104/experienced-anti-pattern-as-a-scrum-master