背景
スクラムガイドの改訂とこれまでの誤解
2020年11月、スクラム開発を始める(あるいは進めていく)ためのガイドブックであるスクラムガイドが改定されました。
前回スクラムガイドからの変更点として、1つ目にこのようなことが書かれています。
スクラムガイドは時間が経つにつれて少し指示的なものになっていた。2020 年版では、指示的
な表現を削除または緩和して、スクラムを最小限かつ十分なフレームワークに戻すことを目的
としている。たとえば、デイリースクラムの質問の削除、PBI(プロダクトバックログアイテム)
の属性に関する記述の緩和、スプリントバックログにあるレトロスペクティブのアイテムに関
する記述の緩和、スプリントの中止のセクションの削減などを実施した。
この指示的な表現の削除の1つ目にあげられているのが、デイリースクラムの質問です。
この質問は何かというと、
• 開発チームがスプリントゴールを達成するために、私が昨日やったことは何か?
• 開発チームがスプリントゴールを達成するために、私が今日やることは何か?
• 私や開発チームがスプリントゴールを達成する上で、障害となる物を目撃したか?
スクラムガイド2017にもこの3つの質問はあくまで「例」としてあげられていました。しかし、実際は多くのチームがこのテンプレートを使いデイリースクラムを行っていたのではないでしょうか。
また、あくまで私の経験上からの話になりますが、そもそもスプリントゴールを設定していないチームが多く、デイリースクラムがスプリントゴール達成の検査ではなく、進捗報告とバーンダウンを用いてすべてのタスクが完了できそうかの確認をデイリースクラムの目的と置き換えていたチームが多かったように感じます。
これから起こりうること
この3つの質問がなくなったことで、新たにスクラムガイド2020を読みスクラムを始めることになった人たちは、デイリースクラムを実際にどう進めればいいか迷いが生じるのではないでしょうか?
そんな時、スクラム経験者にアドバイスを求めるとほぼ間違いなく3つの質問を教えることになると思います。
デイリースクラムの本来の目的(およびスプリントゴールの必要性)を伝えないまま、デイリースクラムの3つの質問について教えてしまうと、今までのスクラム経験者が通ってきた道を歩むことになってしまいます。
3つの質問を使わず本来のデイリースクラムの目的を達成できるフォーマットはないか?
ここでまずお伝えしたいのは、まるで3つの質問が「悪」のように記述しているように見えてしまいますが、「悪」なのは本来の目的を達成しようとしないまま、そのフォーマットを使っていることであり、このフォーマット自体が「悪」ではありません。
今回はこの3つの質問は用いずに、デイリースクラムの目的を達成できる方法を考えてみました。
デイリースクラム × KP(T)でスプリントゴールへの進捗をカイゼンしていく
KPTはスクラムではレトロスペクティブでも多く使われる手法で、スクラム以外でも広く振り返りの手法として用いられています。
このKPTをデイリースクラムに用いることで、スプリントゴール達成に向けた検査と適応(のきっかけ作り)を行っていきます。
トピック1. スプリントゴール達成に向け、続けたいこと
前回デイリースクラムから作業してきた中で、これはスプリントゴール達成に向けて続けた方がいいと思うことを共有していきます。
例えば、、、
- ○○さんが××の実装タスクでリファクタリングも込みで実装してくれたので、可読性が向上した
- □□さんがまとめたIT実施のエビデンスがとても確認しやすかった
- 今日はコミュニケーションがよく取れていて楽しく開発ができた
小さなことでもいいから続けた方がいいと思うことを共有していきます。
また、このトピックの内容は開発中に書き残してもらい、このトピックの時間ではその書き残したものを共有するだけの時間にしましょう。
トピック2. スプリントゴール達成に向け、問題となっていること・問題になりそうなこと・不安なこと
ここでは前回デイリースクラムから作業してきた中で、スプリントゴール達成に向けて問題となっていることや問題なりそうなことに加え、問題には至ってないけど不安だなと思うことを共有します
例えば、、、
- 見積もり時に検討したときよりも修正範囲が広く、タスクに時間がかかってしまっている
- 開発者が急遽一人病欠になってしまったため、その分のリカバリーを考える必要がある
- 今やっているタスクの後続タスクが想定よりも時間がかかりそうな予感がして不安
既に起きている問題だけでなく、これから起こりそうな問題または問題に至らなくても不安に感じてることを共有しましょう。
このトピックも同様に開発中に内容を書き残してもらい、共有するだけの時間としましょう。
トピック3. (※時間に余裕があれば)スプリントゴール達成に向け、カイゼンしたいこと・カイゼンすること
スプリントゴールに向けた検査と適応をしたいので、カイゼンのためのアクションプランまで立てたいところですが、
このトピックについてはタイムボックス(最大15分)の関係上デイリースクラムの間ではできない可能性があります。
トピック3までをタイムボックス内に実施する方法は今後も検討しようと思っていますが、とりあえず今回はこのトピックでやることを記載します。
トピック1,2であがったことから、スプリントゴール達成に向けてカイゼンしたいことをあげて共有していきます。
この時重要なのは、通常のKPTと同様に「Problem(トピック2の内容)」に対してのカイゼンだけではなく、「Keep(トピック1の内容)」に対しての「Try(カイゼンへのアクションプラン)」をあげることです。
どうしたらより良くスプリントゴールを達成できるかを考えて、共有していきましょう。
このフォーマットの問題点
トピック3にも記載しましたが、現状の方法ではデイリースクラムのタイムボックス内には収まらない可能性が非常に高いです。
トピック1,2で開発中にそれぞれの内容を書き残してもらい、共有するだけの時間としましょうと記載しましたが、開発者の数が多いとそれだけ共有にも時間がかかり、カイゼンに向けたアクションプランを立てる時間が確保できません。
考えられる改善案(今後試したいこと)
開発中から常にトピック1とトピック2の内容は共有するようにする(どこかで可視化できるようにする)
ホワイトボード等を用意してトピック1の内容とトピック2の内容をチームに可視化して共有できるようにしておくことも一つの手ではないかと思います。
リモートでスクラム開発を実施している場合は、チャンネルやスレッドを立てることで同様の共有を実施可能です。
そうすることで、デイリースクラムではトピック3の内容のみを行えばいいことになるので、これであればタイムボックス内でも実行可能だと思います。
最後に
このフォーマットですが、私自身試してみたいと思いつつ、まだ試せていない状態でこの記事を公開しています...。
このフォーマットを実際に試してカイゼンすべきポイントがいくつも出てくるかと思うので、その際にはこの記事もアップデートしようと思っています。