テストしないQA(Quality Assurance)ってなんやねん、という話 #doda Developer Group Advent Calendar 2024

この記事はdoda Developer Group Advent Calendar 2024 の17日目の記事です。

はじめに

こんにちは。アドベントカレンダー17日目担当の飯田です。 パーソルキャリア株式会社でdoda_QAグループに所属しており、dodaサイト開発のアジリティ・品質向上のための活動全般を行っています。

この記事では、タイトルそのまま「テストしないQA」ってなんやねん、というお話をさせていただければと思います。

この間勉強会に登壇してきたよ、のはなし

先日、テスト自動化エンジニア勉強会に登壇させていただきました。

こちらの勉強会では「テスト自動化」をテーマに、私を含めた三者がそれぞれの会社での実践事例を共有する場となっていました。

ありがたいことに200人ほどご参加いただき、質問やコメントも活発にいただけましたこと、この場を借りて感謝申し上げます。 後日、イベントレポートもTECH Streetでアップされると思いますので、よろしければそちらもご覧いただけると泣いて喜びます!

dodaでは従来型の品質担保はやってないよ、のはなし

この勉強会の参加アンケートの中で、「QAだけどテストしないは衝撃でした」「保証をしないQAというのは目から鱗だった」といったコメントをいくつか頂戴していました。

勉強会の資料抜粋

せっかくなので、勉強会では語りきれなかった「なぜその決断に至ったのか、何がしたいのか」について少し詳しくお話できればと思います。

QAチームができるまで、のはなし

dodaのQAチームは2023年4月に発足しましたが、2022年の暮れからQAチームの構想自体はスタートしていました。 私自身、QAチームを立ち上げる事になった際は、「UATとかテストする人たちを率いるのかぁ」と思っていたほどでした。

当時、dodaではQA経験があるメンバーが居なかったので、dodaの開発を今後どうしていきたいか、(私を含め)当時の開発リーダー、マネジャー達を集めて議論しました。

その中で出たのは、以下のようなものでした。

  • リリース後の不具合が頻発しており、このまま開発メンバーが増え続けるとリリースサイクルが正常に回らない
  • 今の開発プロセスだとメンバーが増えるほど開発チームリーダーの負荷は増える一方で、いずれ破綻する
  • アジリティと品質の両面を向上させる必要がある
  • QAチームが居ないと品質担保できないような開発チームにはしたくない(スクラムチームで品質担保できる世界にしたい)

こうした課題背景の中から、QAチームが爆誕したのです。

実際やってきたこと、のはなし

従来型のQAチームの立ち上がり方では、いわゆる下流工程(UATなどのテスト実施)からクオリティゲートとして入っていき、 ドメイン知識を蓄え、徐々に上流工程のプロセス改善に染み出していく、という立ち上がり方がオーソドックスなパターンかと思います。

おそらく私がQAというものを初めて目にした十数年以上前から、この基本戦略は変わっていないように思います。 (※ノーコードのE2EテストやAIの活用など、テクノロジーの進化はあるものの、基本的に立ち上がり方は変わらない)

しかしこのアプローチを取った場合、QAチームがクオリティゲートとして立つ形となるため、「アジリティと品質の両面を向上させる必要がある」、「QAチームが居ないと品質担保できないような開発チームにはしたくない」という、当初の課題をクリアすることはできません。

このため、dodaのQAでは最初からプロセス全般の改善をターゲットに活動をスタートし、チームが安心・安全にプロダクトのグロースに取り組める環境や文化づくりを担う組織として誕生しました。

そのためにやってきたこととしては、以下のようなものがあります。

  • 開発プロセスの見える化
  • FourKeysを用いた開発パフォーマンスの見える化
  • 不具合分析のためのテスト管理ツールの導入
  • フィードバックの場の運営(Scrum of Scrums)
  • シフトレフト推進
  • E2Eテスト自動化、TDDの推進

それぞれどのような事をやってきたのかは詳しく語ると長くなるので、また別の機会にお話できればと思います。。。

やりたかったこと、のはなし

タイムリーなことに、トヨタ自動車の井芹さんが大体語ってくれていました・・・語ってくれていました・・・(´;ω;`)

speakerdeck.com

こうしてみると、我々QAチームが取ったアプローチはまさにこれだったな、と思います。

実際やってみて、のはなし

QAチーム発足から最初の半年は、QA主導で様々な施策を展開したことで、開発チームからの疑問や意義を問う声が少なくありませんでした。 その頃から徐々に開発チームへのアプローチを変え、「やってもらう」から「任せてやってみてもらう」にシフトしたことで、徐々にQAプロセスが浸透していったように思います。

アサイン当初思い描いていた「テストするQA」から徐々に、スクラムマスター達を誘(いざな)う、「テストしないQA」に変わっていったのです。

まとめ

  • 「テストしないQA」はアジリティと品質の両面の向上を支えるチームとして生まれた
  • 「テストしないQA」はその名の通りテストはしないが、品質向上を担わないわけではない
  • 「テストしないQA」の目的は開発プロセスの高度化であり、チームが安心・安全にプロダクトのグロースに取り組める環境や文化づくりをおこなっている

さいごに

ここまで読んでいただき、ありがとうございました! dodaの「テストしないQA」の活動については、またどこかの機会に登壇してお話できればと思っていますので、 ご興味あれば参加いただけると嬉しいです!

alt

飯田 勝巳 Masami Iida

プロダクト開発統括部 dodaグロース開発 doda_QAグループ シニアエンジニア

2008年にパッケージベンダーでエンジニアとしてのキャリアをスタート。2012年に独立系SIerに転職。ECサイト構築や採用管理システム(ATS)開発にPL/アーキテクトとして携わる。2017年にパーソルキャリアに入社し、その後一貫してdoda内製開発に携わる。ウィスキーとゲームをこよなく愛するアラフォーです。

※2024年12月現在の情報です。