公開日:2020.03.15
更新日:2025.01.27
システムの開発の手法として、ウォーターフォール開発とアジャイル開発があります。その中で、注目されている開発手法がアジャイル開発のスクラム開発です。
今回はスクラム開発の定義や、スクラム開発の流れ、メリット・デメリットなどについて紹介します。
特に下記の方にこの記事を一読していただきたいです。
・スクラム開発を学習したい方
・スクラム開発で開発している方
・スクラム開発の理解を今以上に深めたい方
あなたの経験職種のフリーランス案件相場を確認しませんか?
スクラム開発とは、アジャイル開発の1つです。
アジャイル開発は従来のウォーターフォール型やプロトタイプを作成する反復型とは異なる、適応型の開発手法の総称です。
アジャイル開発の具体的な手法・方式は、エクストリーム・プログラミング(XP)、ユーザー機能駆動開発(FDD)、Dynamic Systems Development Method(DSDM)などがあり、スクラム開発もアジャイル開発の手法の1つです。
実は、スクラム開発というのは、スクラム開発という名前が付けられる前から、日本企業内で行われていた開発手法です。
1986年に竹内弘高氏、野中郁次郎氏が発表した論文「The New New Product Development Games」がスクラム開発の原点と言われています。
この論文ではアメリカ(NASA)で行われていたウォーターフォール型の開発の比較で、日本企業(富士ゼロックス、キヤノン、ホンダ)が行っていた開発手法を、ラグビーのスクラムにちなんで、スクラム開発として紹介しています。
スクラム開発では、チームとして「何が必要か?」「いつまでに必要か?」という視点からタスクを割り振り、チームとしてプロダクトの完成を目指します。
そのため、チームワークやコミュニケーションが重要です。
スクラム開発について少し理解いただけたかと思いますので、この章では、スクラム開発において必要なメンバーを解説していきます。
スクラム開発で必要な役割は「プロダクトオーナー」、「スクラムマスター」、「開発メンバー」の3つです。
プロダクトオーナー
プロダクトオーナーとは、プロダクトに必要な機能を定義し、タスクの順位付けを行います。
最終的なプロダクトについて責任を持つ立場です。
必要機能の選択や機能優先順位決めなど、プロダクトのビジョンを考えます。
それを他メンバーに共有・説明します。プロダクトオーナーは開発をする訳ではなく、プロジェクトのスケジュールや予算管理をします。
スクラムマスター
スクラムマスターとは、スクラムがうまく回るように全体調整する役割です。
また、開発チームで出た課題を解決するため、外部と交渉やメンバーと相談したりして課題解決を進めます。
つまり、プロジェクトを円滑に進めるための調整役のポジションです。
スクラムのルールや進め方をプロダクトオーナー・開発メンバーに説明し、効果的な実践を促します。
また、プロダクトオーナーや外部メンバーの不必要な開発や無謀な要望を修正したり、タスクを調整して開発メンバーに均等に業務が行き渡るようにします。
スクラムマスターは専任の場合や開発メンバー兼任の場合など、企業によって異なります。
開発メンバー
実際に開発を行うメンバーです。
参加するメンバー全員が、設計・ドキュメント作成・コーディング・テスト・運用などの開発スキルを保有していることが望ましく、特定の分野のみしか出来ないなどのスキルセットではあまり好ましくないです。
仮に不得意分野の場合、作業を融通し合いながら全てのメンバー全員の仕事を出来るようになることを目指します。
メンバーは平等であり、役職や年齢などの上下関係はありません。
なおスクラム開発においては、「設計者」「プログラマー」「デザイナー」といった区分けはありません。
機能を横断的に作れる能力を持った人たちが、プロダクトを中心において開発を進めていきます。
スクラム開発におけるスプリントの流れを解説していきます。
スクラム開発は、開発期間の単位である「スプリント」を基準に行います。
このスプリントは、開発を少しずつ区切って進めるため、期間を短く設定することが多く、約1週間~4週間を基準にしています。
例えば4週間をベースに開発する際、一通りの機能開発に加え、月に1回程度の機能アップデートや修正・バグ対応などに対応可能なスケジューリングとなります。
次にスクラム開発におけるスプリントの流れについて、手順をお伝えします。
バックログを作成
バックログとは、プロダクトへの要望をまとめたリストのことです。
スクラム開発の場合、このバックログには2種類が定義されています。
1つは、顧客やユーザーへの価値を一覧化したもので「プロダクト・バックログ」と呼びます。
プロダクト・バックログには開発における優先順位が付けられています。
また、プロダクト・バックログは、チームの役割を明確化し、納品物のクオリティを保証する必要があるため、その責任者であるプロダクト・オーナーによって定義される場合が多いです。
しかし開発メンバーからのフィードバックが反映される場合もあります。
2種類の内のもう1つは「スプリント・バックログ」と呼ばれ、詳細な仕様や開発の順番などを明確にします。
スプリントプランニングミーティング
スプリント・バックログを作成するのがスプリントプランニングミーティングです。
このスプリントでの目標を明確にし、詳細な仕様・項目や作業内容を各担当者を決めていくミーティングです。
この時重要なのは、チームメンバーは勝手に優先順位を変えてはいけないという事です。
また逆にプロダクト・オーナーは勝手に工数見積をしてはいけないという事です。
デイリースクラム
デイリースクラムとは、毎日作業開始前に全員で集まって行う打ち合わせです。
デイリースクラムは5~15分程度の時間で昨日までの作業状況、今日の作業予定、開発の上で障害になっている項目などを話します。
特に3点目の情報共有は重要で、チーム全体の進捗に影響を及ぼしますので、別途時間を取ってでも検討するべき内容・項目かどうかを共有しておきます。
スプリントレビュー
スプリントレビューとは、スプリントの最終日にプロダクトオーナーが成果物を確認する場のことです。
プロダクト・オーナーによる品質検査で、必ず動作するアプリケーションで行います。
ここを画面キャプチャなどで代用することはせず、当初立てたプロダクト・バックログの仕様・項目を正確に満たしているのかを検査します。
そのため、場合によっては営業担当者や顧客まで参加する可能性もあります。
なお検査確認後、新たなバックログが生成される事もあります。
新たに生成されたバックログは優先順位が付けられ、次回以降のスプリントプランニングミーティングで検討されます。
スプリントレトロスペクティブ
スプリントレトロスペクティブとは、スプリントを振り返ることを目的とした場を開催することを言います。
つまり反省会です。スプリントの良かった項目、悪かった項目を振り返り、次のスプリントで活かせるようにするのです。
また、場合によっては次のスプリントのゴールを決める場合もあります。
スクラム開発のメリット・デメリットについて解説していきます。
スクラム開発のメリットは、短い期間のスプリント単位で開発を進めていくため、プロジェクト途中での仕様変更に対して柔軟に対応出来るという点が挙げられます。
その他スクラム開発のメリットは、スプリント単位で開発期間を見積もることにより、作業工数を予想しやすく、全体の納期を比較的短縮出来る点も挙げられます。
一方、スクラム開発のデメリットは習得の難しさが挙げられます。
これまで主流のウォーターフォール開発に慣れていると、考え方が異なる点が多く導入時に研修などの教育コストが必要となります。
また、スプリントを繰り返すことで俯瞰してスケジュールを見れなくなってしまう可能性もあります。
その他スクラム開発は頻繁にミーティングを行いますが、コミュニケーションが苦手な人は苦痛に感じたり、開発メンバーがミーティングの時間を無駄だと感じてしまう事もあり得ます。
今回はスクラム開発の定義や、スクラム開発の流れ、メリット・デメリットについて解説してきました。
スクラム開発はサービス/プロダクト開発スピードを高め、変化に強い柔軟さが特徴の手法です。
スクラム開発を取り入れる事で、開発体制全体の見直しが行われますので、業務の改善や働き方改革にも貢献できると考えられています。
現在の開発手法に悩んでいる/改善したい方やこれからプロダクト開発をされる方は是非スクラム開発の導入を検討してみてはいかがでしょうか?
フリーランスエンジニア専門の求人・案件一括検索サイト「フリーランススタート」に少しでも興味がある方は是非ご登録ください。
なお、フリーランススタートはiOSアプリ版やAndroid版をリリースしています。
通勤しているエンジニア・デザイナーでちょっとしたスキマ時間で手軽にフリーランス求人・案件を検索したい、開発言語の単価が知りたい、フリーランスを将来的に検討している方などは是非インストールしてみてください。
フリーランススタートのアプリを有効活用して、フリーランスとして第一線で活躍しましょう!
フリーランススタート iOSアプリのインストールはこちらから→
フリーランススタート Androidアプリのインストールはこちらから→
本記事が皆様にとって少しでもお役に立てますと幸いです。
フリーランスお役立ち記事を検索
あなたの経験職種のフリーランス案件を見てみませんか?
SNSアカウントでログイン