はじめに
クリエーションラインに入社してから、先輩社員に教わりながらスクラムでプロジェクトを進めてきました。
ただ、実際にスクラムをやっている中で、
「そもそもスクラムって、体系的にはどういうものなんだろう?」 「今やっていることは、スクラムとして正しい進め方なのだろうか?」
と思う場面が増えてきました。
そこで、有識者に相談したところ、以下の2冊をおすすめしていただきました。
- SCRUM BOOT CAMP スクラムチームではじめるアジャイル開発
- アジャイルサムライ
今回は、そのうちの1冊である「SCRUM BOOT CAMP スクラムチームではじめるアジャイル開発」を読み終えたので、感想を書いていきたいと思います。
感想
本書は、スクラムマスターの「ボクくん」が、実際にスクラムで開発を進める中で発生する課題に対して、「どのように解決していくのか」を1つずつ解説していく物語形式の本でした。
そのため、「アジャイルって何?」「スクラムって何?」という人でも、かなりイメージしやすく、わかりやすい内容になっていました。
個人的にも、とても読みやすい本でした。
本書では、プロジェクトの開始から、計画・見積り、スプリントを進める中で発生する課題、リリースまでの流れが丁寧に解説されています。
たとえば、以下のような課題が出てきます。
- チーム内の共通理解が足りない
- POが不在になってしまう
- 新しいメンバーがアサインされる
- スプリントの進み具合が見えづらい
実際にスクラムで開発を進めていると、「こういうこと、ありそうだな。。。」と思う場面が多く、かなり実践に近い内容だと感じました。
ここからは、本書を読んで、実際のプロジェクトでも有効そうだと感じた点をいくつか書いていきます。
計画・見積り
アジャイルにおいても、計画・見積りは大切です。
これは理解しているのですが、
「じゃあ、具体的にどうやるの?」
という話になると、意外と難しいと思っています。
本書では、プロダクトバックログアイテムに対して見積りを行い、1スプリントで消化できるベロシティを決めて、必要な期間や実現できる範囲を考える方法が紹介されていました。
- 絶対に必要な項目の見積り合計 / ベロシティ = 必要なスプリント数
- ベロシティ * 期間内に実施できるスプリント数 = 実現できるポイント
この考え方自体は、とてもわかりやすいです。
ただ、個人的には、この「ベロシティを決める」というのがかなり難しいと感じました。
本書でも「実際に計測してみると良い」と書かれていましたが、見積り段階では、まだ開発に着手できていないことも多いと思います。
なので、
「実際に計測したいけど、まだ計測できるものがない。。。」
という状態になりがちで、ここは本当に難しいな。。。と思いました。
とはいえ、本書ではベロシティを決めるための考え方や、ベロシティだけでは測れない要素についても説明されていたので、かなり参考になりました。
バーンダウンチャート
バーンダウンチャートは、スプリントの進み具合を確認するためのグラフです。
スプリントの最後までに、残タスクの見積りが0になるように、順調に減っているかを確認します。
これによって、スプリントが予定通り進んでいるのか、それとも遅れているのかが見えやすくなります。
これは、開発においてかなり効果が高そうだと感じました。
タスクの進捗は、なんとなく会話だけで確認していると、意外と見えづらいです。
「たぶん大丈夫です」 「なんとか間に合いそうです」
みたいな会話だけだと、本当に大丈夫なのか判断しづらい。。。
その点、バーンダウンチャートがあれば、スプリントの状況をチーム全体で同じように確認できるので、ぜひ取り入れてみたいと思いました。
運用・保守業務でも使えるのか?という点は、少し考えてみたいところです。
突発的な問い合わせや障害対応が多い場合は、そのまま開発と同じように使うのは難しいかもしれません。
ただ、定常的な改善タスクや、計画的に進める作業に対しては使えそうな気がしています。
自己組織化
スクラムでは、開発チームが自己組織化していて、機能横断的であることが求められます。
つまり、誰か1人がすべてを指示するのではなく、チーム自身で考えて、進め方を決めていく必要があります。
状況に応じて、誰でもリーダーシップを取れる状態にしておくことが重要なのだと学びました。
そのためには、メンバーのスキルや性格、得意なこと、考え方のクセなどを把握しておくことが大切です。
これは、スクラムに限らずチームで仕事をする上でも重要なことだと思います。
ただ、スクラムでは特に「チームで成果を出す」ことが求められるため、メンバー同士の理解がかなり大事になるのだと感じました。
スウォーミング
スウォーミングとは、1つのプロダクトバックログアイテムに対して、複数のメンバーで取り組むことです。
効果としては、属人化を防げることや、知識を効率的に共有できることが挙げられます。
モブプロやペアプロなどを取り入れることで、メンバー間にスキルレベルの差がある場合でも、自然に知識を共有しながら進めることができます。
個人的には、こういった進め方をあまりしてこなかったので、かなり新鮮でした。
今までは、タスクを分担して、それぞれが個別に進めることが多かったです。
もちろん、それはそれで効率が良い場面もあります。
ただ、属人化を防いだり、チーム全体のスキルを底上げしたりするには、スウォーミングのような進め方も必要なのだと感じました。
こういう取り組みは、「時間があったらやる」だと、たぶんやらない気がします。
なので、あらかじめ実施する時間と場所だけ決めておいて、何をするかは後から決めるくらいの方が、物事が進みそうだと思いました。
まとめ
「SCRUM BOOT CAMP スクラムチームではじめるアジャイル開発」は、スクラムをこれから学びたい人にも、すでにスクラムを実践している人にも読みやすい本だと感じました。
特に、物語形式で書かれているため、スクラムのイベントや役割を単語として覚えるだけではなく、「実際の現場ではどういう課題が起きるのか」「そのときにどう考えればよいのか」がイメージしやすかったです。
個人的には、上記で書いた計画・見積り、バーンダウンチャート、自己組織化、スウォーミングのあたりが特に参考になりました。
スクラムは、ただイベントをこなせばうまくいくものではなく、チームで考え、改善し続けることが大事なのだと改めて感じました。
まだまだ実践しながら学ぶことは多そうですが、本書で学んだことを少しずつ現場でも試していきたいと思います。


