天の月

ソフトウェア開発をしていく上での悩み, 考えたこと, 学びを書いてきます(たまに関係ない雑記も)

最近プランニングがいい感じだという話

最近、チームで行っているプランニングが、徐々にではありますが有意義なものになっているなあと自分が感じることが増えてきたので、なんでそう感じるようになったかを言語化してみます。*1

コミュニケーションが活性化する

プランニングをすると、「ここは全然イメージが湧かないので、時間決めてがっと作ってみませんか?」「この部分ってXXさんに聴いたらプランの精度上がりませんか?」といった会話が生まれて、開発するフィーチャーに対する知識が増えたり、リスクが洗い出されたりすることが増えてきました。

プランニングが自然発生する

プランニングが高頻度かつ自然に発生します。
スプリントプランニングの段階でプランした計画が絶対ではなく、何かトリガーがあると見直しされて、見直しの度に必要に応じてリリース計画やタスクの進め方の作戦変更が起きます。*2

"計画に従うことよりも変化への対応を"がプランニングで実践されてきている気がします。

ストーリーポイントやバッファの根拠が言える

プランニングポーカーをはじめとした見積もりを行う時に、なぜこの見積もりをしたのか?という根拠を全員が言えます。

逆に、ここで根拠が持てず良く分からないものは、無理やりストーリーポイントをつけることはせずに、一度わからないことをこの先のリスクとして受け入れるか、スパイクをかけたり情報を集めたりして、根拠を探しにいく動きが取れるようになってきています。
根拠がまだ言えないことが、「今の情報だとやってみないと分からない」などと遠慮なくチームで言えているのも良いなあと感じています。

複数の方法を組み合わせてプランニングできている

まず最初に、ユーザーストーリーのストーリーポイントと過去のベロシティを基にしてプランニングをしていきます。
が、これで終わるのではなく、「本当に次のスプリントでユーザーストーリーを終わらせる自信はあるか?」「本当に今のリリース計画でいける自信があるか?」といった問いかけをしてチームのコミットメントを確認したり、悲観的な見積もりと楽観的な見積もりをして、現状の不確実性を鑑みながら計画を立てたりができています。*3

おわりに

以上、4つの観点が思いついたので、簡単にではありますがまとめてみました。
新人時代の頃はガントチャートを見るだけで嫌な気持ちになっていましたが、計画を立てることって、少し工夫すればチームの学習速度を速めることに結構寄与することを実感して、最近は新鮮な気持ちになっています。

また、アジャイルな見積りと計画づくりを読んでみると、この辺のことが凄く丁寧に書かれていて、良著だなあとしみじみ思いました。

*1:チームがどういう過程を踏んできたのか、というのもどこかで整理してみたいなーと思います。何かしら教育(良いプランニングとはこういうものだ)をした訳でもないし、スクラムガイドに従った訳でもないので、整理してみると面白そうだと個人的には感じています

*2:リリース計画の見直しはまだ個人がやっているという実情はありますが...

*3:こういった発言は、ある程度次のユーザーストーリーやリリース計画が見えている前提で、プランニング前に行っているレトロスペクティブで出ることが多いです