柔軟な開発を実現しやすく、サービスインまでの期間を短縮しやすいアジャイル開発は、新規サービス開発や DX推進などにおいて有効な手法です。アジャイル開発を実施する上では、アジャイル開発手法の一つであるスクラム開発を採用するケースも多いですが、アジャイル開発とスクラム開発にはどのような違いがあるのでしょうか。
この記事では、スクラム開発を得意とする当社、スパイスファクトリーが、スクラム開発の概要やそのメリット・デメリット、アジャイル開発との違い、主な事例などについて解説します。
Contents
スクラム開発とは
はじめに、スクラム開発の概要について紹介します。
スクラム開発の概要
スクラム開発とは、少人数のチームで「スプリント」と呼ばれる一定の開発期間(1~4週間程度)を繰り返すことでシステムを作り上げていく手法のことです。
スクラム開発という言葉は、ラグビーのスクラムに由来しています。
ラグビーのスクラムでは、チームメンバーが肩を組んでチームワークを発揮しますが、スクラム開発でも同様にチームが一丸となって開発を進める行うことが特徴です。
スクラム開発はアジャイル開発手法の一つであり、その中でも代表的なものといえます。
スクラム開発の流れや役割、イベントに関しては以下の記事で詳細に解説していますのでぜひ参照してください。
アジャイル開発とは?
アジャイル開発とは、ビジネス価値の最大化に向けて、顧客に価値のあるソフトウェアを早く、継続的に提供するためのアプローチのことです。
「アジャイル」という言葉は「機敏に」という意味を表します。
従来広く利用されてきたウォーターフォール型の開発では、一般的に要件定義からリリースまでは上流から下流に流れる形で進み、前の工程に戻ることは少ないといえます。一方でアジャイル開発では各工程を繰り返すことで、一度に 100点を取るのではなく、進みながら方針を修正することができます。
両者にはメリット、デメリットがありますが、変化に対する柔軟性が高く、また早い段階で実際にシステムに触ることができるというメリットがあるアジャイル開発は、変化の激しい現代において有効なシステム開発手法といえます。
アジャイル開発で用いられる主な手法は以下のとおりです。
上述した通り、スクラム開発はアジャイル開発手法の一つであり、アジャイル開発の理念を実現するための一つの手段となります。
- スクラム
- XP(エクストリームプログラミング)
- FDD(ユーザー機能駆動開発)
- リーンソフトウェア開発
アジャイル開発については以下の記事でも詳細を解説していますので、よろしければご参照ください。
スクラム開発に必要な体制
前述した通り、スクラム開発には「プロダクトオーナー」「スクラムマスター」「開発者」という3つの役割が存在します。以下では、それぞれの役割についてご紹介します。
プロダクトオーナー(PO)
プロダクトオーナーとは、プロダクトの要求管理、機能の優先順位付け、品質チェックを行い、プロダクトの価値最大化を目指す責任者です。
プロダクトオーナーはプロダクトの成果に責任を持ち、その方向性を決めます。方向性を明確にするためにも、一つのプロダクトにつき、プロダクトオーナーを担当するのは一人です。プロダクトオーナーは、スクラムチームから生み出されるプロダクトの価値を最大化することを目指します。
プロダクトオーナーについては以下の記事にて詳しく解説しておりますので、よろしければご覧ください。
スクラムマスター(SM)
スクラムマスターは名前の通り、スクラム開発の専門家として活動し、スクラムの理論と実践をチームメンバーに理解させるための支援や、問題解決を担当します。
スクラムマスターは「スクラムを確立させる責任者」と表現できます。プロジェクトマネージャーや管理者とは異なり、スクラムマスターはプロジェクトがスムーズに進むようサーバントリーダーとして奉仕します。従って、タスクの割り当てや進捗管理などのマネジメント作業は行いません。
スクラムマスターについてさらに詳しく知りたい方は、次の記事をご覧ください。
開発チーム(DEV)
開発チームはシステムの開発を担当し、スプリントでプロダクトを改善する専門家です。開発チームはプロダクトの品質に責任を持ちます。
スクラムにおける開発チームは3~9人が適切とされます。少人数だと属人化しやすく、大人数だとコミュニケーションコストが増えます。
スクラム開発においては、ウォーターフォール型開発でよくみられる「特定作業のみを行うサブチーム」は設置しません。全員が機能横断的に設計からドキュメント作成まで多様な作業を担当することが求められます。各担当者に明確な役割分担はなく、「自己組織化」によりチームで合意形成を図りながら進めます。
スクラムを採用するメリット・デメリット
以下では、主にビジネス側においてスクラム開発を採用することでどのようなメリットを得ることができるのか、また、どのようなデメリットがあるのかを紹介します。
スクラムを採用するメリット
メリット①:優先度やサービスの方向性の柔軟な変更
一度に全機能の要件定義を実施するウォーターフォール型開発と比較して、スクラムでは開発単位(スプリント)で要件の変更ができます。実際に開発されたシステムを見て、機能面やデザイン面の改善も可能です。
現代のビジネスはスピードが重要であり、また環境の変化に追従するために方向性を修正していかなければなりません。このような環境においては、変化に強いスクラム開発が有効な手段となります。
メリット②:早期リリース
スクラム開発では継続的な機能拡張を前提としているため、早期にリリースしたうえで、段階的に機能を追加していくというアプローチが可能となります。
これにより、新規事業開発において MVP(Minimum Viable Product:顧客のニーズを満たす最小限のプロダクト)を構築し、想定ユーザーに評価してもらうような取り組みもしやすくなります。評価結果を受け、機能の修正や追加などを行っていく際にも、スクラムであれば対応しやすくなります。
メリット③:チームのモチベーションアップ
スクラム開発の採用は、チームのモチベーションアップという観点でも効果があります。
スクラム開発では、おのおのが自律的・主体的に作業を担当し、チームに貢献することが求められるため、メンバーの自主性と責任感が向上します。また、定期的なミーティングにより継続的なフィードバックを受けることで、コミュニケーションも促進されます。
スクラム開発は、チーム全体の一体感とモチベーションが向上し、結果として組織全体のパフォーマンスが向上する仕組みであるといえるでしょう。
スクラムを採用するデメリット
デメリット①:メンバーにスキルが必要
スクラム開発では、ウォーターフォール開発のように正確に定められた設計書に沿って機能を開発するわけではなく、エンジニアの柔軟性が重要となります。また、少人数でプロジェクトを進めることから全員が主役になる必要もあります。
このような理由から、チームメンバーには一定レベル以上のスキルが求められます。十分にスキルを持ったメンバーでチームを構成することが求められます。
近年では、IT人材の不足状況もあり、人材確保が難しい状況にあります。スキルのあるベンダーの選定や活用もスクラムでシステムを構築していく上では重要といえるでしょう。
デメリット②:開発着手時点でスコープ・スケジュール・予算が確定しない
ウォーターフォール開発では、要件定義工程にて開発のスケジュールと工数を確定させます。
一般的には開発工程は請負契約となり、スコープとなる機能を実現するためのスケジュール・コストに対する責任はベンダー側にあります。また、仕様書に定められた要件の範囲内であれば、コストは一定となります。
一方で、スクラムにおいてはスプリント単位での短期的なスケジュールや工数は確定させるものの、全機能のスコープ・スケジュール・コストは事前に確定させません。契約形態としても準委任契約が一般的であり、成果物に対する責任はベンダー側にはありません。
スクラム開発においてはスコープ・スケジュール・コストを柔軟に変更できるメリットはあるものの、契約面でこれらが担保されているわけではないので注意が必要です。
このような理由から、スクラム開発を行う際には信頼できるパートナーを見つけたうえで、協力できる体制を構築することが重要といえます。
デメリット③:チーム内のコミュニケーションが重要となる
スクラム開発において、チーム内のコミュニケーションは非常に重要です。
スプリントごとに柔軟にスコープやスケジュールを変更できる点がメリットである反面、全体のスコープやコストが事前に確定しないため、常にチームメンバー間での密な連携と信頼関係が求められます。チーム内のコミュニケーションが不十分であれば、スクラム開発の強みが生かされないどころか、プロダクト開発に支障が生じる事態ともなりかねません。
よって、スクラム開発を成功させるためには、おいてはメンバー同士が適切にコミュニケーションをとる必要があります。
スクラム開発の流れ
具体的に、スクラム開発はどのような流れで進めていくものなのでしょうか。以下では、スクラム開発の具体的な流れは以下のとおりです。
スクラムチームの体制構築
まず初めに、スクラム開発を実施していくうえでのチームを構築します。前述のとおり、スクラム開発では以下の3つのロールが存在します。
- プロダクトオーナー
- スクラムマスター
- 開発チーム
まずこれらの役割を誰が担当するのか決定し、スクラム開発プロジェクトの立ち上げを行います。
プロダクトゴールおよびプロダクトバックログの作成
スクラムでは、チームの目標はプロダクトゴールとして定めたうえで、ゴールを実現するために必要となる機能をプロダクトバックログとしてまとめます。プロダクトバックログの要求項目は優先順位をつけ、各スプリントで優先順位の高いものから開発します。
プロダクトゴールやプロダクトバックログの作成はプロダクトオーナーが行いますが、必要に応じてスクラムマスターが支援します。
スプリントプランニング
スクラム開発では、一定の期間である「スプリント」を繰り返し、計画・設計・開発・テストを行います。スプリントは通常1週間から1カ月程度で設定され、チームの成熟度や人数、ビジネス状況によって決まります。
スプリント開始時にはスプリントプランニングを行い、開発する機能とゴールを定義します。各スプリントでは、チームのリソースと見積もりを基に、実現可能な範囲で開発を進めます。
スプリントの完成条件はプロダクトオーナーと開発チームが合意を行います。
スプリントの実施
各スプリントでは、スプリントプランニングで定義した開発範囲を目標とし、コーディングとテストを進めます。スプリントの完了時までに、実際に利用できる形でシステムを構築します。
スプリント期間中は毎日デイリースクラムを行い、本日の作業や進捗をチームで報告します。デイリースクラムは15分程度で同じ場所・時間に実施することが一般的です。通常は開発チーム内のみでデイリースクラムを行いますが、スクラムマスターやプロダクトオーナーも参加する場合があります。
スプリントレビューの実施
スプリント終了時には、主要なステークホルダーを招き、今回開発した機能のデモを行うスプリントレビューを実施します。
スプリントレビューでは、要求通りに開発が進んでいるか、改善点が無いかを検討します。そして、この結果を元に、プロダクトゴールに向けてプロダクトオーナーはプロダクトバックログの内容や優先順位を見直します。
スプリントレトロスペクティブによる振り返り
スプリント終了後にはスプリントレトロスペクティブと呼ばれる振り返りを行います。
スプリントレトロスペクティブでは、スプリント実施中における課題の特定や改良案をチームで検討します。改善策を次のスプリントに取り入れることで、次回以降のスプリントの質を高めつつ、チーム全体の成長も目指します。
ここでは簡単にスクラム開発の流れについてご紹介しました。より詳しくスクラム開発の流れについて知りたい方は、以下の記事もご覧ください。
また、スクラム開発の中でも、特にスプリントについて知りたいという方は、以下の記事も参考になるはずです。併せてご覧ください。
アジャイル開発・スクラム開発を採用した主な事例
当社、スパイスファクトリーでは、アジャイル開発やスクラム開発を採用した多数の開発事例があります。ここでは、そのうち 2つの事例を紹介します。
東京都デジタルサービス局 | アジャイル型方式によるプロトタイプ開発委託
東京都は、デジタル技術を活用した行政の革新を目指し、都政のQOS(Quality of Service)向上を図るために、2021年にデジタルサービス局を発足させました。同局では、国際的な競争力の強化や、都民生活の質と利便性の向上を目指し、新たな価値を迅速かつ柔軟に生み出すためにアジャイル開発手法を積極的に採用しています。
当社は、この度、その取り組みの一環として企画された4つのアジャイル型プロトタイプ開発プロジェクトを担当いたしました。
株式会社トムス・エンタテインメント|ProGrace開発によるアニメーション制作DX
株式会社トムス・エンタテインメントは、日本のアニメーション制作業界が抱える制作面、ビジネス面、そして人材育成に関するさまざまな課題を踏まえ、「アニメSDGs -2030年までに持続可能な日本アニメ産業の未来を創る-」というビジョンを掲げています。当社では、アニメ業界のDXを推進する「ProGrace(プログレース)」の開発を継続的に支援しております。
本記事では、同社のプロジェクトご担当者様に、プロジェクトの背景や今後の展望について詳しくお話を伺いました。
変化の激しい現代にあった開発手法がスクラム開発
この記事では、スクラム開発の概要やそのメリット・デメリットなどについてご紹介しました。ビジネスの速度が向上している現代において、柔軟に開発内容を変更できるスクラム開発の有効性は高いといえます。一方で、スクラム開発を成功させるためには高いスキルを持ったエンジニアが必要となります。
スパイスファクトリーでは「Form a scrum」という企業文化に基づき、スクラムをはじめとしたアジャイル開発によってこれまで多くのお客さまのシステム開発を支援してまいりました。アジャイル開発でプロジェクトを実施したいという方は、ぜひお声がけください。
About The Author
スパイスファクトリー公式
スパイスファクトリーは世界がより良い⽅向に向かうよう、変化を加速させる “触媒”(スパイス)としての役割を全うすることをミッションとしたDXエージェンシーです。最新テクノロジー、UIUX、アート、マーケティングなどの技術・メソッドを⽤いて、モノゴトを素早く、美しく、本質的に再定義し、幅広いクライアントのデジタルトランスフォーメーションを⽀援しています。