製品、エンジニアリング、ソフトウェア開発チームなどで働いている人なら、「スクラム開発」という言葉を聞いたことがあるかもしれません。スクラム開発とは、短いサイクルを繰り返して迅速に開発を行うフレームワークです。
連携して複雑な問題を解決するのに役立つスクラムプロセス。この記事では、スクラムの意味、どのように機能するのかなど、スクラムの基礎知識をご紹介します。
更新: この記事は、スクラムの 3 本柱に関する記述を含めて 2024年 3月に改訂されました。
この電子書籍では、組織はどのようにアジャイルを導入すれば機敏性の高い効果的な職場を作れるのかなど、アジャイルについて深く掘り下げています。
スクラム開発 (Scrum) とはアジャイル手法のひとつで、少人数のチームに分かれ短期間の開発サイクルをくり返し行うフレームワークです。チームのコラボレーション向上を促し、インパクトの大きな仕事の達成をサポートする手法として人気があります。
スクラム開発のメリットは、価値観、役割、ガイドラインの設計図を明確化し、チームが反復と継続的な改善に集中できるようにすることにあります。
普段からアジャイルプロジェクトを実施していますか?それなら、Asana で最大限効率化させましょう。プロセスとスプリントプランをシンプルにし、チーム内のコミュニケーションも効果的に行えるようになります。Asana のサービスは 30 日間無料でお試しいただけます。
アジャイルプロジェクトを効率的に管理する方法現在の形の「スクラム開発」は、竹内弘高氏と野中郁次郎氏によって書かれた 1986年のハーバード・ビジネス・レビューの記事 The New New Product Development Game で初めて紹介されました。竹内氏と野中氏はラグビーから「スクラム」と名付け、「ラグビーのように、ボールがチーム内で受け渡され、チームがユニットとしてフィールドを進んでいく」ことだと説明しています。
そして 1995年に、スクラムは Ken Schwaber 氏と Jeff Sutherland 氏によって発表されたアジャイルマニフェストと SCRUM Development Process によってさらに発展し、成文化されています。
Schwaber 氏と Sutherland 氏による「スクラム」では、ソフトウェア開発におけるウォーターフォールモデルを否定するものだったとも言えます。ウォーターフォールモデルでは、プロジェクトは一連のフェーズに分割され、各フェーズの成果物が完成すると初めて次のフェーズに進めるようになります。Schwaber 氏と Sutherland 氏は、顧客にとって最高の製品を開発するには、ソフトウェア開発者が環境に継続的に対応、適応できる、より柔軟で反復的なアプローチが有効だと考えました。
その後、Schwaber 氏と Sutherland 氏は、2 人が定期的に更新を続ける生きた文書である、スクラムガイドを発表しました。スクラムガイドによると、スクラムはチームに「自分たちの仕事のテクニックがどれほど効果的であるかを確認させ、そのテクニックを継続的に進化、改善させようとする」と言われています。
この電子書籍では、ワークマネジメントとは何かを解説し、ビジネスにどう役立つかをご紹介します。
スクラム開発を始める前に、「完了」とはどういう意味か、チームで共通認識を持つようにしましょう。スクラムは継続的な改善のプロセスに基づいて行われるため、この認識は意外と明確になっていない可能性があります。スクラムではチームが柔軟に、反復的に改善していくので、「完璧」なものはありません。「完了」というのは、「これ以上はない」という意味ではなく、スクラムチームがとりあえずその作業を終了することを意味します。
例として、いくつかのスクラムチームにおける「完了」の定義をご紹介します。
製品リリースの準備が整う。
製品のテストが終わり、ベータ環境でのリリースの準備が整う。
製品の受け入れテストが終わり、全ユーザーへ向けたリリースの準備が整う。
そのチームにとっての「完了」の定義が何であろうと、必ず全員が共通認識を持つようにしましょう。定義されたら、信頼できる唯一の情報源にそれを記録して、特にスプリントレビュー中は何度も参照するようにしましょう。
アジャイルプロジェクトを作成するときは、テンプレートを活用すると効率的です。チームの時間節約、プロジェクトの一貫性の保持につながります。Asana のアジャイルプロジェクト計画テンプレートは、さまざまなケースに対応し、カスタマイズも可能です。
アジャイルプロジェクト計画テンプレートを作成従来、スクラム開発は「スプリント」という通常 2 週間程度の作業セッションで行われます。各スプリントの終わりまでに特定の成果物を作成する必要があり、それに加えてスクラムにはさらに「デイリースタンドアップ」と「スプリントの振り返り」という 2 つのイベントがあります。
スクラム開発を行うときは、継続的な改善を常に念頭に置きましょう。スプリントの初めには何もわからなくても、その最中に得た情報に基づいてプロセスと要件を調整することも可能なのです。
それでは、スクラム (Scrum) とは具体的に何なのでしょうか?また、チームは何をすればよいのでしょうか?スクラム開発プロセスは、以下のように進行します。
スクラムスプリントを始めるには、まずチームリーダー (スクラムマスターとも呼ばれます) が、バックログから引き出す仕事、すなわちやるべき仕事を決定します。可能な限り最高のスクラムスプリントを実現するために、製品バックログは一か所で文書化しましょう。情報の記録には、プロジェクト管理ツールの使用がおすすめです。
効率的にプロジェクト管理をするなら、SaaS 型ワークマネジメントツールを活用しましょう。WBS 作成や工数管理もできる Asana では、すべての仕事を 1 か所に整理でき、業務効率が向上します。
仕事を最大限効率化し、チームの生産性を上げるためには、Asana のプロジェクトマネジメント機能をお試しください。日々の業務と目標をつなげ、「誰が・何を・いつまでに行うのか」を可視化します。
スクラムスプリントを始める前に、どこに重点を置くべきかを知る必要があります。スプリント計画 (スプリントプランニング) では、そのスプリントでバックログのどの仕事に注力するのかを決定します。スプリント計画はテンプレートを活用すると効率的です。
スプリント計画用の無料テンプレートを作成する通常、1 つのスプリントは 2 週間続きます。ただし、チームに合わせてこれより短くても、長くてもかまいません。スプリント期間中、チームはスプリント計画セッションであなたがまとめたバックログの内容に取り組みます。
毎日スクラムチームと 15 分間話し合うようにしましょう。デイリースタンドアップミーティングは、進捗状況を共有し、予想外の障害があれば優先度を調整する機会となります。効果的なデイリースタンドアップを行うためには、デイリースタンドアップ用の無料テンプレートをお試しください。
デイリースタンドアップミーティング用テンプレートを作成するスクラムスプリントが終わったら、チームで集まってスプリントレビューを行います。スプリントレビューでは、スクラムチームのメンバーが「完了」した仕事を報告し、関係者の承認やチェックを受けます。
記事: ステークホルダーとは?シェアホルダーとの違いを解説スプリントの振り返りで共有、反省を行う。 スプリントが終わったら、その感想を共有し、次回以降どういった点が改善できるかについて話し合います。この振り返りはレトロスペクティブと呼ばれます。先述の通り、スクラム開発では継続的な改善に重きが置かれています。次のスプリントでは遠慮なく新しいプロセスを試し、効果が少ないと思われる戦略は修正しましょう。スプリント振り返りは、テンプレートを用いて効率化しましょう。
スクラム (Scrum) においては、3 つのアーティファクトが存在します。アーティファクトとは課題解決のための道具のようなものです。
プロダクトバックログ
スプリントバックログ
製品インクリメント
それぞれについて詳しく見ていきましょう。
プロダクトバックログは、やるべき仕事のマスターリストです。プロジェクトマネージャーやプロダクトオーナーによって優先順位がつけられます。
ただし、プロダクトバックログに入っているからといって、それがチームの仕事とは限りません。プロダクトバックログの内容は、スクラムスプリント中にチームが取り組める仕事の選択肢です。プロジェクトオーナーは顧客や市場、プロジェクトチームからの情報を基に、頻繁にプロダクトバックログの順位を並び替えたり、更新したりする必要があります。
プロダクトバックログテンプレートを作成スプリントバックログは、スクラムスプリント中にチームが取り組んだ仕事や製品のリストです。スプリントバックログの項目はスプリント計画セッションで選ばれ、スプリント計画プロジェクトがある場合はそこに移されます。
1 回のスプリント中にバックログの内容すべてを納品することはできないかもしれませんが、スプリント中にスプリントバックログに何かを追加することはおそらくないでしょう。そういったことが頻繁に発生するようであればスプリント計画フェーズにもっと時間をかけて、スプリント中何に取り組むのか、考えを固めるようにしましょう。
製品インクリメントとは、スプリントの終わりに納品するもののことです。新製品や機能、改善、バグ修正など、チームによって異なります。インクリメントはスプリントレビュー中に提示できるようにしましょう。そこで、スクラムの関係者がそのインクリメントについて考え、「完了」かどうかを判断し、それに基づいてインクリメントを納品するかどうかを判断します。
あらゆる仕事を管理できるワークマネジメントツール Asana なら、会議進行中に議事録をリアルタイムで取ることができます。今後のアクションアイテムやすぐにカバーしておきたいタスクなどはその場で作成し、担当者に割り振ることも可能。時間を最大限有効に使うために、Asana を活用しましょう。
無料トライアルを始めるスクラムでは主に 3 つの役割があります。
プロダクトバックログの責任者です。ユーザーの要望を把握し、ユーザーの体験談をチームや経営陣の関係者に伝えることに重点を置きます。良いプロダクトオーナーは、次に何を納品すべきかを明確にします。最終的に、納品物が出荷できる状態であるかどうかを判断するのはプロダクトオーナーになります (頻繁に納品する傾向にあります)。
スクラムマスターはさまざまなスクラムイベントを実行します。スクラムのプロジェクトマネージャー、進行役として考えてください。スクラムマスターはデイリースタンドアップミーティングを進行したり、スプリント計画、スプリントレビュー、振り返りミーティングを開催します。
スクラムチームはスプリントに取り組むすべての人々を指します。チームメンバーはスクラムの目標である継続的な改善を達成すべく、自己組織化し、協力的である必要があります。
Asana の製品マーケティング部門長が Asana を使ってどう製品リリースプロセスを管理しているのか、その秘訣をご紹介します。
スクラム開発には、その適用と有効活用に役立つ 6 つのスクラムの原則があります。
スクラムでは透明性、検査力、適応力が重視されます。
透明性: チーム内で進捗や課題、リスクなどの情報が可視化されている
検査力: 作成物および進捗は適切に検査されている
適応力: 必要な場合は、柔軟かつ迅速に軌道修正を行う
この 3 つはしばしば「スクラムの 3 本柱」と呼ばれ、後述する「スクラムの価値基準」と併せて、スクラム開発手法を特徴づける項目として挙げられます。
スクラム開発には役割やルールがありますが、すべてのスクラムメンバーにタスクや仕事の責任が課されます。スクラムでは、責任を共有することによってチームがよりクリエイティブでダイナミックになると考えます。
スクラムスプリント中や終了後に協力し合うことで最大限の結果が得られます。
スクラムスプリントのゴールは、最高のビジネス価値を提供することです。そのためには、スクラムプロセスの最初から作業に優先順位を付ける必要があります。
スクラムプロセスにはスプリントそのものやデイリースタンドアップ、振り返りなど、時間ベースのアクティビティが多数あります。スクラムは継続的な改善という信念を基に成り立っているため、次のタスクへと進み、仕事を改善していくために、仕事の時間を区切ることが重要です。
スクラムでは、最初の製品は完璧なものではありません。しかし、反復的に開発を行うことで、チームは顧客のニーズにうまく対応し、価値観に基づく優先順位に従って製品やアウトプットを変更できます。
コラボレーション向上が実現する Asana の機能を見るスクラムを成功させるには、チームはスクラムガイドで定義されている 5 つの主なスクラムの価値基準に従わなくてはなりません。
スクラムチームは 1 つのユニットであり、チームメンバーはお互いを信頼する必要があります。スクラムメンバーは最適なソリューションを見つけ出すために、期間中はスプリントに全力を注ぎ (コミットし)、継続的な改善に専念します。
スクラム開発中、正確な答えのない難題に遭遇することもあるかもしれません。スクラムチームは最適なソリューションにたどり着くために、難しい質問を率直に投げかける勇気と、それに正直に答える勇気を持たなくてはなりません。
どのスクラムスプリントでも、スクラムチームは製品バックログから作業します。スクラムチームはスプリントの終わりまでに成果物を完成させるために、バックログから選んだ作業に集中する必要があります。
スクラム中、予期せぬ事態も起こるでしょう。スクラムメンバーはメンバー 1 人 1 人にとっての学びとなり、なおかつ製品やプロセスの改善に役立つような新しい意見や機会を受け入れる必要があります。
コラボレーションはスクラム開発の重要な要素です。そしてチームのコラボレーションを促進するには、チームメンバーは他のメンバーを、スクラムマスターを、そしてスクラムプロセスを尊重する必要があります。
スクラム、かんばん、アジャイルという手法は、リーン方式のフレームワークという枠組みの中ですべて密接に関連しています。それぞれの特徴や考え方の違いを見てみましょう。
アジャイルは、チームが継続的な改善を行うのに役立つプロジェクト管理手法です。アジャイルチームでは、チームが変化に対応し、不確実性に対処できるよう、反復的で段階的な開発が重視されます。スクラムとかんばんは、どちらもアジャイル方法論のひとつです。「アジャイル」は、それらの総称であると考えてください。
そのアジャイル手法の中でも人気なのがスクラム開発です。スクラムを使っているのなら、それはアジャイルチームだと言えます。しかし、スクラムフレームワークには他にもアジャイルな開発に役立つ役割やシステムがあります。スクラム開発では、アジャイル開発と同様、チームは継続的な改善を目指しますが、どちらかと言うと方針やフレームワークを指すアジャイルとは異なり、スクラム方法論とはスプリントやスタンドアップ、振り返りなどの手段を通してチームが継続的に改善できる具体的な方法を確立するものです。
かんばんフレームワークもアジャイルのひとつです。かんばんは、継続的なプロセスや仕事を管理する視覚的な手段です。かんばんツールを使えば、仕事が完了するまでの段階的な動きを視覚化できます。多くの場合、スクラムを使用するチームはかんばんボードで仕事を視覚化しますが、そうすることがスクラムフレームワークの条件というわけではありません。
記事: かんばんとスクラムの違いとは?スクラム開発 (Scrum) は、どんなチームにでも合うものではありませんが、製品やソフトウェアの開発、エンジニアチームにのみ有効な手段というわけでもありません。どんなチームもスクラムフレームワークに適応し、継続的な改善を利用して大きな仕事を成し遂げることができます。以下では、スクラム開発の長所と短所についてご紹介します。
スクラムは、コードや新機能などの典型的な「製品」であれ、マーケティングキャンペーンやクリエイティブアセットなど、一般的ではない形の「製品」であれ、頻繁に何かを開発、納品する必要のあるチームでの使用が最も効果的です。
スクラム開発のメリットは以下のとおりです。
機敏かつ柔軟に仕事をできるようになる
チームワークが促進され、より効果的な目標達成に役立つ
スクラムメンバーは製品バックログからタスクを引き出しているため、常に自分が何に取り組んでいるかを正確に把握できる
何を「完了」とするか、チーム全員が共通認識を持っているので、目標が何であるかも正確に理解できる
スクラムプロセスでは変更が良しとされているため、しばしばスコープクリープに苦しむことがあります。変更が多すぎる場合や顧客フィードバックの数が多く内容がバラバラな場合は、スプリントを何度も反復しても意味のある結果を得られず徒労に終わってしまうかもしれません。このスクラム開発ならではのリスクを回避する方法をご紹介します。
解決策: 各スプリントの目的とインクリメントを明確に定義するようにしましょう。さらに、スクラムチーム全体に何を「完了」とするかを明確に理解させ、「完了」を超えないようにしましょう。必要な場合は変更管理プロセスを導入してこういった問題を防ぎましょう。
スクラムチームでは多くのミーティングが開催されます。定期的なスプリント計画とスプリントレビューに加え、毎日のスタンドアップミーティングもあります。効率的ではないと感じるかもしれません。
解決策: 毎日のスクラムミーティングにあまり意味が感じられないようであれば、やり方を変えてみましょう。スタンドアップの記録をつければ、チームにとって何が役に立ち、何がそうではないかが見えてきます。
スクラムは、製品、エンジニアリング、ソフトウェア開発チームでなければ導入が難しい可能性があります (ただし、不可能というわけではありません)。
解決策: チームでスクラムを使うことが決まったなら、スクラムプロセスがどのように役立つかを明確にしましょう。可能であれば現在の問題点を特定し、役立つかもしれないスクラムイベントを挙げましょう。さらに最初の数回のスクラムスプリントの中でいくつかトレーニングセッションを開催して、チームの成功をサポートしましょう。
最高のスクラムチームとは、協力的で、反復的で、どのスプリントでも何に取り組んでいるかが明確になっているグループです。それを実現させるには、Asana のようなプロジェクト管理プラットフォームを活用しましょう。Asana を使ってスクラム開発を実行するとどのようなメリットがあるのか、アジャイル開発ガイドをご覧ください。