開発チームのパフォーマンス向上の鍵はアセスメント! 現状を知って改善し続けるチームになるには

開発チームのリーダーとして日々奮闘している高橋です。
今も開発を担当している弊社SaaSプロダクト「SEARCH WRITE」をスクラムで開発し続け、5年目に突入しました。1週間スプリントなので200スプリント以上です。200スプリントも開発し続けられていて、すごく成長したなと実感していました。
しかし、今回アセスメントを行ったことで自分たちが井の中の蛙であったことに気づき、チームで行動を変えていきました。その結果、こんな変化がおきました。

  • 自己満足の状態から抜け出し、世の中の基準で話し合いが行われるようになった
  • 事実に基づいて議論をし、アクションに繋げられている
  • 月間デプロイ数が2倍に(1か月10デプロイが20デプロイに増加)

200スプリント開発をしつづけたチームが、より成長し続けていけると確信を持てた取り組みをお話ししたいと思います。

この話は翔泳社様主催の「若手エンジニアが語る技術への挑戦とキャリア戦略 CodeZine Night #2」で登壇した際の話となります。
登壇の機会をくださりありがとうございました。他に登壇されている方たちの話も聞けたことで改善の糸口を見つけることができました。

成長角度を上げ改善し続けるチームを作りたいリーダー、メンバーを対象にしています。参考になれば幸いです。

自分基準では成長していたけど、井の中の蛙状態だった

みなさんは今所属しているチームが成長し続けられていると思えていますか?僕はそう思っていました。約4年間、200スプリント以上開発をし続けられている、スプリントごとに毎週リリースもできている、ふりかえりで問題や課題を解決できている。僕自身はスクラムが上手くいっていると実感していました。
ある日、週一で行われる弊社のスクラムマスターの集まりで井の中の蛙の中だったことに気づくきっかけをもらいました。PLAN-BではNo.1のプロダクトを作るためにNo.1のチームを目指しています。その前提で以下の疑問が出てきました。

  • 200スプリント相当のチームとしての実力はあるのかな
  • 他社でスクラムをしているチームってどういうレベルなのだろう

この疑問がきっかけとなり、一度外部の基準を使ってチームでアセスメントをしてみようと思いました。数多くある基準から今回は『あなたのスクラムチームの成熟度は?』を参考に使わせてもらいました。

各役割の成熟度を5段階で評価でき、客観的にチームがどの成熟度に達しているかを把握できます。成熟度について僕の感覚ではこう理解しました。

  • 成熟度5: めちゃ強いチーム
  • 成熟度2: スクラムの守破離の守ができている
  • 成熟度1: スクラムを始めたばかりのチーム

この基準を使ってチームでアセスメントをした結果、成熟度は2でした。スクラムの考えに則って開発を進めることができているチーム、という程度でしかありません。世の中のスクラムの基準は高く、僕は井の中の蛙だと気づかされました。

外部の基準でアセスメントをすることで、今までなかった視点を得ることができた

アセスメントを通して現状を突きつけられることで、自分たちの現在地がわかり、成熟度2と3の違いもわかり、今までなかった視点を得ることができました。

早速、成熟度2から3に上がるためにはどうすればいいかをチームのふりかえりで話し合いました。
その中で特に印象に残ったのは「同じ言葉で話をしているが、人によって理解や定義が異なることがある」というチームメンバーの意見でした。スクラムチームの成熟度を上げるためのアクションとして、スクラムの用語や意味をチーム全員が理解して同じ定義で動けるように、スクラムガイドの読み合わせを行いました。読んだ内容に対して自分の解釈を共有し、チームでディスカッションをする方式で行いました。
その結果、言葉の意味について認識を合わせることができ、またチームのメンバーの考えや思いをわかりあえたことで、チームの一体感も増したと感じました。

ほかにも、アセスメントの結果に対してふりかえることで、変わったことがあります。
今まではスプリントのふりかえりで出てきた問題を次のスプリントで解消することが多く、解決するまで時間がかかっていました。これを解消するために、ふりかえりで出た問題をその場で直ぐに解決する、というアクションを決めて取り組むようになりました。このように、チームの動きが少しずつ変化していきました。
3か月後、再度同じ基準を用いてアセスメントをしてみた結果、2から徐々に3に近づけているという認識になっていました。このように、今までの自分たちにはなかった基準と照らし合わせることで、チームがさらに成長することができました。

納得感のある開発指標を見つけてアセスメントをしたことで、チームのパフォーマンスが上がった

さて、開発をしていく中で、チームのパフォーマンスは成績をつけるならどのレベル? パフォーマンスの高いチームはどういうチーム? が気になり始めました。そのときに読み始めた本が『LeanとDevOpsの科学』でした。この本にはパフォーマンスの高いチームとはどういうものなのか、長年の研究結果をまとめた内容が書かれています。
デリバリーパフォーマンスの指標として「Four Keys」というものが書かれており、次はこの基準を使ってアセスメントをすることにしました。採用した理由は、チームの動き方を変えれば成績の良し悪しにすぐ反映されるところを魅力に感じたからです。Four Keysには4つの指標があり、それを4つのクラスに分けて評価します。

この指標とクラス分けを使ってアセスメントをした結果、「ハイパフォーマー」以上の位置にいることがわかりました。この結果はすごく嬉しかったですが、満足をしてしまうとまた井の中の蛙状態になってしまうため、その状況を抜け出すために「エリートを目指したい」とチームに伝えました。そして「この指標でエリートに近づくためには」という目線でチームのふりかえりが行われるようになりました。
その結果、様々な問題を見つけることができました。
一つは「開発した内容をレビューしてからリリースするまでの待ち時間が長い」というものでした。待ち時間をなくすために開発プロセスを見直すアクションを行いました。もともとレビューは毎週水曜日に行っていましたが、開発完了したものは水曜日を待たずにレビューを行えるようにプロセスを変更したことで、月間デプロイ数が2倍に増えました。

また「障害発生時に動き方がわからないことがあり、MTTRが悪化している」という問題も見つかりました。これに対しては、避難訓練のような形で障害対応訓練を行い、動き方が不明な部分を無くすアクションを行いました。これにより、チームメンバーが障害対応時に適切な行動をとることができるようになり、「動き方がわからずMTTRが悪化」というケースがなくなりました。

「Four keysでエリートに近づくためには」という目線でチームが効果的なふりかえりを行えるようになったのは、チームが納得できる指標でありながら、目指すべき姿が見えたことで議論のレベルが上がったからでした。

まとめ

自分の基準で上手くできているという思い込みが、チームの成長を止めてしまうことに気づかされました。
自分の基準だけではなく、世の中の基準に目を向け、その基準でアセスメントをすることで、今まで見えてこなかった問題・課題を見つけ、成長するためのアクションをし続けることができます。

    • 成長角度をあげるために外部の基準を探してみよう
    • アセスメントを行うことで、理想に近づくためには?という基準で議論が発生し、チームの行動が変わる
    • 定性、定量どちらでもアセスメントは可能。例えば今回実施したのは:
      • スクラムチームの成熟度: 定性
      • デリバリーパフォーマンス: 定量
    • 注意!アセスメントの結果はチーム内でのみ使うようにしてください
      • 人事評価に使われると健全なアセスメントはできなくなってしまう

アセスメントって一見難しいと感じられるかもしれませんが、ツール不要ですぐに実施できるものもあります。世の中には強い人達が作った基準がたくさんあります。その基準をつかって、ぜひチームでアセスメントをしてみてください。