『Driving Value with Sprint Goals』は、スクラムのスプリントゴールに絞ってまるまる1冊書かれた本です。
不確実性とプランニング
第1章では非常に重要なことが述べられています。「手前の霧」と不確実性を霧というメタファーで表現していますが、ソフトウェア開発においても霧に覆われた状況に置かれることがままあります。この時に本物の霧に対してはやらないのに、何故かソフトウェア開発では、霧が存在しないかのように振る舞ったり、霧を取り除こうと考えたり分析したりできると信じたりしてしまうことがある、と指摘しています。実際に目前を霧に覆われた状況に置かれたら、計画を立てるよりも、慎重に進んでみて新しく明らかになった情報を元に次の行動を判断する。それを繰り返すはずだ、と。これは非常に秀逸な喩えだと思いました。
不確実性や複雑性に遭遇したときに、人はそこに解決策があると考えるために、自分たちが知っていることに集中しがちだ、とも述べられています。「もし私たちの間違った思い込みや知らないことがかなりのウェイトを占めるとしたら、仕事を始める前に持てる知識に制限されたまま、会議室で話したり堂々巡りをしたりすることで、必要な知識を得ることができるのだろうか?」とは痛烈な皮肉です。
『The Art of Action』では、不測の事態が起こる可能性を高める「摩擦」によって増幅される、計画の成功を妨げる3つの主要なギャップがあると述べています。
- 知識のギャップ: 私たちが知りたいと思っていることと、実際に知っていることの差
- アライメントのギャップ: 人にやってほしいことと、実際にやっていることの差
- 効果のギャップ: 行動によって達成されることを期待することと、実際に達成されることの差
知識のギャップがあるということは、知りたいことよりも知らないことが多い状況であるのだが、適切な計画を立てるための情報が不足している場合、いくら計画や分析を行っても、何もないところから未知の領域に関する新しい情報は呼び出せないことになります。なので、今わかっていることだけで、小さく謙虚な計画を立て実行してみて、ギャップを明らかにすることが重要である、ということになります。アジャイルのプランニングの概念を裏付けるような話になっています。
私もこれは、何度も引用しているのですが、知識のギャップは、Five Orders of Ignoranceでも言い表せます。2OIのが「手前の霧」が存在している状況で、わからないことを知ることから始めないと、1OIには進めません。
このギャップの解消のためのリーダシップのあり方として、プロイセンのモルトケの話が紹介されています。
将校が自身の見解に基づいて行動しなければならない状況は多様である。命令が出せない時に命令を待たなければならないというのは誤りである。しかし、彼が上級指揮官の意図の枠組み内で行動する時、最も生産的である。
「摩擦」が多い場合は、計画に忠実に実行できるのは稀であるし、チームがそのような行動をとってもうまくいかない。ので、計画に従う「命令」ではなく「意図」を明確に伝え、チームは意図に沿って計画や行動を調整する。そのような自由を与えるのが重要である、ということです。
さて、ここまでの前段があって、ようやく話が本のタイトルと繋がるのですが、その「意図」がスクラムの場合はスプリントゴールである、というわけです。
スプリントゴールの役割
したがって、スプリントゴールは、以下のように機能しなければなりません。
- プロダクトインクリメントは分解したタスクを完了させることによって達成されるのではなく、スプリントゴールを実現することによって達成されなければならない。
- チームはスプリント内の全アイテムを完了しようとすることから、スプリントゴールを達成するために必要なことのみを行う方向にシフトする。
- スプリントゴールは、そのスプリントで最も重要なことを明確に述べ、逆に2番目以降に重要なことを入れないことで、チームの優先順位の判断をぶらさないようにする。
良いスプリントゴールとは?
The Art of Crafting User Storiesの感想文で書いたのですが、良いユーザストーリーの基準は頭文字を取って「INVEST」で表されますが、良いスプリントゴールも同じようなもので「FOCUS」が挙げられています。
- Fun: 記憶に残るタイトルを考え、楽しい要素を注入することを試みる
- Outcome-oriented: ゴールは、達成しようとしていることについての共通の理解を達成するべきである。
- Collaborative: スプリントゴールはスクラムチーム全体によって作成されるべきである。
- Ultimate: スプリント目標には、達成しようとしていることの究極の理由、すなわち「なぜ」を含めるべきである。
- Singular: スプリント目標は、複数の競合する目的ではなく、単一の共通目的で構成されるべきである。
まとめ
『Driving Value with Sprint Goals』は、この他にも、スプリントゴールの運用事例や上手くいかないケースとその対処法など、スプリントゴールにまつわる考えうる限りのあれこれが散りばめられています。不確実性に関して言及されている箇所は特に秀逸なので、スクラムをやっていない人でも読んでおいて損はない書籍かと思います。