はじめに
私達のスクラムチームのスクラムマスターで定期作業のかいぜんについて話している中で、「ボーイスカウトルール」を使ったらどうか、という話題が上がったので、スクラムでのボーイスカウトルールについて考えてみました。
ボーイスカウトルール
ボーイスカウトルールとは、「来た時よりも美しく」というものです。
以下の記事を参考にしています。
ボーイスカウト・ルールってご存じですか?
プログラマが知るべき97のことにも記載があります。
プログラマが知るべき97 ボーイスカウトルール
この記事では、プログラムではなくて、スクラムの成果物へのボーイスカウトルールについて考えています。
スクラムの成果物
スクラムの成果物としては以下があります。それぞれについてボーイスカウトルールで「来たときよりも美しく」できないか考えてみます。
- プロダクトバックログ
- スプリントバックログ
- インクリメント
プロダクトバックログ
プロダクトバックログは整理せずそのままにしておくと、肥大化しがちだと思います。そのため、プロダクトバックログの整理にボーイスカウトルールを適用することで、プロダクトバックログが肥大化し過ぎるのを防ぎ、チームの焦点を絞り、最も価値のあるタスクに集中することができます。
プロダクトバックログにボーイスカウトルールを適用するタイミングとしては、プロダクトバックログリファインメントやスプリントプランニングがよいと思います。プロダクトバックログリファインメントやスプリントプランニングの際に、期限が過ぎたアイテムの更新や削除を行うことで、プロダクトバックログを常に最新の状態に保つことができます。
スプリントバックログ
スプリントバックログはプロダクトバックログほど肥大化しないと思われますが、ボーイスカウトルールを適用することで、PBIに付随する各タスクの情報が常に最新かつ正確な状態に保たれるようにすることが可能です。
これにより、スプリントバックログはチームが開発を効率的に進めるための「美しい」ツールとなります。またスプリントのデータとして、ふりかえりで活用することができます。
インクリメント
スクラムガイドには、インクリメントは以下のように記載されています。
インクリメントは、プロダクトゴールに向けた具体的な踏み⽯である。インクリメントはこれまでのすべてのインクリメントに追加する。
この説明やインクリメントという言葉から、積み上げていくものと捉えがちです。しかし機能の削除やリファクタリングもインクリメントの1つと捉えることができ、ボーイスカウトルールの適用も可能です。
機能の削除やリファクタリングはプロダクトのシンプルさと効率性を高めるための重要な戦略となり得ます。これは、プロダクトオーナーや開発チーム全体にとってもとても価値の高いものだと思います。
そのようなボーイスカウトルールのPBIをスプリントに投入することで、プロダクトのユーザビリティ、保守性、そして全体的な品質を向上させるとともに、必要な機能だけに焦点を絞ることで開発の効率性も向上させる可能性があります。
まとめ
スクラムの成果物に焦点を当てて、ボーイスカウトルールを適用できるか考えてみました。
ボーイスカウトルールは、スクラムチームがプロダクトの品質と効率性を継続的にかいぜんするための一つの有効な戦略です。
また、ボーイスカウトルールは継続的にプロダクトを維持するために必要なマインドやプロセスだと思います。スクラムのように反復的・漸進的やり方と、親和性の高いものだと思いました。