死亡保険やがん保険、医療保険など数ある商品をどの保険会社から選ぶのか。契約者の人生における「もしも」のときに備える選択だからこそ、保障内容は当然のことながら対応の早さやサービスの品質が信頼を左右する。
そんな生命保険会社のシステムを支えるIT部門では、どのようなシステムリスク管理・品質保証に取り組んでいるのだろう。
オリックス生命保険株式会社 ITプロダクトマネジメント部の松井康浩氏、河合邦晃氏、帆足伊織氏、大塚裕子氏の4名に、品質保証における課題と、Autifyを活用したテスト自動化の取り組みについて聞いた。
— みなさんの担当業務について教えてください。
松井さん:ITプロダクトマネジメント部で、2020年から取り組んでいる「ソフトウェアテスト効率化」の担当をしております。テスト自動化ツールを活用するための準備や推進活動をしています。また、WEB給付金請求やお客さまの住所変更、お支払方法の変更などをWEB上でできるWEB請求手続きシステムの保守も担当しています。
帆足さん:ITプロダクトマネジメント部に所属しています。2018年に新卒でオリックス生命に入社して、 WEB請求手続きシステムを構築するプロジェクトから参画しました。松井と同じくWEB請求手続きシステムの保守、開発、運用を担当しています。
大塚さん:私はITプロダクトマネジメント部とITユーザーエンゲージメント部の2つの部署を兼務しています。ITプロダクトマネジメント部では、お客さまの契約情報を管理するシステムの保守を担当しています。ITユーザーエンゲージメント部では、当社のアプリケーションの保守をしており、Autifyによるテスト自動化に取り組んでいます。
河合さん:お客さまからの資料請求や申込みのシステム開発と保守を担当しています。過去に、Seleniumなどを使ってテスト自動化を実施していた経験があります。保険の申込みにあたっては、お客さまに事前に入力いただく事項が多くありますので、それらを打鍵するテストをAutifyで自動化しました。
— 貴社はどのような組織体制で、開発に取り組まれているのでしょうか?
松井さん:クオリティ、コスト、デリバリーの3つの軸それぞれが良くなるだろうという仮説のもと、開発部隊とテスト部隊を分けています。
システム開発における工数の割合はテストが5割程度あると考えています。
自分が開発したコードには「不具合は無い」と思ってしまいがちです。開発後にテストを実施し、第三者目線で不具合が無いか牽制を利かせることが品質向上につながります。開発を担当するチームや委託先は開発業務が終わった後、次の案件にすぐ取り掛かることができます。コストはかかっても結果的に品質が高くなり、デリバリー期間が短くなることで会社や保険商品の優位性が高くなると考えています。
ー 調査データを見ていると、開発工数に対して、テスト工数は3〜4割を占める企業が多いようです。貴社では約5割とのことですが、品質保証における高いコスト感は保険や金融業界ならではということでしょうか。
松井さん:はい。事故や怪我、万が一身内に不幸があったとき、いち早くお客さまの給付金請求にお応えする必要があります。そんな中ブラウザのバージョンアップやセキュリティパッチによってシステムに不具合が起きてしまうと、お客さまからの信頼が損なわれてしまいますよね。やはり高い品質が求められると考えます。正直、一部においてはテストケースが多すぎると感じることもあるので、どのように最適化していくかが今後の課題です。
また、弊社にはテストエビデンスをまとめてビジネスサイドに提出し、承認を得るガバナンスがあるので、どうしても時間や対応する工数がかかってしまいます。Autifyのようなサービスだとテストエビデンスを自動で出してくれるのがうれしいですよね。そのような機能は金融系の企業では特にメリットを感じられると思います。
ー Autify導入前はどのような課題があったのか教えてください。
帆足さん:テストをするための端末が必要で、実機を購入したり管理したりすることに時間がかかっていました。iPhone、Android、iPadなど機種が次々と新しくなるので、新たに実機を購入しなければなりませんでした。その点、Autifyはクロスブラウザテスト機能で実機でのテスト実行もできるのでかなり便利になったと思います。
河合さん:実機でテストする際に、端末はiPhone、Android、タブレットを1台ずつ用意して、最新のOSにアップデートしてからテストすることにしたものの、すべてのお客さまが最新のOSに更新しているわけではないので、最新のバージョンでテストするべきかどうかが議論になりました。
最新のバージョンで不具合が多く発生した際には「更新しない方がいい」という声があがり、「巻き戻しのパッチをあてる」というケースも多々あります。複数バージョンの端末を用意してテストすることにしたとしても、端末の管理をする際に間違ってバージョンアップしたら元に戻せないといった課題もあります。Autifyでは複数の端末、複数のバージョンを利用可能ですので、そのような課題も解決されたと思います。
ー 過去に、他社製品のご利用経験もあるかと思いますが、そのような他社製品と比較し、Autifyの強みはどのような点でしょうか?
河合さん:以前はSeleniumなどを使ってテスト自動化をしていましたが、メンテナンス性に課題があったためAutifyを導入しました。Seleniumはプログラミングが必要なところにハードルがあり、「1回目はテストが動いたのに、2回目以降にネットワークなどの影響で画面表示が遅くなるとテストが失敗してしまう」といったことが何度かありました。その点、Autifyだとほぼ失敗がなく、 無駄なやり直しをする必要がありません。
利用してみて感じたAutifyの1番の利点は「ユーザー目線の使いやすさ」だと思います。Autifyを使ったテスト自動化は、オフショア外部委託先に協力いただきながら進めてきたのですが、委託先の方からも「すごく使いやすい!」と評判でした。彼らが特に絶賛していたのが、サポート対応の迅速さです。Autifyのサポートにチャットで問い合わせたら、すぐに返してくれると喜んでいました。いままで他社サービスを利用した際には2〜3日ほど待たされてしまうことが多かったのですが、対応の早さに「とても助かった」と話していました。
松井さん:同意です。初めは他のテスト自動化ツールを推進してきたのですが、操作してみるとうまくいかないケースが出てきて、結局「手でやろう」という流れになってしまったり、シナリオを作るにもまず勉強しなければならなかったりと、困っていました。そこにAutifyがフィットしてくれました。
大塚さん:私が担当するアプリケーションの保守では、ブラウザのバージョンアップやセキュリティパッチに伴う動作確認を以前は手動で実施していました。そこで松井からAutifyを紹介され、30分くらい使い方を教わりました。その後、すぐに使えるようになり本当に使いやすさを実感しました。シナリオ作成に関しても記録するだけでテストが作成でき、作成した後も間違えたところを少し操作したら直すことができます。
私が所属しているアプリケーションを保守しているチームでは約25システムにAutifyを活用しています。メンバーにAutifyを使用してもらっているのですが、不明点があっても、メンバー自身で課題を解決できるのです。
ー ありがとうございます。導入の検討にあたっては、社内でどのように承認を進めていったのでしょうか?
松井さん:実際に見せることが1番だと思っていたので、役員の執務室に行ってデモンストレーションをしたところ好感触でした。IT本部の全体会議などでもデモンストレーションをし、認知度を高める努力をしました。ツールの選定にも比較検討に時間がかかってしまうようなら、まず使ってみようとコメントをもらったので、承認はスムーズでした。
ー 具体的に、Autifyはどのような用途でご活用されていますか?
松井さん:現状はリグレッションテストとマルチブラウザテスト、OS/ブラウザバージョンアップ時の影響有無の確認の自動化をAutifyで優先的に進めています。今後は監視目的でのAutifyの活用も促進したいと考えています。
ー 最近では、インシデント管理系の他社製品と連携してAutifyを利用いただくユースケースも多く伺うようになりましたので、ぜひその点でもサポートをさせていただければと思います。
今後取り組まれたい内容として監視目的での活用を挙げていただきましたが、これまで取り組まれたテスト自動化で得られた成果があれば教えてください。
松井さん:手動実施しているリグレッションテストとマルチブラウザテストを何%自動化できるかをKPIに掲げています。Web請求手続きシステムはリグレッションテストとマルチブラウザテストの100%自動化を目標に掲げ、達成しました。さらに、Web申込完結システムのリグレッションテストも、100%自動化を目指しており、こちらも前期中に達成しました。具体的には、手動テストにかかる時間や、実機の管理にかかっていた工数が削減できています。
帆足さん:Autifyを導入したことで、現場のリグレッションテストへの意識とテストの頻度が高まり、チームでリグレッションテストを実施する文化が根付いてきたと感じます。
松井さん:Autifyを使う社員に、Autify認定プログラムの受講を必須にしています。弊社のテクノロジースタックにもAutifyを組み込んでいるので、弊社で受講している人は多いと思います。今あるコンテンツは初級編だと思うので、中級・上級が出るといいなと期待しています。
河合さん:リグレッションテストのテストケースは転用できますが、 テスト担当者のスキルや知識量によってテスト結果にばらつきがあります。確認箇所の漏れる、エビデンスがうまくとれていないなど、やり直しのコストがかかることが多々あると思います。
その点、Autifyを使えば、リグレッションテストが数分で簡単に作れてしまうので、テストシナリオを作成するにあたってのハードルが低いですし、 1回作ってしまえば実行結果にばらつきが少ないです。前回分と今回分のエビデンスを比較して一致すれば問題ないことを確認できるため、毎度細かく確認する必要がないところが助かっています。
大塚さん:私のチームではこれから運用を始めようとしている段階なのでまだ成果は見えていないのですが、「手動でテストしているところが自動化できるね!」と内部で期待が高まっていて、いい影響だと感じます。
ー 最後に、ソフトウェアの品質の観点で今後取り組んでいきたいことがあれば教えてください。
松井さん:人によってテストケースを10ケース作る人もいれば、20ケース作る人もいるので、テスト設計のブレをなくしたいです。根拠あるテスト設計をするための雛型を作って、根拠が明確なテストケースが作れるようなチームになっていきたいと思っています。
テストの設計をいかに的確に、作り過ぎずに構築できるかは、まだまだ改善の余地があると思っています。テストインプットドキュメントから、テストケースを導くところの精度向上が課題です。
帆足さん:松井と同じくテスト設計のブレをなくして、品質の底上げをしていきたいです。そして要件定義や、設計など他の業務に時間を割いていきたいです。
河合さん:システムを拡張していくとテストケース数が徐々に増加するので、でき上がったテストのメンテナンスをこまめにすることで品質を上げていきたいです。今まではシステム開発に注力してきたので、今後はメンテナンスも効率よくやっていきたいですね。
大塚さん:アプリケーションを保守する上で、1人が担当するシステムが多いので、できるだけ定例作業は自動化したいです。第1ステップとして、バージョンアップによる無影響確認は自動化できました。これからは、保守として本来やるべきところに時間を割いていきたいです。
ー ありがとうございました!