僕たちのアジャイルジャーニー
こんにちは。別所 (@gb_pdm)です。
2019.12からSNS領域プロダクトのプロダクトマネージャーをしています。
今回は移動した新チームがアジャイルなチームになるために取り組んできたことについて書きたいと思います。
背景
去年の9月に新チームに移動となったのですが、そのチームでは「MTGではなく開発時間を確保した方が開発スピードが出る」「至急チケットが多いためスクラムを導入してもスプリントのコミットメントが果たせない」といった理由でスクラムを導入していませんでした。
確かにスクラムを導入しないことによるメリットはあったのですが、一方で下記のような課題もあると感じていてこれらの課題を解決していくための取り組みが必要でした。
- チケットの工数が不明確で計画が立てられない
- 明確な優先度付けがない状態で積み上がるチケット
- チケットの大きさと完了定義の粒度にばらつきがある
- チケットのスコープや仕様が不明確で手戻りが発生している
- 担当チケット以外の機能仕様がわからず対応が属人的になっている
- 個人との対話はあるがチームでの議論がなく改善策がでにくい
1.アジャイルの勉強
「前のチームで実践していた」「多くの開発チームがスクラムを導入している」という理由で自分の中でスクラムを導入すれば今より良い状態になると漠然と思っていましたが、より明確な根拠や言語化が必要だと感じ、まずは本を読んで改めてアジャイル・スクラムについて学びました。
内容については社内勉強会での発表やドキュメントを作りながらチームへの共有も行いました。
2.レトロスペクティブ(振り返り)の実施
デイリースクラム以外のスクラムイベントが特にない状態からチームにプラクティスを導入していったのですが、まず最初に実施したのがレトロスペクティブです。理由はレトロスペクティブから導入することで、課題に対してチーム内で共通認識を持ちたかったからです。
課題への共通認識があることで解決策へのアクションがとりやすく、実際にここで出たProblemを解決するために実験的にスクラムイベントを導入するという流れがチームにできました。
レトロスペクティブは2週間に1度trelloを利用してKPT方式で実施しています。
3.実績ストーリーポイント付け
次に実施したのが完了したチケットに対して実績ストーリーポイントを付けることです。目的はチケット消化量を定量的に比較可能にすることです。
本来、ストーリーポイントは実装前の見積として付けるものですが、そのためにはリファイメントの実施が不可欠でもう少し準備が必要と感じていたので、まずは実績という形でポイントを振っていきました。
チケット消化量を定量的に比較できるようになったことでレトロスペクティブでもより具体的なKeep/Problemがあがるようになりました。
4.プロダクトバックロッグの作成
次にプロダクトバックログの作成を行いました。
プロダクトバックロッグ作成の目的は「ユーザーストーリーで優先度付けと完了定義を管理すること」と「ロードマップとスプリントバックログの文脈を埋めチケットの粒度を統一すること」です。
それまでは半期単位のロードマップとスプリントバックログでしか開発チケットを管理していなかったのですが、ロードマップから下記のようにブレイクダウンすることで粒度にバラつきが出ないようにしました。
各ストーリーはプロダクトマネージャーが優先度決めを行い完了定義を明記しています。優先度が明確になったことで不要な差込チケットが減少しました。
5.リファイメントの実施
次にリファイメントを定期的に実施するようにしました。2週間1スプリントで回しているのですが週に1度90分かけてリファイメントの実施をしています。
ここでの目的は「開発内容について共通認識を持つこと」「見積を行い計画可能な状態にすること」「スコープと仕様を明確にすることで極力手戻りを出さないこと」です。
リファイメントでは主に下記を実施しています。
- PMから開発チームへのPRD共有と議論
- プロダクトバックログアイテム→スプリントバックログアイテムへの分解
- スプリントバックログアイテムへのストーリーポイント付け
リファイメントを実施することで、チーム全員が開発内容に対して共通認識を持てるようになりました。
またスプリントバックログアイテムは基本的にストーポイントが3以下になるまで分解しています。これによってスプリントの計画が可能になり、チケットも以前より詳細なものになりました。
6.スプリントレビューの実施
次に行ったのがスプリントレビューの実施です。目的は「ステークホルダーに対してのリリース機能の共有」です。現状ここはタイムボックスを決めずに不定期で実施しています。(今後は定期実施していきたい)
以前はなあなあでゲリラ的に行われることもあったのですが、最近はレビュー前に必ず仕様ドキュメントをまとめ、デモ実施のためのデータ準備や手順をまとめ、FAQや機能のユースケースなども事前に用意するようにしています。
スプリントレビューの限られた時間でいかにステークホルダーに機能理解と価値を体験してもらうかを考えています。
7.アジャイルプラクティスの整理
ここまで実施してきてチームとして良い流れは出来てきていましたが、ここで改めて自分たちが実践しているプラクティスやイベントの整理を行いました。
具体的には下記2つのモデルを利用して整理を行いました。
- XPのCircle of Life
- SECIモデル
①アジャイルプロセスの観点でプラクティスが足りているかを「XPのCircle of Life」で確認する
XPで紹介されているCircle of Lifeではアジャイルプロセスを「ビジネスプラクティス」「チームプラクティス」「テクニカルプラクティス」の3つのサークルで表現しています。また書籍「Clean Agile」ではスクラムイベントはこのサークルの「ビジネスプラクティス」しか面倒を見てくれないと言っています。
アジャイルなチームを作っていく上でこの3つのサークルがバランス良く成り立っているかを確認し「ビジネスプラクティス」だけにフォーカスするのではなくチームとして改善すべき箇所を確認しました。
②学習するチームになるためのプラクティスが足りているかを「SECIモデル」で確認する
SECIモデルとは経営学者の野中郁次郎氏が提唱した知識創造がされていくプロセスを体系化したものです。
このプロセスにアジャイルプラクティスを当てはめ、プラクティスを通してこのサイクルが回るようになっているかを確かめました。
SECIモデルについてはこちらがとても勉強になりました。
効果
ここまでを通して実際に感じている効果です。
[効果1]主観ではなく客観的にチームの状態を把握・評価できるようになった
ストーリーポイントを付けることでベロシティやバーンダウンチャートでスプリントの進捗やチームの状態を把握できるようになりました。これまで暗黙的だったものが数値化されることで改善に向けたアクションが取りやすくなりました。
また以前より計画も立てやすくなりました。今期は前期のエピック単位のストーリーポイントの集計結果をもとに開発リソースのアロケーションを立てたりしています。
[効果2]結果的に開発スピードが向上してきている
リファイメントを通してチケットの細分化、スコープの明確化、仕様の明確化がされたことにより以前より余分なコミュニケーショや手戻りが減り、結果的に開発スピードが上がっているように感じます。
最近ではスプリント開始時のコミットメントSPを完了SPが上回ることも増えてきました。
[効果3]チーム内で独自のプラクティスが生まれてきている
実際の業務を通してだけでは全体的なシステム理解が進まない、ドキュメント整備がされていないといった課題を解決するためにシステムの主要機能をドキュメントにまとめチームメンバーに発表するという取り組みを月1で実施しています。半年以上続けていて作成されたドキュメントはオンボーディング資料としても活躍しています。
またSECIモデルの暗黙知→形式知の機会を増やす目的で隔週でチーム内LT会を始めました。自由テーマで好きなことを10分で発表します。
知識としての学びだけでなく、各メンバーが今何に興味を持っているのかを知る良い機会になっています。
今後はよりCircle of Lifeのテクニカルプラクティスに重点を置いていきたいという話になっていて、テスト駆動開発やリファクタリングを推進していくためのプラクティスを検討しています。
さいごに
スクラムイベントは既に必要最小限のイベントになっているから省略できないと言われています。まずは教科書通り実践してみてそこから改善していこうと。確かにそれができれば一番良いのかもしれませんが、目的や背景もよくわからないままいきなり全てのイベントを導入してまうとやっぱりチーム崩壊のリスクがあると考えています。
個人的には目的に合わせてなるべく小さくベイビーステップで導入していく方が「驚き最小」で納得感を持ちながら進められると感じています。
またスクラムの導入はあくまでアジャイル開発の1つの手段であり、重要なのは『「より良くするには?」と向き合いながら顧客に価値が届きやすい状態を作ること』かと思います。
書籍で語られているような綺麗なスクラムを実践出来ているわけではないですが、1つ1つのスクラムイベントやアジャイルプラクティスについてメンバーが腹落ちして必要性を感じながら実践は出来ているのかなと思っています。
まだまだ道半ばで出来ていない部分もたくさんありますが、アジャイルなチームになるために1つづつ着実に前進していきたいと思っています。
以上となります。
最後まで読んでいただきありがとうございました!