スプリント

スプリントとは、スクラムチームが一定量の作業を完了させる際の、短く区切られた期間を指します。

Max Rehkopf Max Rehkopf
トピック一覧

スプリントとは?

スプリントとは、スクラムチームが一定量の作業を完了させる際の、短く区切られた期間を指します。スプリントは、まさにスクラムとアジャイル手法の中心であり、スプリントを適切に扱えれば、アジャイルチームがより優れたソフトウェアをリリースするための苦労を減らせられます。

アトラシアンの JiraSoftware のグループプロダクトマネージャーである Megan Cook は次のように述べています。「スクラムを使用すると、スプリントと呼ばれる一連のイテレーションで製品を構築できます。スプリントは、大きくて複雑なプロジェクトを扱いやすいサイズに分割します」

スクラムスプリントと連続するイテレーションのプロセスを表す 2 つの矢印

スクラムス プリントとアジャイル ソフトウェア開発が関連付けられることが多いことから、スクラムとアジャイルが同一視されることがよくあります。しかし、これらは同じものではありません。アジャイルは一連の原則であり、スクラムはそれを実行するためのフレームワークです。

アジャイルの価値とスクラムプロセスには多くの類似点があるため、適切な関連付けが可能になります。スプリントによって、チームは「有効なソフトウェアを頻繁に提供する」というアジャイルの原則に従い、「計画に従いながら変更に対応する」というアジャイルの価値観を実行できるようになります。透明性、検査、適応というスクラムの価値は、アジャイルを補完するものであり、スプリントの概念の中心になります。

スクラム ガイドは、スプリントを検討するうえで、強固で理論的な基盤となります。ここでは、このような作業を日常的に行うユーザーのベストプラクティスを明らかにすることにより、このトピックを補足します。

スクラムスプリントの計画と実行方法

スクラムスプリントの手順を示す図: スプリントプランニング、デイリースクラム、スプリントレビュー、スプリントのふりかえり

スクラムではあらゆることが非常によく検討されています。次回のスプリントを計画する際には、スプリント計画のミーティングを開催します。スプリント計画はチームが協力して行うイベントであり、このスプリントで実行できる作業は何か、選択した作業はどのようにすれば実行できるか、という 2 つの基本的な質問への答えを考えます。

スプリントに適した作業項目の選択は、プロダクト所有者、スクラム マスター、開発チームの共同作業です。プロダクト所有者は、スプリントで達成すべき目標と、スプリントの目標の達成のために完了させる必要があるプロダクト バックログの項目について話し合います。

次に、チームは、スプリントが終了する前に、バックログアイテムの構築方法と、それらを「完了」するための方法に関する計画を作成します。選択した作業項目とそれらを実行する方法の計画は、スプリントバックログと呼ばれます。スプリント計画が終了するまでに、チームはスプリントバックログの作業を開始する準備をして、バックログの項目を「進行中」と「完了」に移動します。

スプリント中は、チームはデイリー スクラムまたはスタンドアップの際に、作業の進捗状況を確認します。このミーティングの目標は、スプリントの目標を達成しようとするチームの能力に影響を与える障害と課題をすべて明らかにすることです。

スプリント後は、チームはスプリントのレビュー中に完了した内容に関するデモを行います。これは、本番稼働前にチームの成果を関係者やチームメイトに紹介する機会になります。

スプリント サイクルは、楽しみにしている人も多いミーティング、スプリントのふりかえりで締めくくりましょう。これは、チームが次のスプリントのための改善点を特定する機会です。これで、次のスプリント サイクルを開始する準備が整います。では、さらに進めていきましょう。

「するべきこと」と「してはいけないこと」

基本は理解できていても、ほとんどのチームはスプリントを開始するときにつまずきます。本トピックの最後に、 Megan Cook が長年にわたる経験の中から選んだ「するべきこと」と「してはいけないこと」を紹介します。

するべきこと

  • チームがスプリントの目標と成功の測定方法を設定して、理解していることを確認します。これは、全員の意識を揃えて、共通の目標に向かって前進するために重要です。
  • 優先順位と依存関係の順番に基づいて、バックログを適切に整理します。これが適切に管理されていない場合、大きな問題となり、プロセスが混乱する可能性があります。
  • ベロシティを十分に把握し、休暇やチーム ミーティングなどを反映するようにします。
  • スプリント計画ミーティングを使用して、完了すべき作業の詳細を細部まで具体化します。チーム メンバーに、スプリントの対象となるすべてのストーリー、バグ、タスクに関するタスクの概略を示すように促します。
  • 他のチームの作業、設計、法的承認など、依存関係を完了できない作業は省略します。
  • 最後に、意思決定または計画立案が行われたら、Jira チケットなどのプロジェクト管理ツールまたはコラボレーション ツールでその情報を取得できるようにします。そうすることで、意思決定と論理的根拠の両方を誰もが後で確認できるようになります。

スクラムの全員でこれらの「すべきこと」に取り組む一方で、次のような項目には注意を払う必要があります。

してはいけないこと

  • 多くのストーリーを取り入れすぎたり、ベロシティを過大評価したり、スプリントで完了できないタスクを取り入れたりしないでください。自身やチームが失敗を招くような事態は避ける必要があります。
  • 品質や技術的負債についても忘れないでください。バグやエンジニアリングの健全性など、QA や機能以外の作業にも時間を割り当ててください。
  • チーム内でスプリントの内容を曖昧なままにしておかないでください。対象を絞り込んでください。全員が同じ方向に進むことを忘れがちになるため、スピードばかりを重視しないでください。
  • また、扱ったことがない、またはリスクの高い作業を大量に引き受けないでください。大規模なストーリーや不確実性の高いストーリーは細分化し、作業の一部を次のスプリントに残すことも検討してください。
  • チームから懸念の声が上がった場合は、それがベロシティ、不確実性のある作業、想定よりも規模が大きいと思われる作業のいずれであっても、チームの声を無視しないでください。課題に対処し、必要があれば再調整してください。

スプリントの詳細について

Once you have mastered how sprints work, you can optimize your processes using automation. Here are three of the most common automation rules used for sprints in Jira.

  1. Send a weekly Slack message with all issues still open in the sprint. Go to rule.
  2. When a sprint finishes, then assign outstanding issues to the next sprint. Go to rule.
  3. When an issue moves to ‘In Progress’ and the sprint is empty, then move the issue to the next active sprint. Go to rule.

See these automation rules and 100s more in the Jira Automation Template Library.

Go to library

Learn more about sprints

スプリントは利用者が非常に多く、効率的であることから、アジリティを高めるための最初のステップであると見なされがちです。ここで見てきたように、スプリントをマスターするには、相互に構築されるスクラムとアジャイルの概念をいくつか熟知する必要があります。スクラムに関する他の記事を読んで、知識を深めるとともに、スクラムをさらに活用できるようにしてください。