近年、IT業界をはじめ様々な分野で、DXの取り組みが進んでいます。この流れの中で、ソフトウェア開発の手法として「アジャイル開発」が注目されており、それに伴い「スクラム」という言葉がよく使われています。
そこで今回は、本記事では、「スクラムという言葉を聞いたことがあるものの、よくわかっていない方」に向けて、スクラムの意味や原則・特徴などを分かりやすくご紹介します。
スクラムにおける完了の意味や、スクラムを進める具体的なプロセス・手順についても解説していますので、スクラムについて深く理解して開発に生かしたい人にとって必見の内容です。
スクラムの意味
スクラムとは、ソフトウェア・サービスの開発方法の一つを意味する言葉です。
公式のガイドラインである「スクラムガイド」に定義されています。
スクラムの語源はラグビーの「Scrum(セットプレーの一つ)」にあり、チーム全員で力を合わせてゴールに向かうイメージが込められています。
スクラムには、プロジェクトを小さな部分に分割し、チーム全員で協力して進めることで開発のスピードを上げつつ、随時変更に対応する柔軟性を持たせられる点に大きな特徴があります。
スクラムガイドの意味
スクラムガイドにおいて、スクラムは「複雑な問題に対応する適応型のソリューションを通じて、人々・チーム・組織が価値を生み出すための軽量級フレームワーク」であると定義されています。
スクラムガイドは、ソフトウェア開発手法であるスクラムの正式な手引書です。
スクラムの創始者である、ケン・シュエイバー氏とジェフ・サザーランド氏によって作成されました。
スクラムガイドは2010年に最初のバージョンが発行され、それ以降も更新が続けられています。
スクラムを正しく理解し効果的に使うための基本的なルールや考え方がまとめられており、スクラムを行う上での「バイブル」ともいえる重要な文書です。
参考:Ken Schwaber & Jeff Sutherland「スクラムガイド」2020年11月
スクラムの歴史
現在普及している開発手法の「スクラム」は、1986年に竹内弘高氏と野中郁次郎氏によって書かれたハーバード・ビジネス・レビューの記事で初めて紹介されました。
彼らはチームが一丸となって進んでいくイメージから、スクラムという名前を付けました。
1995年にはケン・シュエイバー氏とジェフ・サザーランド氏が、彼らの考えをさらに深化し、アジャイル開発の一環として「アジャイルマニフェスト」と「SCRUM Development Process」を発表しました。
この時点で、スクラムがより整理され、一般に広まる土台が完成したと考えられています。
その後、ケン・シュエイバー氏とジェフ・サザーランド氏により、定期的に更新される文書「スクラムガイド」が発表され、現在に至ります。
合わせて読みたい
スクラムを活用したアジャイル開発の特徴やメリットについて解説!
スクラムとは、アジャイル開発の手法の一つで、顧客のニーズに合わせて柔軟に開発を進めることができます。本記事では、スクラムの概要やメリット、手順、ツールの活用方法.....
スクラムの原則と特徴
スクラムには、その運用にあたって指針となる6つの原則が存在します。
下表に、6つの原則を分かりやすくまとめました。
原則 | 補足 |
経験的プロセスの管理 | プロジェクトの進行状況を常にチェックし、透明性と柔軟性を保つ。 うまくいっている点、改善が必要な点を確認する。 |
自己組織化 | チームメンバー全員が責任を共有し、自分たちでタスクを管理する。 これにより、チームがより創造的で活発になる。 |
協力の促進 | プロジェクトの各段階でチームメンバーが協力して作業を行うことで、最良の結果が得られる。 |
価値に基づく優先順位付け | プロジェクトのゴールは、最大のビジネス価値を生み出すこと。 これを実現するために、タスクの重要性を評価し、最も重要なものから取り組んでいく。 |
時間を区切る | スクラムのプロセスには時間ベースのアクティビティが多数存在する。 スクラムは継続的な改善という信念を基に成り立つことから、次のタスクへと進んで仕事を改善していくために、仕事の時間を区切ることが大切。 |
反復的な開発 | 最初の製品は完璧ではないのが当然。 プロジェクトを進めながら、顧客の要求に応じて反復的に改善していくことでプロダクトを調整することが大切。 |
上表のような原則があることから、スクラムには大きな特徴が見られます。
ここからは、スクラムに見られる代表的な3つの特徴を解説します。
少人数による開発
スクラムでは、5人から10人ほどの少人数のチームで開発を進めます。
メンバー同士が密接にコミュニケーションを取りながらプロジェクトを進めていく点が特徴的です。
顧客も巻き込み、開発プロセスに意見を出してもらいます。
一般的な開発プロジェクトと違い、スクラムではプロジェクトマネージャーを置かないのが基本です。
その代わりに、開発チーム自体が進捗・スケジュールを管理します。
ときには、スクラムマスターと呼ばれるリーダーがチームを指導することもあります。
コミュニケーションの重視
スクラムでは、メンバーそれぞれが特定の役割・タスクを担当し、効率的な開発の進行が目指されます。
スクラムを効率的に進めていくためには、メンバー同士の密接なコミュニケーションが大切です。
仮にコミュニケーションが円滑に進まないと、開発そのものが順調に進まなくなります。
そのため、スクラムではコミュニケーションの重要度が非常に高いです。
開発チームのリーダーであるスクラムマスターは、メンバー同士が自由に意見を交換できるような雰囲気づくりにも努める必要があるでしょう。
短期間で開発を繰り返す
スクラムでは、開発作業を「スプリント」と呼ばれる小さな部分に分割して進めます。
一つのスプリントは、4週間以内の短期間で組まれるのが通常です。
スプリントには、要件定義・設計・実装・テスト・リリースといった一連の開発工程が含まれます。
スプリントを繰り返すことで、一つ一つの部分が完成していき、顧客が使える機能が少しずつ増えていくようになります。
合わせて読みたい
アジャイル開発とウォーターフォール開発の違いを比較!
アジャイル開発とウォーターフォール開発の違いは、開発工程の進め方です。小さな開発サイクルを繰り返すアジャイル開発に対し、ウォーターフォール開発は、川上から川下へ.....
スクラムにおける役割
スクラムに直接的に関わるロールは、主に3つあります。
それぞれのロールの概要、担当する役割を順番に解説します。
プロダクトオーナー
プロダクトオーナーとは、スクラムチームが開発する製品の責任者で、その製品の価値を最大限に引き出す役割を果たす存在です。
顧客・関係者の要望を聞き、その情報をもとに製品の改善に必要な項目の一覧「プロダクトバックログ」を作り上げて管理することが最大の役割とされています。
プロダクトオーナーの主な役割を以下にまとめました。
- プロダクトゴールの設定:製品の最終的な目標を明確にし、チームに伝える
- プロダクトバックログアイテムの作成::製品の改善に必要なタスクや機能をリスト化し、チームに明確に説明する
- プロダクトバックログアイテムの整理:何を先にやるべきかを決め、タスクの順番を整理する
- プロダクトバックログの透明化:全チームメンバーが閲覧・理解できる環境を整える
プロダクトオーナーは製品の方向性を定めたり、チームに作業の優先順位を示したりする役割を果たし、プロジェクトの進行を円滑にする上で欠かせない存在です。
スクラムマスター
スクラムマスターは、スクラムチームの支援役として、チームメンバーがスクラムの方法論を理解し、うまく実践できるよう助ける役割を果たします。
大きな役割は、スクラムがきちんと機能していることを確保し、プロジェクトの成果を最大化することです。
しばしばスクラムマスターはプロジェクトマネージャーと混同されるため、違いを把握しておきましょう。
プロジェクトマネージャーはプロジェクト全体の責任者で、計画の立案・意思決定などチームの指導を行います。
一方、スクラムマスターはチームの「管理」は行わず、チーム全体を支援する観点から、スクラムのフレームワークの導入・定着を促進し、スクラムの成果の最大化を図る点が特徴的です。
スクラムマスターは、自信がトップに立ってチームを引っ張るのではなく、サーバントリーダーとしてチームに奉仕する存在であるべきと考えられています。
開発メンバー
スクラムにおける開発メンバーとは、インクリメント(完成の定義が満たされており、リリース可能な成果物)を作成する人のことです。
開発メンバーの目標・作業内容は、プロジェクトによって異なります。
また、プロジェクトによっては、エンジニアだけでなく、デザイナーやライターなども開発メンバーに含まれることがあるでしょう。
開発メンバーが担う役割は、主に以下の4つです。
- スプリントの計画(スプリントバックログ)を作成する
- 完成の定義を忠実に守ることで品質を保つ
- スプリントゴール達成に向けて日々の計画を調整する
- 専門家として協力し、メンバー同志がお互いに責任を持って作業を進める
スクラムにおける完了の意味
スクラムの開始にあたって、あらかじめチーム全体で「完了」の意味について共通の理解を持っておくことが重要です。
「完了」は、一般的な完璧や完全といった意味とは異なります。
スクラムでは継続して改善するプロセスが重視されるため、そもそも「完璧」な状態は存在しません。
ここでの「完了」とは、ある段階の作業が終了したという意味であり、それ以上何も手を加える必要がないというわけではありません。
イメージしやすいよう、スクラムチームにおける「完了」の定義の一例をご紹介します。
- リリースの準備が整った
- テストが終了し、ベータ環境でのリリースの準備が整った
- 受け入れテストが終了し、全ユーザーへ向けたリリースの準備が整った
プロジェクトによって「完了」の定義は異なるものですが、定義がどのようなものであろうと、チーム全員が共通認識を持つことが大切です。
スクラムのプロセス・手順
スクラムは、具体的にどのような流れで進められるのでしょうか。
本章では、スクラムの手順を4つのプロセスで解説します。
計画の策定・実施
まずは、プロジェクトの進行に必要な機能のリスト(バックログ)から、そのスプリントで取り組む部分を選びます。
その際、最も重要な機能から順に取り組んでいくことが重要です。
このように、スプリント内で取り組む機能のリストを「スプリント・バックログ」と呼びます。
そしてスプリント・バックログを決める会議を「スプリントプランニングミーティング」と呼びます。
この会議で決めた内容に基づいて、実際に開発を進めていきます。
進捗報告
スクラムでは、毎日決まった時間に短い会議を行うのが通常です。
この会議を「デイリースクラム」と呼びます。
ここでチームはその日の進捗を報告し合い、その日の作業計画を立てます。
スクラムの特徴は、チーム間のコミュニケーションを重視する点です。
だからこそ、日々の会議でお互いの状況を共有する時間を設けることが大切です。
プロジェクトがどれくらい進んでいるかだけでなく、これから取り組むべき課題についても話し合いましょう。
デイリースクラムは、短時間で要点をつかみ、メンバー全員が同じ方向を向いて作業に取り組めるようにするための重要な時間です。
機能の評価
プロジェクトが進行し、計画通りに機能を実装できたら、その機能をテストし評価します。
この段階を「スプリントレビュー」と呼び、開発の一区切りであるスプリントの最終日に実施するのが基本です。
具体的には、最初に立てたバックログで決めた目標に対して、どれだけその機能が合致しているかをチェックします。
評価の結果、計画に沿っていない部分があれば、計画を見直して新たなバックログを作ることもあります。
スプリントのふりかえり
アジャイル開発では、プロジェクトを一気に完了させるのではなく、いくつかの小さなスプリントに分けて進めます。
各スプリントの最後の日には、そのスプリントで何がうまくいったのか、何が問題だったのかをふりかえります。
もし問題が見つかった場合は、次のスプリントでどうやって改善するかの計画を立てます。
このように、ステップごとにふりかえりと改善を行うことで、プロジェクト全体をスムーズに進められるようになります。
スクラムに役立つおすすめのプロジェクト管理ツール
スクラムをはじめとするアジャイル開発の大きな特徴として、機能をリストアップしそれらの機能を要件定義・設計・開発・テストと反復し進行していく点があげられます。
それぞれの機能の仕様変更があった場合でも柔軟に対応できたり、顧客との意思合わせも頻繁に行われ、効率よくかつスピーディーに開発が進められたりする点が魅力的です。
その一方で、一度決めたプロセスを実行するウォーターフォール開発に比べて、アジャイル開発ではプロセス・スケジュール・進捗などの管理が複雑になりやすいです。
これらを効率的に管理するためには、ツールの導入が欠かせません。
そこで本章では、スクラムに役立つおすすめのプロジェクト管理ツール3つをご紹介します。
Lychee Redmine
Lychee Redmineは、オープンソースのプロジェクト管理ソフトウェア「Redmine」をベースに開発されたプロジェクト管理ツールです。
プロジェクト管理に活用できる豊富な機能が備わっています。
備わった機能を自分なりにカスタマイズできる点も、アジャイル開発に向いているでしょう。
フリープランは基本機能(ワークフロー・通知設定・ファイル共有・Wiki)とカンバン機能の限定された機能しか利用できませんが、有料プランはガントチャートをはじめさらに多くの機能が利用できます。
有料プランは30日間の無料トライアル期間を提供しているので、リスクなく始められ、その価値を実感できるはずです。
ぜひ一度お試しで使ってみてはいかがでしょうか。
プラン | 月額料金 | 利用機能 |
フリー | 無料 |
|
スタンダード | 900円 |
|
プレミアム | 1,400円 |
|
ビジネス[無料トライアルはこちらをお試しできます] | 2,100円 |
|
Jira Software
引用元:https://www.atlassian.com/ja/software/jira
Jira Softwareも、アジャイル開発におけるプロジェクト管理ツールとして代表的です。
スクラムボードの活用でタスク一覧を確認でき、メンバー間のタスクの確認・認識合わせ・やるべきことを把握できる点が魅力的です。
JIRAは、日本のアジャイル開発の現場でもプロジェクト管理ツールとして多くの導入事例があります。
料金プランは以下のとおりです。
料金 | トライアル | 主な機能 | |
Free | 0円(税込)/月 | – | ・ユーザー 10 名まで ・無制限のプロジェクト ボード ・バックログとタイムライン ・レポートとインサイト ・2GBのストレージ ・コミュニティサポート |
Standard | 920円(税込)/月 | 〇(7日間) | Freeプランの機能に加えて、 ・最大 35,000 人のユーザー ・ユーザーのロールと権限 ・監査ログ ・データ レジデンシー ・250 GBのストレージ ・営業時間サポート |
Premium | 1,730円(税込)/月 | 〇(7日間) | Standardプランの機能に加えて、 ・高度なロードマップ ・サンドボックスとリリース トラック ・プロジェクト アーカイブ ・アップタイム SLA の保証 ・無制限のストレージ ・年中無休の Premium サポート |
Enterprise | 要お問い合わせ | – | Premium プランのすべてに加えて、 ・無制限のサイト ・セキュリティの一元管理 ・ユーザーのサブスクリプションの一元管理 ・年中無休の Enterprise サポート |
Trello
引用元:https://trello.com/home
Trelloは、カンバン方式でシンプルで使いやすく、少人数のプロジェクトや個人のタスク管理などでの利用にも適しているタスク管理ツールです。
プロジェクト単位でボードの作成をできるほか、タスクをカードで管理できるために直感的に使用可能な点も魅力的です。
Trelloの料金プランは以下のとおりです。
料金 | トライアル | 主な機能 | |
Free | 0円(税込)/月 | – | ・無制限のカード ・ワークスペースあたり最大 10 枚のボード ・1 ボードにつき無制限の Power-Up ・無制限のストレージ(10MB/ファイル) ・ワークスペースでのコマンドの実行 250 回/月 |
Standard | 5ドル/月 | – | Freeプランの機能に加えて、 ・ボードを無制限に使用 ・詳細チェックリスト ・カスタム フィールド ・無制限のストレージ(250MB/ファイル) ・ワークスペースでのコマンドの実行 1,000 回/月 |
Premium | 10ドル/月 |
〇 |
Standardプランの機能に加えて、 ・ビュー: カレンダー、タイムライン、テーブル、ダッシュボード、マップ ・ワークスペース ビュー: テーブルとカレンダー ・ワークスペースのコマンドの実行が無制限 ・管理者とセキュリティの各機能 ・ワークスペース レベルのテンプレート |
Enterprise | 17.50ドル/月 | – | Premium プランのすべてに加えて、 ・無制限に使えるワークスペース ・組織全体の権限 ・公開範囲が組織のボード ・公開ボード管理 ・マルチボード ゲスト ・添付ファイルの権限 |
スクラムの意味を理解し自社の開発に役立てよう
スクラムとは、ソフトウェア・サービスの開発方法の一つを意味する言葉です。
プロジェクトを小さな部分に分割し、チーム全員で協力して進めることで開発のスピードを上げつつ、随時変更に対応する柔軟性を持たせられる点に大きな特徴があります。
その一方、スクラムではプロセス・スケジュール・進捗などの管理が複雑になりやすいです。
これらを効率的に管理するためには、ツールを導入する必要があります。
効率的にスクラムを実施したいなら、簡単な操作でプロジェクト管理を実現できるLychee Redmineの導入がおすすめです。
有料プランは30日間の無料トライアル期間を提供していますので、ぜひ一度試してみてはいかがでしょうか。
本記事で紹介したプロセス・手順を参考に、ツールの導入などでより効率的にスクラムを進めましょう。