ポイント: スプリントゼロは、最小限の使用可能なソフトウェアを提供し、複雑さを回避することに焦点を当てたアジャイル開発の準備段階です。使用可能なコードの小さな部分を生成し、インフラを設定したり、チームを形成したりすることなく、機能の優先順位を付けることを目的としています。
- スプリントゼロはプロジェクトの骨格を作成し、低速を維持するために不可欠です。
- 目標は、開発のための明確なフレームワークを確立することで、今後のスプリントの準備を確実にすることです。
アジャイルを適用することの利点は明確で広範囲に及びます。これには以下が含まれます:
- 製品品質の向上
- 顧客満足度の向上
- プロジェクト開発に対する制御の向上
- ROIの迅速な回転
- リスクの減少
全体として、アジャイルはプロジェクト管理プロセスを簡素化し、管理しやすい部分、すなわちスプリントに分解します。非常に効果的なため、企業組織は部門全体のプロジェクト管理にアジャイルの原則を適用し始めています。しかし、アジャイルの需要が高まるにつれ、スプリントゼロという用語についての神秘も増しています。最も多くの場合、人々はスプリントゼロをプロジェクトの事前計画プロセスに< a href="/resources/topics/scrum-teams-whats-scrum-meetings/">スプリントのフレームワークを適用することと考えます。この事前計画段階は、スプリント中のプロジェクトとして自体が存在します。これを「プロジェクトの前のプロジェクト」と呼ぶこともあります。しかし、これはスプリントゼロの単純化された、問題のある表現です。
スプリントを理解する
スクラムスプリントにおいて、編成された開発チームは、通常1か月未満の期間内に、インクリメンタルで使用可能なコードの一部を完成させる明確な目標に取り組みます。作成された個々のコードは、より大きなプロジェクトの一部であり、それ自体がテストされ、使用されることができます。スプリントは特定のルールに従う必要があります:
- あらかじめ決められた品質目標は維持されなければなりません。
- スプリントが始まると、目標を遅延させたり完了を妨げたりする変更は行われるべきではありません。
- スコープはスクラムマスターとプロダクトオーナーの間でのみ再交渉できます。
- スプリントは2〜4週間の長さである必要があります。
1つのスプリントが終了すると、バックログが更新され、ソフトウェア開発が完了し、開始されるまでプロセスがすぐに再開されます。
スプリントゼロの神話を打破する
スプリントゼロが本当に何であるかを話す前に、それが何でないかについて話しましょう。
- スプリントゼロはチームが編成される段階ではありません。スプリントを実施するためには、すでにチームが整備されている必要があります。
- スプリントゼロはインフラを設定する段階ではなく、すでに実施されるべきか、要求に応じて簡単に実施されるべきですが、スプリントゼロの一部ではありません。
- スプリントゼロはバックログに製品を追加したり、考慮計画に関与するべきではありません。
スプリントゼロについて聞いたことがある場合、上記のいずれかの方法で提示されている可能性があります。しかし、上記のすべてのステップは、スプリントの一部としてではなく、事前計画段階で達成されるべきです。スプリントゼロ中に計画を考慮し、バックログにアイテムを追加することは、アジャイルの原則に反し、大規模な設計を前もって行わないことに注意すべきです。さらに、スプリントゼロのグループは、他のスプリントに参加していない可能性のある高レベルの思考者で構成されることが多いです。彼らが初期のバックログ設定を引き受けると、アジャイル組織が階層化される可能性があります。スプリントゼロを他の計画段階と同様に見ることがアジャイル原則に矛盾する方法はこれだけではありません。スクラムスプリントの最も重要なルールは、使用可能なコードを生産することです。スプリントゼロチームに、新しいプロジェクトのソフトウェア開発を進めないルールを作ることで、ルールが常に適用されるわけではないという前例を設定しています。その結果、チームは次に何をすべきかに自信を失うことになります。
スプリントゼロの特徴
スプリントゼロの主な目標は、次のチームが構築できるいくつかの使用可能な価値を提供することです。スプリントゼロで必要なことは:
- プロジェクトのスケルトンを作成し、リサーチスパイクを含めること。
- デザインを最小限に保つこと。
- 少数のストーリーを完成させること。
- 低速で軽量であること。
このアプローチが機能するためには、スプリントゼロの開始前にバックログにいくつかのストーリーが存在する必要があります。スプリントの結果、デモンストレーション可能な製品を生み出すのに十分な数です。
目標、活動および利点
スプリントゼロとは何か、従来のスクラムスプリントとどのように異なるかを理解するためには、スプリントゼロの目標、活動、利点を見なければなりません。
スプリントゼロの目標
スクラムスプリントと同様に、スプリントゼロの主な目標は生産です。しかし、スプリントゼロはスクラムスプリントほど集中的なソフトウェア開発を必要としません。実際、スプリントゼロのチームは、上記のように軽く保つべきです。より具体的には、スプリントゼロの成果物は次のとおりです:
- 使用可能なコードの一部(どれほど小さくても)。
- コードを書くための最小限の環境。
- 機能の優先順位付けまたはストーリーのリスト。
- 各ストーリーをスプリントに割り当てるリリース計画。
- 機能の最も可能性の高い実装の計画。
スプリントゼロの強調点はスプリントの準備を確実にすることであるため、一部の組織やプロジェクトはこのアプローチを取り入れる必要がない場合があります。最近のプロジェクトで成功したスプリントを出し続けている会社であれば、スプリントゼロを実施せずにスプリントの準備状況をすでに理解しているかもしれません。
スプリントゼロの活動
他のスプリントと同様に、スプリントゼロも同じ活動に従うべきです:
- バックログの更新
- スプリント計画セッションが続く
- 毎日のスプリントチームミーティング
- スプリントレビューセッションまたはディブリーフ
- 成果物
- スプリントレトロスペクティブ
上記のリストは親しみのあるものかもしれません。なぜなら、チームがスプリントを実施する際に発生するプロセスについてすでに話したからです。しかし、他のスプリントとは異なり、スプリントゼロは数日以上、最大でも1週間を超えてはならない。
スプリントゼロの利点
スプリントゼロの主な利点は、チームが今後の作業のアイデアを得ることを可能にすることです。それにより、チームメンバーが今後の作業を処理できるという自信を築くことができます。個人が明確さのないプロジェクトに入ると、ある時点で遅延する可能性が高く、スプリントの成功に影響を与える可能性があります。スプリントゼロは、成功のためのフレームワークを計画し、作業するスプリント環境を確保する機会を提供することで、この障害を回避しようとします。
スプリントゼロを効果的に実施する方法
スプリントゼロを効果的に実施するには、成功したスプリントゼロがスプリントワンを開始する準備が整っていることを理解する必要があります。「準備」は漠然とした用語であり、この文脈では、準備は運用リソースの可用性を指すものではありません(ただし、この側面がすでに処理されていることを願います)。準備とは、開発が行われる環境が存在することを意味します。効果的なスプリントゼロを実施するためのいくつかのやるべきこととやってはいけないことは次のとおりです:
- やってはいけない:1週間以上かけないでください。
- やる:軽量に保ち、大規模な設計原則を避けてください。
- やってはいけない:最初のスプリントの成功したキックオフのために必要以上のことを行わないでください。
- やる:チームとして協力し、チームビルディングの文化を強調してください。
スプリントゼロ:単なる事前計画ではない
事前計画は、プロジェクトの実行において重要です。ソフトウェア開発者のための標準的なプロジェクト準備には、仕事を完了するために適切な人々と機器を集めることが含まれます。しかし、これらのステップはスプリントゼロを特徴づけるものではありません。事前計画とは異なり、スプリントゼロはプロジェクト要件ではありません。実際、迅速かつ効率的なスプリントを実施するチームは、スプリントゼロを必要としない場合があります。しかし、スクラムに不慣れな組織の場合、スプリントゼロから始めることが、アジャイルのソフトウェア開発原則を他の運用ビジネス文化に浸透させるための転換点となるべきです。
追加リソース
これらの投稿は私自身のものであり、必ずしもBMCの立場、戦略、または意見を表すものではありません。