アジャイルにおける「スプリント計画」のポイント(NADP解説)

公開 : 2021.06.01  最終更新 : 2021.06.04

Scrum Inc.認定スクラムマスターの局です。

一般的なアジャイル方法論やスクラム開発のプラクティスをベースとしつつ、NCDCのこれまでの経験を取り入れた独自の方法論「NCDC Agile Development Process」の概要を全6回に分けて説明します。

NCDC Agile Development Process(NADP)解説記事
キックオフ(Kick-off)
要求(Requirements)
デザイン(Design)
スプリント計画(Sprint Planning)←本記事
開発(Development)
総合テスト(System Testing)

今回はスプリント計画についてです。
皆さんはどのようにスプリントを回しているでしょうか? 初めてアジャイルやスクラムを導入するプロジェクトでやりがちなのは、とりあえず教科書通りにあらゆるスクラムパターンを取り入れてみるという進め方だと思います。
もちろん試行錯誤は必要ですが、最初から教科書通りの進め方にこだわると無駄なプロジェクトマネジメントが増えて、開発の稼働が十分に取れなくなるなどの悪影響も出てきます。

重要なのは、チーム内で合意を得て進められているかと、それぞれのタスク状況が「見える化」されているかです。
合意が得られないまま進めると自律していないチーム内にストレスがたまり、結果ベロシティーの低下に繋がります。また、それぞれのタスク状況が見えないと、詰まっている課題がわからずこれもベロシティーの低下に繋がります。
開発初期にすっきりした状態で生産効率をあげておくことで、低コストでの開発が期待でき、大きい利益を作ることに繋がります。

ベロシティーとはアジャイルでよく用いられる作業の測定基準。1スプリントにチームが消化したポイントを評価する指標。

「スプリント計画」の要点

1スプリント中に開発する項目と、どうなれば「完了」と判定するかを定義します。
スプリントレビューでは、開発したソフトウェアを評価し、完了、継続開発、リリースの判断をします。このフローを顧客に提供できるレベルのプロダクトが完成するまで繰り返します。

NCDCのスプリント計画の進め方

次にNCDCのスプリント計画の進め方を解説していきます。

ユーザーストーリーの選定

まず、ユーザーストーリー詳細化をします。
あがっているストーリーのWhy,What,Howの認識にずれがない状態で、チームの全メンバーが十分に理解できるようにします。また、そのストーリーはどのような機能、顧客体験ができていれば完了と言えるかを協議します。

次に、異常系ストーリーの洗い出しをします。
ストーリーベースで説明をすると正常フローしか見えないので、ユーザーがストーリーに沿わない動きをしたときの対応を明確にするために行います。
例えば、「ユーザーは買い物カゴに気に入った商品を入れておきたい、後でまとめ買いをしたいからだ」というストーリーには次のような異常系ストーリーが内在しています。

  • 買い物カゴに入れた商品を削除したい
  • まとめ買いをしたけどもキャンセルをしたい

プロダクトバックログから、1スプリントに割り当てる

プロダクトバックログから1スプリントで行うものを選定し、スプリントバックログにします。
まずDoneの定義をします。どのような状態であれば、Readyとなり、Activeとなり、Doneとなるのかをチームで合意をとります。

Ready、Active、Doneの定義は例えば以下のようなものになります。

  • Ready・・・ストーリーの完了条件が明確にされており、チームが説明を受けた
  • Active・・・チームが開発着手している
  • Done・・・テストが完了しリリースできる

次に優先順位を考えます。これはプロジェクト期間中、市場ニーズに応じて常に変化するものです。優先順位の最終決定をできるのはプロダクトオーナーです。

スプリントバックログ作成

スプリントに割り当てたプロダクトバックログをタスクに分解します。タスクの粒度は1日に終わる程度です。それにより、作業が進んでいるか、つまずいているかを1日ごとに振り返るようにします。
そして、スプリントゴールの作成(Doneの定義)をします。プロダクトバックログと同様にどうなればReady、Active、Doneなのか、チームで合意をとっていきますが、プロダクトバックログよりも開発寄りの定義となります。

Ready、Active、Doneの定義は例えば以下のようなものになります。

  • Ready・・・ストーリーからタスクへの分解ができている
  • Active・・・アサインが完了し開発着手している
  • Done・・・コードレビューが終わっていて、デプロイされた
カンバンの作成

Ready、Active、Done等のストーリーやタスクの状況をカンバン方式で管理します。これにより、タスクの滞留が起きていないかを可視化できます。

コミュニケーション計画作成

スプリント中の会議体等の定義を行います。
スクラムイベントであるスプリントレビュー、スプリントプランニング、レトロスペクティブ、バックログリファインメント、デイリースクラムをいつ開催し、参加者は誰であり、タイムボックスはどの程度かを決めます。

また、日々のコミュニケーションはどのように行うかもチームで合意を得ておくと良いです。
具体的にはプロダクトオーナー、スクラムマスター、ステークホルダーの各会議体における出席者と役割を定義します。各ロールの人数や役割、その場の決定権は、プロジェクト状況により可変です。

特に重要だと感じるポイント

アジャイルというと、なんとなく始めてスプリント中に是正していけばいいという印象を持つ方も多いようですが、正しくスプリント計画を立てて進め方をチームで合意しておくことで、開始時から高いベロシティーを発揮することができます。

「Done(完了)」の定義をできるだけ具体的にしておくこともとても大切です。これが曖昧だと終わったと思っていたタスクが実は完了できておらず、気づかぬうちに残タスクが積み上がっていってしまうというトラブルに繋がります。

アジャイル開発に取り組みたい方、改善したい方へ

今回の記事では「NCDC Agile Development Process」に関して「スプリント計画」の説明をさせていただきました。

NCDCでは「NCDC Agile Development Process」をベースに、これからアジャイル開発に取り組みたい方や、既存のやり方を改善したい方へのご支援を行なっています。
アジャイルを用いた開発案件の依頼先をお探しの方、または自社でアジャイル開発体制を構築したい、改善したいといったご相談がある方は、お問い合わせフォームからご連絡ください

また、ご希望の方には資料の配布も予定していますので、NCDC Agile Development Processを取り入れてみたい方もお気軽にお問い合わせください。

NCDC Agile Development Process解説記事
キックオフ(Kick-off)
要求(Requirements)
デザイン(Design)
スプリント計画(Sprint Planning)←本記事
開発(Development)
総合テスト(System Testing)

ページトップへ

お問い合わせ

NCDCのサービスやセミナー依頼などのお問い合わせは
下記のお電話 また、お問い合わせフォームよりお気軽にご連絡ください。

050-3852-6483