SCRUM BOOT CAMP THE BOOK

西村直人、永瀬美穂、吉羽龍太郎著

2024年1月3日


アジャイル開発の主要な開発手法であるスクラムについて整理していきたい。


営業活動におけるプロジェクト(予算達成)に向けたアプローチとしても活用していこうと思う。


基本となるやり方

 ソフトウェアの開発は大変で時間のかかるものだった。この問題点に対して、軽量開発志向したアジャイル開発の考え方が2000年代初頭にうまれた。その手法として一番よく使われるアプローチがスクラムだ。

 スクラムは一定のタイムボックスで成果物を積み重ねていく方法で、短いスパンで動くソフトウェアを提供していくことで、ユーザーに価値のあるソフトウェアを柔軟に提供していくことができる。 


運用フロー

 スクラムは3つのロール、3つの成果物、5つのイベントで運用されていく。


 ロールは次の3つだ。

 プロダクトオーナー:プロダクトのWhatを担当し、プロダクトの価値に対して責任を持つ。

 スクラムマスター:スクラムが円滑に回るよう障害を排除し、スクラムチームを教育含めファシリテートしていく役割を担う。

 開発チーム:プロダクトのHowを担当し、プロダクトオーナーが定めた価値をどのように実現していくか、機能横断的に自己組織化したチームの働きが求められる。


 スクラムで生成される成果物は次のとおり。

 プロダクトバックログ:開発するソフトウェアが実現したい内容を順に並べたリスト。開発概要、要求事項にあたるもの。

 スプリントバックログ:タイムボックス内で実施していくプロダクトバックログの項目を詳細化したもの。

 インクリメント:タイムボックスで開発した内容を今まで作成した機能に追加したデモ可能な動くソフトウェア。


 スクラムの運用の中で発生する5つのイベントは次のとおり。

 スプリント:開発を実行する一定のタイムボックス。開発の見通しとして評価する枠になるため一定の同じ期間を定め、変更はできない。

 スプリントプランニング:スプリントで実施する内容の計画。一回のスプリントで実施できる仕事量に、スプリントバックログで見積った仕事量をリスト上位から割り振っていく。

 デイリースクラム:スプリント内で日次で15分程度実施するMtg。昨日したこと、今日すること、今障害になっていることを共有することで、チームで早期にリカバリーできるようにする。

 スプリントレビュー:スプリントで生成したインクリメントをステークホルダーにデモしフィードバックを得る。

 スプリントレトロスペクティブ:スプリントの振り返り。発生した問題そのものの対策をするのではなく、問題を引き起こした要因自体にアプローチした改善に取組、次のスプリントに活かしていく。


 当書ではスクラムのやり方自体の説明は前半で紹介するに止まり、スクラムを初めてやる会社のストーリに合わせてスクラムの実施を追体験できるところに良さを感じた。

 やはり理論ややり方の解説のみでは、机上の空論になってしまい理想を語るのみになってしまいがちなところがある。

 実際にやろうとした時の課題や困りごとといったあるあるについても書いてある点が非常に参考になる。例えば、デイリースクラムがチームの主体的な活動ではなく進捗報告になってしまうであったり、Mtgで欠席者が出るといった事例は日々の業務の中でも起こりがちだ。


 基本的なスクラムのやり方に合わせて、実務で起こりうるであろう事象に対しても本書のストーリを参考に備えておくことで実務への活用の助けになると感じた。