KPTAのあるべき姿がわかった 〜エモーショナルな振り返りこそが真の振り返り〜



本記事は、 ストックマーク Advent Calendar 2021 の5日目の記事です。

はじめに

 Agile開発においては、細かくスプリントを回すことで開発のゴールを適切に修正しつつ、スプリントごとにチームの能力を高めていくことが開発の成功の秘訣になります。そして、チームの能力を高めるには、適切に「振り返り」を行うことが重要になってきます。
この「振り返り」のフレームワークとしてよく用いられるのが、KPTAです(後述)。

 しかし、KPT(A)を実施してもしっくりこない(チーム力向上に繋がっている実感を持てない)という感想をもったことが皆さんないでしょうか?私個人の経験を述べますと、過去のAgile開発のKPT(A)において以下のような感想をもったことがあります。

  • 振り返り会が長くてストレスを感じる
    • 似た話として、共有される内容が多すぎて、何を振り返ったのかわからなくなる
  • 共有が形式的になってしまい、意味を感じられない、楽しくない
  • Tが具体的なアクションに落とされていない
  • Tが多すぎて翌スプリントで実施できない

 そんな思いを抱える中で、弊社ストックマークのAstrategy開発チームにおいて、KPTA会のファシリテーターが私に任されました。上司(エンジニアリング・マネージャー)と、私が過去のプロジェクトにおいてKPT(A)で感じた上の問題を共有しKPTAあるべき姿を議論したり、実際にKPTAを何回か繰り返したりする中で、「理想のKPTA」像について自分の中である程度言語化できるようになったので、今回それを共有したいと思います。一言でいっちゃうと、「形骸化された洗い出しが KPTA ではなく、有限時間であるプロダクト作りにおけるエモさの共有が振り返りであるべき」だよね!になります。

KPTA とは?

  • 振り返りのフレームワーク
  • KPT(こちらなら耳にしたことある人が多いかも) に Action の項目を追加したものがKPTA
    • https://www.slideshare.net/esmsec/kptkpta の資料などが素晴らしくわかりやすい
    • 上で述べた、Tが具体的になっていない問題 については、この手法である程度改善できるかも

進め方

 ストックマークでは、現在基本的にリモートワークが行われているため、KPTAもオンライン会議で実施しています。Zoom(オンライン会議)+Miro(ホワイトボードツール)を使って共有会を行っています。
以下のようなKPTAボード上に各自の色の付箋を張っていくスタイルにしています。付箋は各自の色が用意されており(タグで名前を入れています)、関連がある場合は以下のように矢印を引いています(付箋のサイズは読みやすい用に以下の例ではわりと大きめにしています)。
わりとベーシックな運用だと思います。

進行としては、以下の流れになります。

  • 全体的な共有
  • 前回のKPTAの振り返り
  • 付箋作成(5分程度)
    • ここで良いBGMを流すのも重要な仕事
  • KPT を一人ずつ共有(1~2分/人)
  • 最後にActionを1〜2個決める(5~10分)
    • Actionはみんなで決めるので、個人に紐付かない付箋にしている

意識している点、工夫している点

 多分ここまではそんなに普通のKPTAと変わらないと思います。実際、やっている内容自体はベーシックなのですが、以下に述べる点を強く意識している工夫している点が重要で、それによってKPTAのあるべき姿に近づけている実感をもっています。

振り返り会の時間は厳守

  • やろうと思えば振り返り会は無限にできてしまうので、時間意識を強く持つ
    • 一人ずつの共有時間もタイマー用いてちゃんと管理する
  • 時間を厳守することで重要なものだけが確認できるし、認知できる量に抑えることができる

 ものづくり一般に言えることですが、時間(期限)があるからこそゴールに向かって頑張れる側面が強くあると思います (余談ですが、私の大好きなエモーショナル・ハードコアバンドのメンバーの方も音楽作成においてこのようなことを述べられていました)。Agile開発もスプリントという期間は変更できないわけで、その期間で開発できる機能の取捨選択することが重要なわけです。振り返りも同じで、取捨選択をして共有することが重要で、そういう取捨選択が発生するからこそ、その中で個性や創造性が出せるのだと思います。あと、振り返りが本来の作業時間を圧迫するのは言語道断ということも言えるかもしれません。

感情の共有をする

  • 共有の時間においては、「一番共有したいこと」を共有する
    • 上で述べたように、時間を制限しているからこそ網羅的に述べるのではなく、「自分が真に大事に感じること」が共有される
    • 情動的記憶、そして感情を伴う発言が重要で、それがあることで聞く側も記憶に残る
  • 自分の作った付箋だけではなく、他人の共感できる付箋を自分の発表時間で共有してもよい
    • とにかく自分がそのスプリントで一番感情が動かされたことを共有する
    • 他の人の意見(付箋)に強く感情を動かされたならそれを共有することは問題ない

 個人的にKPTAの共有は単なる「カイゼン」にとどまらず、「感情」の共有面がかなり強くあるべきだと考えています。「感情」に基づく記憶は強く記憶に残り、その後の行動に強く影響されるというのは経験的にも真ですし、アカデミア的にもそういう話があるようです。

Action の内容

  • 1~2個にActionは絞る
    • たくさんあるとチーム内で意識がブレる
    • たくさんあるとチーム内でやりきれない
  • 「具体的な」Actionに落とす
    • KPTにAが導入されたのがそもそもTryが具体的ではないということなので、Actionはそれなりに具体的な内容にするべき
  • すぐにActionをやる
    • 例えば、「ログの見直しをして適切なログをアプリに設定する」がActionに上がったら、ログ見直し会議の枠を抑えるだけでもその場で(KPTAの中で)やってしまう
  • チェックシートを作るみたいなActionは絶対に作らない
    • 例:Problemとして、PRDの段階で☓☓のリスクを洗い出せていなかった
      → 「PRD作成時に想定リスクを識者と議論するプロセスを入れる」といったActionならOKだが、
      ☓☓や△△の漏れがないかのチェックシートを作るというActionには絶対にしない
    • 上にも書いたように、「情動による記憶」こそ大事にしたい
    • チェックシートなんかの対策は、(これまでのKPT(A)の失敗と同じ様に)形骸化された、内実を伴わない手間が増えるだけ
    • KPTAで情動を大事にするのと同じ様に、Actionに出す項目もみんながプロダクト開発における意味や創造性を伴うものにしている

過去のKPTAを見返す

  • 人は忘れてしまうものなので、チェックシート的な見直しというよりも、エピソードの思い起こしとして振り返る
    • 過去にこういう意見あったねぇと感情に基づく記憶が呼び出されることで、情動的記憶が強化できる(と思う)

その他

  • 良いBGM
    • 歌詞があるものだと思考の邪魔になる可能性があるのでインストの曲が良い
    • ポストロック系の曲が「エモい」と反応もらったので、おすすめ
  • 以下みたいな付箋があってもよい
    • 真面目になりすぎる必要はないw

まとめ

まとめると、

  • 振り返り会の時間は厳守することが重要
  • 洗い出しではなく、感情的な共有が重要
  • Actionはすぐやる
  • ときどき見返す

といったことを意識しています。

 本当に楽しい開発というのは、漫然さの逆、つまり主体的な情動と臨場感を伴うということだと思います。そのためには、振り返りだけではなく、日々の活動が主体的であるべきですし、メンバーの主体的な行動を讃える雰囲気を作ることが重要だと思います。そして、振り返り会もその延長にあるべきだと思います。