スクラム開発の特徴を知る
アジャイル開発の手法の一つであるスクラム開発について、その特徴を学んでいきましょう。スクラム開発が一体どういうものなのか、アジャイル開発の関係性とともに見ていきます。
スクラム開発とは?
スクラム開発は、ひとつのゴールを目指してチームで仕事を進める枠組み(フレームワーク)のことです。短い開発期間(スプリント)の中で、システムにおける機能の実装と、その成果物の評価を行います。
スクラム開発はチームで作業の効率化を常に意識しながら開発にあたるため、コミュニケーションを重視している開発手法ともいえるでしょう。
アジャイル開発との関係性
ソフトウェアを開発するには、まずその開発手法を選択しなくてはなりません。そのうちのひとつが、アジャイル開発です。そもそもアジャイル開発とは、決められた短めの反復期間を何度も設けてリスクを最小化しながら、ソフトウェア開発を行う開発手法のことをいいます。 そしてそのアジャイル開発の中には、いくつかの手法があります。その中の一つにスクラム開発があるのです。つまり、アジャイル開発というカテゴリ中に、スクラム開発があるという構図となります。スクラム開発の主な手法
スクラム開発には、スクラムチームとスクラムイベントという二つの手法があります。ここからは、スクラム開発の主な手法について見ていきましょう。
チーム開発
チーム開発は、スクラム開発の基本ともいえる手法です。一定のスキルレベルを持っているメンバーでチームが構成され、自分自身で工程を管理するため自己責任が非常に強くなります。 メンバー同士で互いの能力を尊重し、しっかりとコミュニケーションを取らねばなりません。困っていることや不明点が発生したら、改善方法を話し合って解決します。 現場によって開発方法をカスタマイズしやすいのも、チーム開発のポイントの一つと言えるでしょう。イベント開発
スクラム開発は単に開発を進めるだけではなく、透明性を取るために規則的に行われる五つのイベントがあります。それをスクラムイベントと呼び、そのイベントに基づいて開発を行うのが、イベント開発です。イベント開発は、1カ月以下の短期スプリントの中で、バックログ・スプリントプランニング・デイリースクラム・スプリントレビュー・スプリントレトロスペクティブの『イベント』を実施してプロジェクトのゴールを目指します。
このイベントを繰り返すことで、スクラム開発が初めてのチームでもだんだんとなじんできます。
スクラムにおけるマネジメント手法
スクラムをチームマネジメント手法として捉えることで、その効果をより強く実感できるでしょう。以下で紹介するマネジメント手法を、スクラム開発に取り入れてみてはいかがでしょうか。
チームの構成や役割
チーム内ではプロダクトオーナー、開発チーム、スクラムマスターの三つの役割が与えられます。
プロダクトオーナーは、チームの作業を可視化し、納品物のクオリティを保障する総責任者的ポジションです。実際に作業をするメンバーである開発チームには、スクラムマスターと呼ばれるリーダー的存在を作り、仕事をとりまとめます。
バックログの定義
スクラムにおいてのバックログは、二つの定義があります。
『プロダクト・バックログ』は、機能や技術的改善要素をユーザーストーリー形式で記録しておくものです。仕様変更が起きた際に、関係者が変更の必要性を理解しやすくなり、スムーズな把握・伝達を行うことが目的です。 プロダクト・バックログが『今までの記録』であるのに対し『スプリント・バックログ』は、簡単に言えばチームのタスクリストのことです。スプリント・バックログで示された仕事を完了させるべく、チームで仕上げていきます。スプリントのポイントやフロー
バックログを作れたら、スプリントプランニングと呼ばれるスケジュールや要件などを洗い出す工程を始めます。それらをもとに開発作業を行ったら、毎日15分程度のミーティングを行うデイリースクラムで次の作業の報告や、今日の問題点などを報告します。
スプリントが終わったら、やってきた作業をふりかえって確認をし、成果物の確認をするスプリントレビューを行ないましょう。最後に、働き方やツール、人間関係などがどうだったかを見るスプリントレトロスペクティブを行って、一区切りとします。
まとめ
スクラム開発は、アジャイル開発の手法のひとつです。仕様変更がしやすく、サービスの開発スピードを高めてくれます。スクラム開発のメリットを生かすため、その仕組みを理解して運用しましょう。
興味を持たれた方は、一歩踏み出して開発の現場にスクラムを導入し、チャレンジしてみてはいかがでしょうか?