Customer Stories

増え続けるデグレのリスク。40時間がゼロに?!ノーコードのAutifyで「デグレのループ」脱出に成功。

執行役員 安田 崇浩 氏、Logicad技術開発 チームリーダー 重冨 真毅 氏、QA(品質保証)部門 吉井 高広 氏
Company
SMN株式会社
https://www.so-netmedia.jp/
Industry
Media / Advertising
Publish Date
March 8, 2021

近年さまざまな企業が、売上拡大や認知度向上を目的とし、インターネットメディア広告を活用するようになった。ネット環境の発展やスマートフォンの普及が広がることで、ネットメディア広告市場はさらに成長していくことが予想される。

そんな中、メディアと広告主双方の収益を最大化する技術「アドテクノロジー」が注目を集めている。広告の配信管理や分析、最適化を実現するアドテクノロジーの配信プラットフォーム『Logicad(ロジカド)』を提供するのがソニーグループのSMN株式会社だ。

執行役員 安田 崇浩 氏、Logicadの技術開発を担当する重冨 真毅 氏、QA(品質保証)部門を担当する吉井 高広 氏の3名に、開発の課題とテスト自動化について話を聞いた。

(写真左から、QA(品質保証)部門を担当する吉井 高広 氏、執行役員 安田 崇浩 氏、Logicadの技術開発を担当する重冨 真毅 氏)

— 皆さんがご担当されている業務内容について教えてください。

安田さん: 私はSMN株式会社で自社開発している広告配信プラットフォームLogicadの開発を担当しています。Logicadは立ち上げから関わっていまして、現在は、技術開発部門の役員として、技術全般を見ている立場になります。

重冨さん: Logicadの画面を開発するチームに所属しています。チームのメンバーは11名で、そのうち開発が6名、テスターが5名という構成です。私はその中のチームリーダーを任されています。

吉井さん: 私は重冨さん率いるLogicadの画面の開発チームでQAを担当しています。

工数に見合うスキルセットの人的コストがマッチしない。

— Autifyを導入される前は、テスト自動化にどのような課題をお持ちでしたか?

吉井さん: チーム内では、Seleniumを導入すればテストがラクになるだろうという認識でした。デグレテストをどこまで広範囲にやる必要があるのかという問題と、コスト面を天秤をかけて検討しました。

ですがSeleniumは人的コストが大きかったのと、メンテナンスのスキルをもった人材をうまくアサインできず、なかなか良い解決案が見つからなかったんです。そんな中、Autifyのサービスを知って、専門のスキルがなくても使い始めることができるし、それほどコストも掛からない。これならちょうど良いのではないかという話になりました。

安田さん: 実は5年ほど前に、Seleniumに取り組み動くところまでは行ったのですが、その後の開発に、随時追従してメンテを続けるということが難しくなったことがありました。

リリーススケジュールが、月に1〜2回くらいのペースだったのですが、合わせてSeleniumを追従させていく工数とスキルセットのあるメンバーの人的コストがマッチしなかったという経緯がありました。

ですから、Seleniumでのテスト自動化も悪くはないけれど、また同じ失敗を繰り返すかもしれないという不安要素がありました。

増え続ける「デグレ」テストのループから早く抜け出したい

— 5年前にテスト自動化をトライされて、ふたたび自動化に取り組もうと思われたきっかけはなんだったのでしょうか?

安田さん: 新機能追加によって既存の機能に不具合が生じてしまったり、デグレードが発生することもありますよね。当然、機能が増えれば増えるほどその頻度も上がっていくし、テスト内容も複雑になっていきます。

「ここにバグが見つかった」、「デグレ確認もしなきゃ」となるのはよくあるパターンです。そうすると、「どこまで人手でデグレ確認すればいいんだっけ?」というところにぶち当たります。その状況に到達しつつあって、人手では難しくなってきました。

— Autifyの導入を検討いただいたのが昨年の終わり頃だったと思うのですが、テスト自動化で、デグレのリスク管理以外に実現したかったことなどはあるのでしょうか?

重冨さん: デグレ確認のテストにかかるリソースを、新機能のテストに回して開発サイクルを速めたい、という思いがありました。

