リーダーが一人でExcelWBSを管理していた状態からチームでスプリント管理できるようになるまで

こんにちは、GxPの石村です。

わたしたちのチームでは、1歩ずつ良いチーム開発ができるように大小さまざまな取り組みをしてきました。

今回は、リーダーが一人でExcelでWBSを引いていた状態からチームみんなでスプリント管理できるようになってきた経緯をお伝えします。
まだまだ伸びしろがたくさんあるのですが、一気に変えるのではなく一歩ずつ変えたことでここまで来られたと感じています。

# チームの特性
スマートフォンアプリを開発しており、基本的に1か月に1回のリリースを行っています。
ただ、スマートフォンアプリは審査に時間がかかることや、設計は先行で実施することから、常に複数のバージョンの作業を行っています。

![ある月の作業.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/323160/b3589401-8b73-ea9a-8eb7-e04847ff50f3.png)

この記事を書いている私は、チームに対して支援をする立場であり、責任者でもあります。
スクラムマスターとプロジェクトマネージャーを兼務している状態です。（良くないって言われてるやつですが）

# どんな変化を辿ったか

STEP1：ExcelでバージョンごとにWBSを引いて管理
STEP2：Excelで1週間スプリント管理
STEP3：Jiraで1週間スプリント管理

こんな感じで、3ステップでの変化を辿りました。
STEP1が4か月、STEP2が5か月、STEP3が3か月で計1年ほどのお話です。
詳細は後述しますが、冒頭にも書いた通り、一足飛びにJira管理にしなかったことでチームのペースで少しずつ学びながら改善できました。
なお、「リーダーがひとりで管理する」から「チームみんなで管理する」に少しずつ移行できてきたのはSTEP2～3の中でのお話です。

JiraというのはAtlassianの課題管理ツールです。アジャイル開発を支援する機能がいろいろあり、その中にスプリント管理機能があります。

# STEP1：ExcelでバージョンごとにWBSを引いて管理
![ExcelWBS.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/323160/91044a84-e392-c58a-f673-7ac73b81c2ad.png)

こんな感じでWBSをバージョンごとに引いていました。
この時の課題としては以下のようなものがありました。

1. JiraとExcelWBSの二重管理になっている
1. リーダー以外の人は自分のタスクしか把握しなくなる
1. タスクの差し替えや遅延などの変化に弱い

### JiraとExcelWBSの二重管理になっている

実はもともとJiraだけで管理していたのがいろいろな事情で破綻したのがExcelWBSを作り始めたきっかけでした。
メンバーはウォーターフォール慣れしている人の方が多く、そのときのチームリーダーに「慣れているWBSで管理したい」と言われたためExcelWBSを引くことになりました。
しかしJiraはスケジュール管理以外の面でも活用していたため、WBSを引いたからといってJiraをやめることができず、二重管理になってしまいました。

### リーダー以外の人は自分のタスクしか把握しなくなる

特に大きかった要因には以下のようなものがあります。

* 引くのに時間がかかるので、リーダーがひとりで引いている
* WBSが縦に長くなり、自分の行だけフィルタして見る人が多い
* 複数バージョンの状況はそれぞれのWBSを頭の中でマージする必要があり、把握が難しい

タスクの依存関係、適切なアサインなどを考慮して不整合のないように引くため、リーダーがあれこれと頭を悩ませながら一人で引き、それをレビューする形を取っていました。
結果だけを提供されると「まず自分のタスクを把握しよう」とは思いますが、「他の人のタスクも理解しよう」「全体の流れを考慮して進めよう」とはなかなかならないもので、結果的にリーダーだけが全体を把握している状況になっていました。
複数バージョンの状況の整合性についてはシートが分かれていることもあり、リーダーさえもじっくり考えないと把握ができなくなっていました。

### タスクの差し替えや遅延などの変化に弱い

前述の通りWBSを引くのが大変なので、当然変化には弱いです。
立て直そうとして再計画に時間をかけてしまい、そうこうしている間に更に遅延し、立て直している時間がないからと無計画になり…と負のループが発生しやすい状況でした。

