こんにちは。freee人事労務でQAエンジニアをしている村岡です。社内ではkairiと呼ばれています。ニックネームは特に本名とは関係ありません。
この記事は freee QA Advent Calendar2023 の14日目です。
今回はQAメンバー内でテスト分析レビューをしてみたら想定していた以上の効果があったのでそのお話をさせていただきたいと思います。
前提
freeeでは1チーム数人の開発エンジニアに対して1人のQAエンジニアが入り、一つのプロダクトに複数のプロジェクトが並行して走っています。チーム内のQAエンジニアは単独で動くことが多く、それぞれのQAエンジニアにそれぞれ担当しているドメインの知識が属人的に身についている状態です。
そのため、チームが異動になった場合や、QAメンバーが急遽お休みしたタイミングで他のメンバーが引き継ぐのに苦労することがあります。
これを解消するためにチーム内で勉強会が開催されていたりするのですが、浅く広く勉強することはできても狭く深く勉強することは相当時間をかけないと難しく、概要は知っていても実際にテストすることはできないような状態が発生することもありました。
辻レビュー
freeeでは以前から「辻レビュー」という文化があります。発祥はよくわかっていないのですが、おそらく「辻斬り」から来ているものと思われます。
レビューといえば人によってレビュアーがある程度決まっていて、その人にレビュー依頼することが多いと思いますが、辻レビューの場合レビュアーが自主的に対象を見つけてレビューしに行きます。
この辻レビューを取り入れれば、上述した課題に対して何らか効果があるのではないかと考えました。
というわけで、以下画像は私が実際に辻レビューを依頼してみた現場になります。私のチームの場合辻レビューをする文化は当時なかったので、自分から斬られに行っています。不自然さは否めませんが気にしないでください。
私はマインドマップでテスト分析する派なのでマインドマップツールへのリンクを貼っていますが、その辺は好みとプロジェクトの規模によると個人的には思っています。
- Design Doc(仕様書)
- Design(freeeだとfigmaを使用していますのでそのURL)
- Test Design(テスト分析)
上記三種類のDesignをメンバーに共有しています。
期待以上の効果
斬られに行った側としては「なんか見逃してるテスト観点見つけてもらえるといいなー、今こんなテストしてることが伝わるといいなー」くらいの気持ちだったのですが、
- ドメイン知識の共有になる(=当初の目的)
- ちょうど同じプロダクト内の関係している開発案件への連携に繋がる
- 自分のテスト観点が他の人のテスト観点の漏れ発見に繋がる
- 自分のテスト分析のいいところを他の人が真似できる
- もちろん自分のテスト観点の漏れも見つけてもらえる
- 単純にわいわいできて楽しい
など、当初の思惑を超える効果がありました。ポイントとしては、レビューする側の時間が多少食われる以外のデメリットが思いつかないことです。それにしても本格的にキャッチアップしようと思ったらもっと時間がかかるはずですから、効率的な方ではないかと思います。 この辺を踏まえて、何度か人事労務QAチーム内では辻レビューの依頼が発生しています。
またこの流れを受けて他プロダクトのチームでも辻レビューをする動きもあり、気軽にお互いのテスト分析や設計をレビューできる空気が醸成されていっています。
また、よりお互いの手助けやレビューがしやすくなるようにJiraにQAチームのボードを作ってそこでそれぞれの進捗状況や案件状況を把握できるようにし、レビューに必要な資料をそこに添付しておくことで依頼がなくても辻レビューができるような仕組みも整え始めました。こちらの方が本来の辻レビューっぽいですね。
ただし、そちらはレビュアーが自主的に斬りにいかないといけないので、レビュアーの主体性にかかってしまう(=忙しければ見られない)という問題も発生しています。
現在の運用フロー
現在の運用フローは以下の通りです。ゆるくやっています。
- 辻レビュー依頼するときは必要資料を添付してチームのチャンネルに投稿する
- 各チームの状況をJiraのチケットで整理して、定期的に情報を更新する
- 辻レビューをしたいときは依頼の投稿を待つか、上記Jiraのチケットを確認しに行き、興味関心のある案件をピックアップしてレビューする
テスト分析レビューはQA同士以外でも
なお、少し本筋とは逸れますが、テスト分析は開発エンジニアの方にもお願いして非同期でレビューしてもらったり、レビュー会を開くこともあります。
タイミングは色々ですが、早ければ要件がある程度固まった段階で仕様作成と同時並行で軽めのテスト分析(という名の影響範囲の洗い出し)を作成し、共有しています。
この場合の目的は、
- 仕様に関するお互いの認識齟齬がないことを確認する
- 開発者の方の仕様作成や開発の助けにしてもらう
などです。
終わりに
必ずしもこのやり方が正解ではないと思っています。他のやり方でいいところがあれば真似し、無駄なフローがあれば削って、チームやプロジェクトに最適な方法を見つけていきたいです。
明日は同じく人事労務QAのshihoさんが「QAが率先してアクセシビリティチェック品質をリードしたらいいことづくしだった」という内容で記事を書いてくれます。お楽しみに!