今回デグレに掛かるコストが10だとしたら、次回は11になり、次々回は12になりというのがずっと積み重なっていくので(苦笑)。しかもデグレ確認は、新機能ではなくて既存機能への確認工数なので、それが増え続けるループから早く脱したかったんです。

Autifyを活用しはじめてから実際に、デグレ確認のコストを考えずに済むようになった。以前と比べると、明らかにテストの工数が減っています。

致命的なバグを網羅的に潰して、デグレの発生率を減らす

— アジャイル開発をしていると、機能は増え続けますもんね。実際にAutifyを導入していただくまでのプロセスをお聞きしてもいいですか?

安田さん: (Autify代表の)近澤さんが、テストメンバーと開発メンバーの前で、デモンストレーションをしてくれました。そこで「これは行けそうだ」とメンバーの理解が深まったと思います。こういうツールって、いきなり「使って」と言っても困惑されてしまうので(苦笑)。あのデモのおかげでかなりハードルが下がりました。

吉井さん: そうでしたね。あの場でそれぞれの担当者が、Autifyを導入して取り組める状態になれたのは大きかったと思います。

まずはビジネス的にもっとも致命的な要素を優先的にシナリオに起こして、スタートしました。システムが大きくなるとテストの分岐も増えていくので、そこに肉付けする形でシナリオを増やしてきました。

— ここで言う致命的と言うのは、バグが出るとビジネス的なダメージが大きいという意味でしょうか?

吉井さん: そうです。登録、更新という重要な部分はテストして確実にバグを潰したい。ユーザーの権限によっても画面が変わるので、片方の権限ではテストしていたんだけど、もう片方の権限のほうでは確認が漏れていて、結果、そちらのほうでバグが起きてしまった、という苦い経験がありまして……。

— シナリオがあってもテストをするのは難しかったということですか?

吉井さん: シナリオは用意してあったのですが、それを「いつ」、「どのタイミングで」、「どの範囲までやるか」といった判断が難しいんですよね。人的リソースとリリースまでの時間が限られている中で、全てテストするのは当然難しかったのです。

安田さん: 仮に新機能のほうにバグがあって余計に開発に時間が掛かってしまった場合、デグレのほうにしわ寄せが行くこともあります。「どこまでやるか」を勘に頼ってやると、だいたい予想していないところでデグレが出るので、そっちじゃなかった!となるのも、陥りがちなパターンです。

重冨さん: こういう新機能を実装するなら影響範囲はこの辺り、という予想が外れてデグレが生じてしまうところを、Autifyを使えばシステムで全て網羅できる。だから、デグレの発生率は下がりました。

「動くテストケース」のおかげで教育コストも激減

— Autifyではユーザー権限をカバーした新機能を間もなくリリースする予定なので、ご活用いただけるのではないかと思います。導入後の運用で何か工夫していることはありますか?

吉井さん: シナリオのステップが増えていくと「これは何のシナリオなのか?」作った当初はわかるけど、しばらくするとわからなくなってきますよね。導入当初は、そのメンテナンスに苦労した時期がありました。

でもAutifyに機能が追加されて、コメントやステップ名が入力できるようになった。ただの文字だけではなくブラウザ上で実際に動かせるので「動くテストケース」のような形で確認できます。

コメントを残しておけば、作った本人もわからなくなることもないですし、新メンバーがシナリオを作成するときに、既存メンバーがいちいち教えなくても、そのコメントを参考にして新たなシナリオを作れるようになったんです。副次的な効果ですが、シナリオ作成における教育コストが減らせたことも、大変助かってします。

— メンテナンスの工数が減らせるポイントどんなところでしょうか?

重冨さん: やはりAutifyのUIはわかりやすさだと思います。これは「Logicad」でも真似できないと感じるレベルです。テストチームのメンバーが作ったケースを見るだけで「こういう使い方をすれば、こういうケースを作れるんだな」と直感的にわかるのがいいですね。

それからチャットに質問を書き込むとすぐに反応していただけるサポート体制もありがたいです。チャットはサポートする側としては運用が非常に大変だと思うのですが、使う側としては、安心感が全然違います。