# STEP2：Excelで1週間スプリント管理
![Excelスプリント.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/323160/76b67727-9e05-7274-5bad-f7f3ce650522.png)

こんな感じで1週間ごとにブロックを作り、その週（スプリント）でやるタスクを並べる形で作っていました。
色はどのバージョンでリリースする課題かを示しています。
この図でいうと水色のタスクが直近のリリースで、ピンクや緑は先のバージョンでリリースするタスクとなっています。
黄色はリリース水色のタスクのリリース作業です。
スプリント内に入る課題量の調整は、別シートでスプリントごとの工数集計を自動算出することで確認していました。

なぜSTEP3に行かずにまずはExcelで運用したかというと、自分たちが何をどんな風に把握したいのかを確認する期間を設けたかったことと、JiraよりもExcelの方が柔軟な運用ができることが理由でした。
このExcelも最初からこの形だったわけではなく、列定義や色分けは運用しながら改善するうちにこのような形になりました。

最初はWBSをそのまま移行する形ではじめて、この運用に合うように管理の仕方を調整していきました。
その過程で、以下のようなことが徐々にできるようになってきました。

* スプリント単位で管理しやすいように大きなタスクを細分化
* チーム全員でスプリントのタスク全量を把握
* スプリント単位でチーム全員で相談しながら計画
* 遅延や入れ替えの際にもチームで相談しながら調整
* 1スプリントで自分たちがこなせるタスク量を実績から学び、次スプリントの計画量を調整

ただ、STEP1で挙げた二重管理の問題は依然として残っており、その影響でタスクの差し替えや遅延などの変化があった際に対応が追い付かないことはたびたびありました。

# STEP3：Jiraで1週間スプリント管理
![Jiraスプリント.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/323160/81d6c923-a09d-f3a0-75ff-369f4a952245.png)

現在はこんな感じでJira上でExcelを再現するような運用をしています。
以前は行の色で示していたリリース対象Verはエピック（右の方にある色のついたラベル）で管理しています。
Excelで自分たちが何をどう管理したいかを把握していたから、スムーズに移行できたのではないかと思います。
いきなりJiraで管理するとJiraの機能を正しく使うことを考えてしまって、「なんだかどれもしっくりこない」「機能が把握しきれなくてどうするのがいいかわからない」となりがちですが、やりたいことがはっきりしていたので、それができそうな機能を探すことに集中できました。
Jiraで管理することでSTEP2の恩恵を引き継ぎつつ、二重管理の問題が解消しました！

![Jiraレポート.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/323160/09c3e94b-c105-ca47-b84d-089327974a7d.png)
また、Jiraでは色々なレポートが出せるので、スプリント内での課題の消化ペースや、バージョンごとの推移などを参照することができます。
これらの機能を活用して更にチームの状況を色々な角度で把握できるようになりました。

# さいごに

なんだかとても順調に変化してきたかのようですが、実際にはここまでくるのに結構苦労しています。
STEP1から現在までの期間は1年ぐらいなのですが、チームリーダー的なポジションの人が退職したり、案件がプチ炎上して管理どころじゃなくなったり、リーダーに余裕がなさすぎて他のメンバーに管理作業を代行してもらったり、口すっぱく指摘しすぎてちょっと険悪になったり。
でもふりかえってみると、コツコツと積み重ねるのはじれったかったけれど、結果的に変化の速度としてはチームに合っていたし、これを一緒に乗り越えてきたことで関係性の質も向上したなあと思います。
お客様との信頼関係が築けているのも、リーダーが愛鳥の不幸でしばらく沈んでいてもチームが崩れず進めているのも、チームの関係性が良くなって安定したからだと思っています。
そんな素敵なオマケまでついてきたことを考えれば、むしろかなり良いスピード感を持ってここまで来られたのでは！と自分とチームに拍手を送りたい気持ちです。パチパチパチパチ！