アジャイル開発のふりかえりが楽しくサクッとできる「anycommu」

中島智弘氏:「AIスクラムマスター~ふりかえりの助言をChatGPTにさせてワイワイ盛り上がろう~」というタイトルでちょっとお話ししたいと思います。

簡単に自己紹介します。私は、KDDIアジャイル開発センターという会社からやってきました中島と申します。KDDI DIGITAL GATEという、#0(「ChatGPT Meetup Tokyo #0」)の会場で使っていただいた組織です。

今日紹介するのは、アジャイル開発のふりかえりが楽しくサクッとできるプロダクト「anycommu」です。会社の有志で作っています。

「ChatGPT」と連携して、「AIスクラムマスター」というものを作ってフィードバックをもらえるようにしたという話を、今日は活用の例として、本当にシンプルな使い方しかしていませんが、ご紹介できればなと思っています。

ふりかえりの目的とは?

なぜ作ったのか、まず前提の話をさせてください。

私たちはアジャイル開発をスクラムに乗っかってやっています。プランニングをやって、デイリースクラムをやって、実際に動くものを作って、レビューをやって、スプリントレトロスペクティブ、(スライドを示して)ここでみんなで話し合いをして、次のスプリントはこんなことをやっていきましょうという感じで話し合いをします。ふりかえりですよね。このふりかえりがすごく大事だなと思っています。

2年前に、コロナ禍真っただ中のタイミングで、リモートでもふりかえりが楽しくサクッとできるプロダクトを作ろうと、有志が手の空いている時にちょっとずつ作って無償で公開しました。

「Fun Done Learn」という、スクラム、アジャイル界隈では有名な手法があります。出来事や感じたことを話し合って、会話を通して、Fun、楽しかったこと、Done、終わったこと、Learn、学んだことにそれぞれ分類して、こんな感じで付箋を貼って並べるという、ふりかえりの手法があるのですが、それを中心に、ふりかえりがやりやすくなるようなものを作っています。

私たちは、KDDI社内の案件もやるのですが、社外のお客さんと一緒に、会社をまたいでチームを作ることもあります。その時もお客さんと一緒にこれを使ってふりかえりをしています。

ChatGPTの話と少し逸れちゃいますが、ふりかえりの書籍が出ています。「ふりかえりの目的って何なの?」みたいなことがいろいろ書いてあって、(本の中では)コミュニケーションが活発になり、情報の透明性が高まるということが目的の1個として挙げられています。

これを私はすごく大事にしています。なので、うちのチームは、ふりかえりをする時に、仕事以外のことも積極的に話し合っています。雑談が増えてコミュニケーションが増えるよねというのをふりかえりの場でやっています。

ふりかえりは毎日やっているのですが、ファシリテーションは毎日違う人がやっています。ぜんぜんエンジニアじゃないビジネスサイドの方に、プロダクトオーナーとして入ってもらってやることが多いのですが、サクッとできるのでお客さんにもふりかえりのファシリテーションをやっていただいています。

そうすることで、会社をまたいだチームビルディングが進むという効果を感じています。

書いた付箋の内容にChatGPTがフィードバックする“AIスクラムマスター”

今日お話ししたいのは、3月に実装した、AIスクラムマスターの話です。これは、書いた付箋の内容に対してChatGPTがフィードバックしてくれるというものです。

例えば、「わからないは禁句! できないは禁句! 向いてないは禁句!」みたい付箋を書き込むと……「このようなネガティブな言葉遣いは、チームメンバーを傷つけることがあります。代わりに『わからない部分を教えてほしい』『今はまだできないが学びたい』といったポジティブな言葉を使いましょう」といったかたちで、ちょっと気の利いたことを言ってくれます

アーキテクチャは「Firebase」でやっていますが、すごくシンプルです。「Functions」を呼んで、結果を書き込むだけですね。

AIが⼈間に気づきを与えるようにすれば、ふりかえりがもっと盛り上がるのでは?

これをなぜ作ったのかという話をちょっとさせてください。

『問いのデザイン』という書籍があります。この本を、すごく私たちは大事にしているのですが、ここに書いてある例をちょっと紹介させてもらえればと思います。

「問いを変換すると見えてくるアイデアも変わる」というお話です。

例えば、「カーアクセサリープロダクトを考える」という場があった場合に、そこのメンバーに、「人工知能時代にカーナビはどうすれば生き残れるか?」という問いを投げかけてしまうと、人工知能を活用したカーナビのアイデアしか出てこない。

一方で、「自動運転社会のどんな移動の時間をデザインしたいか?」という問いを投げかけると、思ってもいないいろいろなアイデアが出てくるという話があります。

問いをデザインするにあたって、「課題設定の罠」というものがあると言われています。「自分本位」「自己目的化」「ネガティブ・他責」「優等生」「壮大」。こういったことがあると、狙ったようないい場が作れないという話ですね。

これって見てみると、全部人間のエゴなんですよね。人間だからやってしまうことばかりなんじゃないかなと思っています。

ということで、人間がAIに依頼するのではなく、AI側から人間に気づきを与えてくれるようにすると、もっとふりかえりみたいな場がワイワイ盛り上がるんじゃないかなと(思いました)。今まで以上に、学習やカイゼンの機会が得られるんじゃないかという仮説を立てて作っていました。

ちなみにこれは、前回のChatGPT Meetup #2で、「ChatGPTを聞き手にしよう」という内容で話された方がいたと思いますが、目指している方向性がこの方とすごく近いのかなと思いました。

試行錯誤の結果、プロンプトにたどり着いた

どうやって作ったかですが、まず、こんな感じでやってみました。最初は、1日のふりかえり全体に対するフィードバックをやってもらおうとしていたんですよね。

