BIチームにもスプリント制をいれて生産性を改善してみた
オーディオブックなど音声コンテンツ配信プラットフォームaudiobook.jpを運営するオトバンクのBIチームの、muranakaです。
今回は、BIチームの普段の仕事のやり方とタスク管理を紹介したいと思います。
終わらない分析、積み上がるタスク
以前のBIチームでは、タスクの進め方や生産性に課題がありました。タスクの優先度や見通しが曖昧なまま、常に社内の様々なチームから分析依頼など差し込みタスクが入っていることで、前もって計画したタスクがなかなか終わらない。そんな状況になった結果タスクが積み上がり、重要で大きな分析や可視化の作業に時間を使えていませんでした。
改善の方針
そこで、チームとしてのタスクの進め方を改善することにしました。
生産性を上げるために、まずは見える化する
レコーディングダイエットと同じく、まずは数値で現実をあぶり出し、自分たちの思い込みや感覚ではなく事実を正確に把握することにしました。そこから見積もりと実績の差分から生産性をあげるヒントをつかもうと考えたのです。
やることを絞って、本当に重要なものが終わるチームにする
各タスクの優先度を決めてから着手することを徹底しました。優先度が低いものに時間をかけすぎてしまうことや差し込みによって計画していたタスクが終わらないという事態を避け、限りある時間をより効果的に使えるようになると考えました。
改善策: 1週間スプリント制の導入
改善のために、プロダクト開発チームの動き方を参考に、スプリント制を導入しました。
開発チームは2週間1単位のスプリント制ですが、BIチームは開発チームよりもサイズが小さめのタスクを複数担当する傾向にあるため、1週間のスプリント制としました。
1週間スプリント制とは
BIチームの1週間スプリント制では、水曜スタート火曜日終わりの1週間を1つのブロックとしています。水曜日のMTG (SprintPlanning)で、1週間で自分が使える時間から逆算して、どのタスクをやるかを取捨選択し、計画をたてています。
月曜ではなく水曜スタートなのは、水曜日は祝日になりづらく、スプリントのMTGが影響を受けにくいという理由からです。
1週間スプリントの流れ
水曜:Sprint Planning
タスクのアサインを決め、優先度に沿って1週間の中でタスクを着手する順番を計画します。また、前日までのスプリントの振り返りも行います。
毎日:Daily Standup
各メンバーで、前日の作業の進捗報告と、当日行う作業の共有をします。各タスクで確認事項がある場合に相談可能な場でもあります。
火曜:次の見積もり
火曜日は、通常のDaily Standupの内容だけでなく次の日のSprint Planingに備えて、次のスプリントのタスクであらかじめ作業時間の見積もりをした方が良いものを確認する時間も設けています。
タスクの管理方法
プリント制のもと、進めるタスクはclick upというタスク管理ツールを利用して管理しています。このツールはプロダクト開発チームやデザインチームなど、社内の他のチームでも使われています。タスクのチケットにはPdMなど他のチームからの依頼で作成されるものと、BI自身で必要と考え起案するものがあるのですが、全てをclick up上で一括で管理しています。
タスクチケットは下のように、ゴール、要件、期限、優先度などを記載したうえで起票するとしています。
起票されたチケットはSprint Planingの際にBIチームで誰が担当するかを決め、作業時間を見積ります。作業時間の見積もりの際には、極力元のタスクを細分化したサブタスク(子タスク)を作成し、サブタスクごとに必要時間を見積ると、誤差が少なくなります。着手する前にサブタスクに分解することで、何をどういう順番に分析していくか、実際にクエリを書く前に調査することはないかなど全体の設計を考えることになるので、手戻りも少なくなります。
スプリントの中で、各タスクチケットは簡単にステータス分けしています。
未着手のものはopen、進行中のものはin progress、完了したものはcompleteとしています。
各タスクの作業中は、click upのタイムトラッキング機能を使って、チケットごとに作業時間を記録します。作業時間を記録することで、スプリントの振り返りの際に、どのタスクにどれだけ時間を掛けていたかを可視化することができ、見積もりと実際のずれを数字として認識することができます。
スプリント内のイベント (MTG)
水曜から始まる1週間スプリント内では、水曜にSprint Planing、その他の日にDaily Standupというイベントを実施しています。
Sprint Planing
Sprint Planingでは、今スプリントの計画を立てる前に、まず前スプリントの振り返りを行います。前のスプリントで計画していたタスクのクローズ率と実際の作業時間と見積もりのずれを確認し、ずれについては理由や次への学びを話して次回以降の見積もり精度・生産性向上につなげます。
次に、今スプリントの計画をします。基本的にタスクはあふれがちなので、今スプリント絶対ではないものはどんどん次に回し、まずはちゃんと終わることを重視します。今スプリントに自分で使える作業時間から逆算して、優先度が高く自分がやりやすい順にタスクを取っていきます。タスクのアサインが埋まったら、着手日と完了日をいれて、一週間のタスクの流れをガントチャートで可視化します。
DailyStandUp
DailyStandUpでは、毎日の進捗報告 (前日行った作業と今日行う予定の作業の報告)と共有事項の確認をします。
また、各タスクで確認事項がある場合は、担当者と依頼者で分科会を開いて、疑問点をつぶしたり、認識のすり合わせを行います。
1週間スプリント制でやってみた感想
1週間スプリント制で進めてみてよかったことは、Sprint Planningでタスクの優先度や着手順を決めることで、時間の使い方に迷いが無くなったことです。それまではその時その時でどのタスクから取り組むか、差し込みタスクがあった時は進行中のタスクと差し込みのどちらを優先するか、など迷いが生じていましたが、今は毎日取り組むべきタスクが明確に決まっているため、作業そのものに集中することができるようになりました。
また、タスクにかけている作業時間を計測したことで、自分がどんなタスクにはどれくらい時間が必要なのかも分かってきて、作業時間の見積もりも向上してきている気がします。
Daily Standupで毎日相談できる場があることで、何気ないことでもすぐ相談でき、一人で無駄に悩んでしまうことがなく解決までの時間が短くなったと感じています。
今後改善したいこととしては、タスクに費やす時間などをあらかじめ決めているので、もう少し深掘りしたいなと思う点があってもなかなか手を伸ばせないことがあります。
また、タスクに費やす時間についての見積もり精度は高くなってきていますが、一つ一つのタスクをもっと効率的にできるなと思う場面も多いので、今後作業効率をもっとたかめて、より深い分析もできるようにしていきたいと思います。