Techtouch Developers Blog

テックタッチ株式会社の開発チームによるテックブログです

シンプルで難しいスプリントゴールを再定義してみた

エンジニアリングマネージャーのkobaanです

この間「葬送のフリーレン」を7巻まで一気読みしましたが、しっかりと各人物に背景が作り込まれてて、モブキャラがおらず、使い捨てられてないのがすごくよかったです。 今更感がありますが2022の個人的ベスト漫画に躍り出てます。

スプリントゴールに感じていた課題感

唐突ですがスプリントゴールってみなさんどう設定されていますか?

我々もなんとなくスプリントゴールを運営していましたが、3つほど気になる事がありました

  • どう決めればよいかが難しい
  • スプリントゴールを決めたはいいけど、どう運用すればよいかわからない
  • スプリント終わりにスプリントゴールの達成未達成の判断つかない

意外とスプリントゴールって定番のPracticeが見つけられなかったので、テックタッチなりにスクラムガイドや、有識者の記事などから紐解いて考えてみることにしました。

スクラムガイドでの定義

確約(コミットメント):スプリントゴール

スプリントゴールはスプリントの唯⼀の⽬的である。スプリントゴールは開発者が確約するものだが、スプリントゴールを達成するために必要となる作業に対しては柔軟性をもたらす。スプリントゴールはまた、⼀貫性と集中を⽣み出し、スクラムチームに⼀致団結した作業を促すものでもある。

スプリントゴールは、スプリントプランニングで作成され、スプリントバックログに追加される。

開発者がスプリントで作業するときには、スプリントゴールを念頭に置く。作業が予想と異なることが判明した場合は、スプリントゴールに影響を与えることがないように、プロダクトオーナーと交渉してスプリントバックログのスコープを調整する。

上記からわかるスプリントゴールの要点

  • 開発者(SM/PO以外)が確約(コミット)するもの
  • ゴールに向けて柔軟に再計画しようぜ
  • 一貫性と集中と一致団結というゴールに向けてチーム全体で取り組む
  • 一つのスプリントゴール(単数形の「a Sprint Goal」を使っている)

訳文)そのスプリントになぜ価値があるかをステークホルダーに伝えるスプリントゴールを定義する。

原文)define a Sprint Goal that communicates why the Sprint is valuable to stakeholders.

スプリントゴールに必要な要素

スクラムには

  • スクラムの三本柱
  • スクラムの価値基準

といった指標が存在します。スプリントゴールもその指標に対して一定満たす必要があると考えました。

としたときに下記に示したような位置づけが整っている必要がありそうです。

スクラム3本柱の実現

  • 透明性
    • スクラムチーム以外のステークホルダーからも何を実行しているのかがわかる
    • ステークホルダーにも分かる言葉で伝えている
  • 検査
    • スプリントが完了した際に、それが完了していかがわかる
    • スプリントゴールを達成するために必要な検査内容がわかる
  • 適応
    • デイリーなどでスプリントゴールに向けてRe-Planningができる

スプリントゴールに求めたい価値基準を満たす

  • 確約
    • スプリントゴールにコミットする
    • そのために必要な計画を設計する
  • 集中
    • チーム全体でスプリントゴールに向け一致団結する
  • 勇気
    • 正しく、困難な課題に取り組む勇気を持つ
    • そのために最小化されたスプリントゴールとしない

なんとなく、スプリントゴールが満たすべき基準がみえてきたでしょうか?

そろそろ具体的な作り方を整理していきたいと思います。

スプリントゴールの作り方

手順

原則的にスプリントゴールはスクラムチームの目標設計として記載するべきだと思っています。

一方でステークホルダーに向けてチームが何をやっているかの透明性も担保すべきなため、主にステークホルダーとのやり取りがあるPOのドラフトをもとに設計する手順を策定しました。

  1. 【任意】フォーマット案を参考にスプリントゴールのドラフトをPOが作成する
  2. 【必須】スプリントプランニングを経て開発者がスプリントゴールを定義し、POに提示する
  3. 【必須】開発者から提示されたスプリントゴールをPOが合意する
    1. 合意できなかった場合は、POと開発者双方合意するまでスプリントゴールは完成させられない

スプリントゴールのフォーマット例

スプリントゴールのフォーマットは、あまり正解がないためテックタッチでの例をだしますが

目標として、なにを完了させるのか?を記載するのはもちろん、なぜそのゴール設定をしたのか?まで言及することでチームとしてやっていることの価値訴求を行うことを想定してフォーマット化してみました。

短期(スプリント期間内)で成果が出せる:

[__完了したいことがら__] を完了させることで [__求めたい効果__] を達成する

例:wysiwyg機能の充実化を完了させ、ガイドの完了率を15%アップさせる

短期(スプリント期間内)で成果が出せない:

リリーストレイン(下記参照)を採用しているテックタッチではこちらのケースが多い想定です。 tech.techtouch.jp

[__完了したいことがら__] を完了させること 
で [__定性的な目的__] を目指す // こちらは任意だが、完了させる意義をはっきりさせるため記載するのをおすすめしたい

例:Wysiwig機能の充実化を完了し、エンドユーザーに提供する表現力向上を目指す

テックタッチ流スプリントゴールのチェックリスト

上記の内容をまとめつつ、6つのチェックリストを作成しました。

  • [ ] そのスプリントゴールは一つですか?
  • [ ] そのスプリントゴールを確約(コミット)できる程度の計画ができているか
  • [ ] ステークホルダーがわかる言葉で記載していますか
  • [ ] スプリントが完了した際に、達成の可否を検査可能な内容ですか?
  • [ ] チーム一丸となって取り組む価値のある目標だと認識できていますか?
  • [ ] ストレッチしすぎず、最小化しすぎないゴール設定ができているか

策定後のスプリントゴールの扱い

スプリントゴールは策定するまでがゴールではありません。スプリント内でうまく運用できてこそだと思っています。

特にデイリースクラムではスクラムガイドからの下記抜粋にあるように、スプリントゴールを意識した運用が必要です。

開発者は、デイリースクラムがスプリントゴールの進捗に焦点をあて、これからの 1 ⽇の作業の実⾏可能な計画を作成する限り、必要な構造とやり⽅を選択できる。これは集中を⽣み出し、⾃⼰管理を促進する。

スプリントゴールを軸にやるべきタスクの優先順位を整理し、開発者自らが適応して行くことが求められます。 つまり、毎日適応のための再計画がデイリースクラムで行うイメージで運用できるとわかりやすいんじゃないかなと思います。

そのためにも、デイリースクラムではスプリントゴールを読み上げたり、スプリントゴールに関連のあるタスク群を意識的に優先・集中して見るようにしていたりしています。

最後に

今回はスプリントゴールをよりわかりやすく、価値のある運用方法をするために整理してみました。

やってみてわかったのですが、スプリントゴール1つとってもとても奥深さを感じます。

元々の課題である、決め方・運用の仕方などはカバーできましたし個人的にはスクラムに対する理解が進んでとても楽しかったです。

この記事のように「スクラムをより探求したい」であったり、「自分なりのプロセス整理を進めていきたい」という方は是非カジュアル面談で話しましょう!

お待ちしております!