吉井さん: サポートのおかげで、各シナリオの担当者が、独自に仕事を進められるので助かっています。

— Autifyを導入していただいて、成果は感じられていますか?

安田さん: デグレの解消は本当にインパクトが大きいです。

「Logicad」は、広告用のバナー画像を入稿して、それを広告として配信します。そして、その成果を示すレポーティングがあります。「広告クリエイティブ」の種類はどんどん増えていきますし、レポーティングに関してもいろいろな軸があります。例えば、広告キャンペーンとして、インプレッションやクリックなどの効果はどうだったのか、デイリーでどうだったのか。仮に100パターンのクリエイティブを入稿すればそれぞれ100個の結果をレポートする必要がある。そのような作業を毎日、何十人という人がぐるぐる回してチェックを行っています。

過去の機能をエンハンスすることも多いですし、サービスの特性上、とにかくパターンが多くてデグレが起こりやすいので、テストはかなり重要かつ、手間のかかる作業なんです。その部分が自動化できるというのは非常に大きなインパクトがあります。

— それまで掛かっていた工数は、実際にどれぐらい削減されたイメージでしょうか?

吉井さん: リリース機能にもよるのですが、多いものでは40時間——だいたい1人が1週間丸々やらなきゃいけなかった工数が基本ゼロになった感じです。

その40時間というのは、先ほどもお伝えしたように、どんどん増大していくので40時間では収まらなくなっていきます。それが月に1〜2回ある。しかもその工数を使っていた時間は別の業務に充てることができます。

重冨さん: 致命的なデグレが発生するのはもともと年に数回なので、Autifyのおかげで防げたというケースはまだないのですが、圧倒的な安心感が得られているのも開発者としてはありがたい点です。

【後日談:SMN重冨さんより「インタビューの後、2件のデグレケースをAutifyで事前に検知することができました」とご報告いただきました】

複雑なシステムでも順応。今後の可能性にも期待できる

— テスト自動化や開発に関する、今後の展望について教えてください。

安田さん: 今はデグレテストをメインに使っているのですが、新機能のほうに広げていけたらと思います。開発者がシナリオを書いて、それをしっかりテストするのはQAチームというフローを作れば、開発スピードも上がっていくと思います。開発プロセス的にも、Autifyのようなツールをうまく使って、洗練させていくのが理想的ですね。

— そのほか「Logicad」のサービスとして、今後取り組みたいことなどはありますか?

重冨さん: チームとしての課題は、まずは本番障害を出さない。その次に利便性の向上だと考えています。

ユーザー権限の種類が今のところはそんなに多くはないのですが、利便性を高めるために、来年度は権限を増やす計画があります。さらにテストの負荷が高まるというのが、もう目に見えているのですが、この対応を進められるのはAutifyを導入したおかげでもあるんです。これがなかったらやれないだろうなと思っています(苦笑)。

— お力になれたら大変嬉しいです。最後にこれからテスト自動化に取り組む方々にメッセージをお願いします。

安田さん: 今の話に尽きるのですが、Autifyは複雑なシステムに対して機能維持のためのテストプラットフォームとして順応できるツールです。おそらく、複雑なものに毎日コツコツ対応している人って、結構いらっしゃるんじゃないかなと思うんですよね。

複雑であればあるほど「自動化したいけど複雑だから厳しいかな」と思っている人もいるかもしれません。そういう人でも十分取り込めるレベルのツールだと思います。

重冨さん: 弊社のQAチームはデグレのテストを、毎回、繰り返し行っていて大変なのですが、Autify導入によって「やらないで済む」ことが格段に増えて、その分、別のことに取り組めるようになった。それはQAチームのモチベーション向上にも繋がるんじゃないかなと思っています。

吉井さん: AutifyはQAチームで利用できるサービスですが、開発側としてもプロセスに取り組むことが可能だと思います。利用次第で可能性が広がるツールだという感触があるので、期待しています。

— たっぷりお話を聞かせていただき、ありがとうございました。Autifyをますます改善していきたいと思いました。引き続きご要望をお寄せいただけたらと思います。これからもよろしくお願いいたします。