はじめに
皆様、初めまして。テクノロジー本部ITエンジニア部の石脇と申します。現在は開発者やPO(プロダクトオーナー)を担当しています。
現在のプロジェクトではアジャイル開発を取り入れており、プロジェクトをより良くするためにまだまだ改善できる点があるのではないかと考えていました。そのタイミングでアジャイルの基礎を学べる社内のアジャイルトレーニングの存在を知り参加しました。
アジャイルトレーニングを通して特に印象に残っていることは下記となります。
- エムティーアイで推奨されている各スクラムイベントの参加者
- 各スクラムイベントのタイムボックス
- 何故タイムボックスを守る必要があるのか
※こちらは、アジャイルトレーニング内で紹介いただいた書籍の内容となります。
また、これらの学びから「プロジェクトをより良くしていくために見直していくべき点」についても気づくことができました。
そのため、本記事では私の学び・気づきとなった「スクラムイベントの参加者とタイムボックス」について紹介します。本記事を通して、プロジェクトをより良くしてきたいと考えている方々のお力に少しでもなれれば幸いです。
本記事の構成は下記となります。
- スクラムイベントとは
- スプリントプランニング
- デイリースクラム
- スプリントレビュー
- スプリントレトロスペクティブ
- プロダクトバックログリファインメント
- スクラムイベントの参加者
- スクラムイベントのタイムボックス
スクラムイベントとは
スプリント期間中に開催される下記5つのことです。
- スプリントプランニング
- デイリースクラム
- スプリントレビュー
- スプリントレトロスペクティブ
- プロダクトバックログリファインメント
※プロダクトバックログリファインメントは公式のイベントではない
スクラムガイドでは下記のように記載されています。
スプリントは他のすべてのイベントの⼊れ物である。スクラムにおけるそれぞれのイベントは、スクラムの作成物の検査と適応をするための公式の機会である。これらのイベントは必要な透明性を実現するために明確に設計されている。規定通りにイベントを運⽤しなければ、検査と適応の機会が失われる。スクラムにおけるイベントは、規則性を⽣み、スクラムで定義されていない会議の必要性を最⼩限に抑えるために⽤いられる。 すべてのイベントは、複雑さを低減するために、同じ時間と場所で開催されることが望ましい。
つまり、スクラムチームの状況を可視化し、望ましくない変化や問題を検知し対応する。そのための必要最小限のミーティングがスクラムイベントとなります。
スプリントプランニング
スプリント内で行う作業を計画するイベントで、スプリントの初日に行われます。スプリントプランニングについては、下記の記事で詳細に紹介されております。気になる方は是非ご覧ください。 tech.mti.co.jp
デイリースクラム
1 日の作業の計画やスプリントゴールに対する進捗を検査することが目的となります。また、毎日同じ時刻・場所で開催する必要があります。これは開発者のためのイベントとなります。デイリースクラムの進め方については特に決まりはありませんが、下記3つの質問に答える形で進めることが多いとのことです。
- 開発者がスプリントゴールを達成するために「昨日やったこと」は何か?
- 開発者がスプリントゴールを達成するために「今日やること」は何か?
- 開発者がスプリントゴールを達成する上で「障害となるもの」を目撃したか?
スプリントレビュー
スクラムチームとステークホルダーがスプリントの成果(=ゴールの達成)をレビューする(PO主催の)イベントで、目的は下記となります。
- インクリメントを提示すること(デモすること)で、フィードバックや協力を引き出すこと
- プロダクトゴールに対する進捗について話し合うこと
スプリントレビューでデモすることができるのは完成したものだけとなります。また、完成しなかったPBI(プロダクトバックログアイテム)についての説明をする必要もあります。スプリントレビューのフィードバックを元にPBI を見直していきます。このイベントはスプリントの最終日に開催されます。
スプリントレトロスペクティブ
品質と効果を高める方法を計画する機会(振り返り)となります。このイベントはスプリントレビュー終了後に実施します。
レトロスペクティブについては下記の記事で詳細に紹介されていますので、気になる方は是非ご覧になってください。
プロダクトバックログリファインメント
次スプリント以降のためのPBIの見直し・整備を行います。このイベントはスプリントの中間で開催します。
プロダクトバックログリファインメントについては下記の記事で詳細に紹介されていますので、気になる方は是非ご覧になってください。
スクラムイベントの参加者
各スクラムイベントの参加者について、エムティーアイでは下表のように定義されています。
スクラムイベントでの各ロールの役割は下記の記事が分かりやすかったので、気になる方は是非ご覧になってください。
また、「SCRUM BOOT CAMP THE BOOK【増補改訂版】」では下記のように記載されています。
開発チームならどこまで作れるかを判断したり、どう実現したのかを説明したりしないといけない。プロダクトオーナーは、何をどこまで実現してほしいかを伝え、完成したものがゴールを達成できそうか考えないといけない。スクラムマスターなら円滑にイベントが進むようにしないといけない。
個人的に学びになったこととしては、ステークホルダーはスプリントレビューとプロダクトバックログリファインメントへの参加が推奨されていることです。
まず、スプリントレビューですが、今まで私が携わっていたプロジェクトではステークホルダーが参加していたことがなかったので、「任意(参加してもしなくともよい)」の感覚でした。ただ、BtoBの場合は顧客に参加してもらうことになるので、現実的な問題としてどのように参加を促すのかは個人的に学んでいきたいと考えております。
次に、プロダクトバックログリファインメントですが、そもそもこのイベントにステークホルダーが必要という認識がありませんでした。言われてみれば確かにステークホルダー(顧客)視点の意見を取り入れることで、価値の最大化により近づけると気づきました。こちらもスプリントレビュー同様、どのように参加を促していくかは今後課題となります。
スクラムイベントのタイムボックス
スクラムではスプリントの期間(スクラムでは1カ月以内)に応じて、各イベントのタイムボックスが決められています。スプリント期間別のタイムボックス(最大時間)は下表となります。
「SCRUM BOOT CAMP THE BOOK【増補改訂版】」によると、タイムボックスが守れているかどうかでスクラムチームの実力が測れると明記されています。
もし15分でデイリースクラムが終わっていなければ、どうなるだろう? 時間が長くて途中で疲れたり飽きたりしていて、スプリントゴールの達成に向けて問題がないかどうかの検査のイベントとして成立していないかもしれない。また、スプリントプランニングが何日もかかるようなら、おそらくスクラムチームの実力以上のことを計画しようとしているはずだ。もしかすると、スクラムのイベントについての理解が不足した状態で開発を進めているのかもしれない。
つまり、タイムボックスが守れないということは、スクラムチームが未熟なことのあらわれなんだ。そして、スクラムで開発をうまく進めていくためにも対処したほうがいい箇所を指し示してくれている。その機会を奪わないためにも、タイムボックスは延長してはいけないんだ。
特に、「スプリントゴール達成に向けて問題がないかどうかの検査のイベントとして成立していないかもしれない」という点は私の実体験からもまさにその通りだと思いました。と言いますのも、推奨されている15分のタイムボックスが守れず、デイリースクラムが担当している作業の単なる進捗報告の場と化してしまった経験が私自身過去にありました。これは、実施時間が長いことで集中力が低下し、問題の早期発見(検査)をするというマインドが芽生えなくなっていることが原因の一つだと考えております。
このようにスクラムイベントのタイムボックスはただ定義されているだけでなく、それが守れているかどうかで、
- スクラムチームの実力
- 開発をうまく進めていくためにも対処したほうが良い箇所
が把握できるということが非常に大きな学びとなりました。しかしながら、タイムボックスを守ることが目的となってしまい、デイリースクラムの目的が果たせなくなってしまうことには注意していきたいです。あくまで、「タイムボックスが守れていないのは何故か」を考えて対処していくことが重要であると私個人は考えております。
今後、自身のプロジェクトでも「タイムボックスが守れているか」だけでなく、「守れていないのであれば何が問題なのか」ということを常に考えてプロジェクトをより良くしていきたいと思います。
最後に
本記事では、アジャイルトレーニングを通じて学んだ各スクラムイベントの概要、参加者、タイムボックスについて紹介しました。特に、スクラムイベントの参加者やタイムボックスについては今まで学んでこなかったため、個人的に気づかされる点が多々ありました。今回の学びからプロジェクトの改善点も見えてきたので、粘り強く改善を続けていきたいと思います。