「このふりかえりを要約してください」「全体を見渡して気づいたことがあれば書いてください」というかたちでフィードバックをもらいました。

すると「全体を見渡すと、チームは楽しみながら学び、コミュニケーションを重視しています。さまざまな話題に対してオープンで、互いに教え合いながら成長している様子がうかがえます。ネガティブな意見も存在するため、チーム内の改善点にも目を向けることが重要です」。

ここからなんにも情報がないような(笑)、なんの学びも感じられないプロンプトができちゃった感じですね。

これは良くないなと思って、ちょっと工夫したところなんですが、「メンバーがそれぞれいるので、発言したメンバーに1人1つ、問いを投げかけてください」みたいなことをやってみました。

これもいろいろ質問はしてくれるんだけれども、なんかちょっとおもしろくないなというところで、もう少し深く聞いてほしいなと思いました。

結局、1つの付箋につき1個の問いを投げるということをいろいろやりました。隠すほどのプロンプトではありませんが、いろいろ試行錯誤した結果たどり着いたプロンプトがあって、最初は、(画面の)左側にGPTを連携していないこのツールを、右側にChatGPTのUIを並べて、画面共有しながらファシリテーションをやってみました。

すると、今までにないような視点の会話が増えて、けっこうワイワイ盛り上がったので、実際に実装してみた感じです。

これをいろいろなチームで使ってフィードバックを聞いてみたのですが、「チームの会話の量が増えた」「話が盛り上がった」みたいなフィードバックが多かったです。

あとは、「AIスクラムマスターがたまに頓珍漢なことを言うので、そこがおもしろいな」とか「ちょっと言いにくいこともズバッと言ってくれる」とか「AIだとなにを言われてもそんなにイラッとしないな」みたいな、そんな話がありました。

実際に盛り上がった付箋を紹介

ということで、ちょっと盛り上がった付箋をいくつか紹介したいと思っています。

「『LangChain』難しい」というやつですね。LangChainを使えばサクッといろいろできるとは思うのですが、ちょっと細かいことをやろうと思うと、私はまだまだ理解が及んでいないところがあるなと思っています。

それに対してのAIスクラムマスターのフィードバックがこちらですね。「LangChainを理解するために必要な情報は何ですか? 困っていることはありますか? チーム内の誰かがLangChainについてより深く理解するために支援することはできますか?」という感じです。

ありきたりかもしれませんが、チームで話題が広がりそうな、いい助言と問いなのかなと思っています。そんな感じで、いきたいと思います。

「スイカ、おいしかったです」。雑談もOKなので、こういうのも、うちのふりかえりではけっこう書いているんですが、それに対するフィードバックがこんな感じでした。

「なかじまさん、『おいしかったです』という発言、ありがとうございます。しかし、このふりかえりは、チームの改善点を共有する場です。今回の発言について具体的に改善点や問題点はありますか? また自分の仕事に関しての気づきやアイデアはありましたか?」。

おいしいスイカのどこを改善すんねんみたいな(笑)。

(会場笑)

そんなフィードバックで、ワイワイと話で盛り上がったりしましたね。こんな感じでいきたいと思います(笑)。

「『Copilot』があるとあまり考えなくていい」。これもエンジニアが「GitHub Copilot」を使うと、考えなくていいなというフィードバックをついこの前、付箋に書いたやつですね。

それに対するAIスクラムマスターのフィードバックがこちらです。「チームメンバーがCopilotに頼りすぎている可能性があります。そのためチーム全員が慣れ親しんだ環境が変わった場合、対応できなくなる可能性があります」。

「AIがAIを警告しているって、どんなジレンマやねん」みたいな、そんなことを思いました。

(会場笑)

そこそこウケたのでよかったです。これ、なんてツッコんだらおもしろいかなってけっこう迷って(笑)、ChatGPTに聞いて、一番良さそうなやつを選びました。ぼちぼちでしたね。はい、ありがとうございます。

最後ですね。これは、横瀬さんという、別のチームにいる方が、チームに復帰されて、「よこせさん、お帰りなさい!!」という付箋が書き込まれた時のフィードバックです。こんな感じでした。

「発言内容と話題が異なりますので、次回から改善点に関する発言をお願いします」。

帰ったことぐらい祝わせてあげてほしいと思いましたね。

(会場笑)

同じように、ほかの方が「横瀬さん復帰」というかたちでお祝いしてくれました。「すばらしいニュースですね。チームとして横瀬さんをサポートし、彼女のニーズに合わせて作業を分配しましょう」。作業分配という表現はちょっと気に入らないんですが、横瀬さんは男性なんです。ここでハルシネーションが起きました。

ふりかえりは盛り上がってもOK コミュニケーションを活性化していこう

ということで、まとめです。アジャイルの文脈でふりかえりのツールを作っていて、ふりかえりのフィードバックをChatGPTにお願いしました。

たまにいいことを言ってくれるんですが、ちょっと情緒不安定だなということで、GPT-4にしたり、バックログ連携したり、もうちょっとLangChainを使って過去の発言を引っ張ってきたり、そのあたりをやればフィードバックの質が向上するかもしれません。そのあたりも含めて、今のところチームはワイワイ盛り上がっているのでいいかなと思っています。

「ふりかえりって盛り上がっていいの?」みたいなことをけっこう聞かれることがあるのですが、私はいいと思っています。

ふりかえりの目的は、カイゼンすることがけっこうフォーカスされがちなんですが、コミュニケーションを活性化するところもすごく大事かなと思っているので、こういうものを使って、ワイワイ盛り上がっていきたいな、カイゼンだけに特化しなくてもいいんじゃないかなと(思っています)。こういう使い方もありますよというご紹介でした。

このツール、無料で使えるように置いているので、もしよければ使ってもらえればなと思います。

はい、以上です、ありがとうございました。

(会場拍手)