ITの人材不足が叫ばれる中、レガシーシステムの運用保守が可能な人材が少なくなっていくという、経済産業省のレポートによって指摘された「2025年の崖」問題も本格化しています。この状況を打破するため、大企業では開発の内製化、ノウハウの蓄積が進んでいますが、今回はオーティファイ株式会社の末村拓也氏に、同社が実施したソフトウェアテスト領域における内製化の実態に関する調査についてお話を伺いました。 ■オーティファイ株式会社 代表取締役: 近澤 良 設立: 2016年9月

■末村 拓也 Webエンジニア、QAエンジニアなどを経て、2019年にAutifyに入社。シニアテクニカルサポートエンジニアやQAマネージャーを務める傍ら、カンファレンスでの登壇や記事執筆など精力的に外部発信を行った。現在は同社の Quality Evangelist として、品質に投資することの重要性を世の中に広める役割を担う。ソフトウェアテストのシンポジウム JaSST Online および Tokyo Test Fest の実行委員を務める。「テスト自動化実践ガイド」(2024) 著者。
レガシーシステムが引き起こす「2025年の崖」の実態とは?

「2025年の崖」は2018年に経済産業省が発表した「DXレポート」にて指摘されました。さまざまな企業と相対するオーティファイ社から見て、どの程度の企業が課題感を持っていると感じられていますか?(2025年1月現在)

ほとんどの企業がレガシーシステムに関する課題感を持っていらっしゃると思います。年々多くの企業からご相談をいただきますし、DX推進ツールのサービスが弊社以外にも増え、市場も拡大しています。ただ基幹システムの刷新によって大規模な不具合が発生するというニュースもあり、DX推進は簡単にはいかないというのが現状です。

「2025年の崖」の要因は人手不足が大きいのでしょうか。

人手不足というよりも、レガシーシステムの仕様や過去の開発経緯を把握している人がどんどん減っているということが根本的な原因だと思います。


例えば、過去のシステムではCOBOLやRPGといった言語がよく使われていましたが、今は主流ではありません。そういった言語に精通している人材が退職していく一方で、大学でレガシーシステムについて詳しく学ぶことはほとんどないのが実情です。かといって、レガシーシステムを使用している企業が新入社員にレガシーシステムのメンテナンス技術を伝えようとしても、多くの若者はそういった業務に魅力を感じにくい。その結果、レガシーシステムを触れる人材が不足していっているのだと思います。

なるほど。その結果、システム自体がブラックボックス化していくのですね。

その通りです。システムを作ったベンダーは仕様書と共に納品していると思いますが、その後の長い年月のなかで、仕様書を紛失してしまうケースもあります。それに加えてシステムで対応できない部分を現場の属人的な工夫でまかなっていると、運用を含めた全体像を誰も把握できていない事態に陥ってしまいます。

これらの課題に各社はどのように取り組んでいるのでしょうか。

そうですね。各社の情報システム部を中心にソフトウェアの移行を指揮するケースが増えています。また、ソフトウェアベンダーがレガシーシステムからSalesforceへの移行対応を進めるケースもありますね。

ソフトウェアの移行を考えている企業はどんなことを重視していますか。

不具合を起こさず、なるべく現行のシステム運用を変えずに移行したいという要望が強いです。新しいシステムの仕様変更は、現場の業務に支障が出る可能性も考えられるため、適切な運用手順を示すテストケースの設計が重要になります。また先ほどお話しした通り、仕様書が十分に整理されていないこともあるので、まず現状のシステムの動きを紐(ひも)解き、新しいシステムでも現行と違わずに操作できるのか、しっかりとテストすることが重要です。

システムが変わったことで現場に混乱が発生するケースというのは多そうですね。

ただ最近ですと、システムの動きに運用を合わせる「Fit to Standard」という考え方も広まってきています。システムはカスタマイズすればするほどバグ発生の可能性が大きくなりますし、システム本来の機能を十分に活用するためには、現場業務の運用を調整する方が良いという考え方です。これは企業によって考え方が異なるところです。
「シフトレフト」によって工数削減と品質向上を実現

レガシーシステムが抱えているリスクについて、人材以外の「システム」側でも何か問題があれば教えてください。

現代はAPIによって複数のシステムと連携することによって付加価値を高めていく時代です。こうした世の中の流れについていけないことは、レガシーシステムを運用するビジネス上のリスクだと思います。私もレガシーシステムを運用している企業で働いていたことがありますが、そのシステムはインターネットから情報を取得することができませんでした。

レガシーシステムを持つ多くの企業が危機感を持っているとのことですが、品質保証の最先端を知るオーティファイ社から見て、品質保証においてトレンドとなっているキーワードはありますか。

「シフトレフト(Shift Left)」という言葉があります。開発の後工程に品質保証のQAエンジニアやテスターが一気にテストを行うのではなく、開発中に自動テストを使い、機能が動くかどうかをチェックしながら開発を進めるという動きです。そうすることで、開発時点でバグを減らし、後工程ではより品質を高めるためにテストを行うことができます。


それは工数削減にも繋がりますね。

そうですね。従来の進め方では、後工程のテストで見つかったバグは前工程に差し戻される、いわば「手戻り」が起こっていましたが、開発中の自動テストでバグを見つけることができれば手戻りなく進めることができます。そうすると、全体の流れが良くなりQAチームの負担も減る。その結果、今まで以上にUI/UXの向上に注力できるようになります。
大企業の9割がソフトウェアテストを内製化

オーティファイ社が2024年に「ソフトウェアテストの内製化に関する実態調査」を実施した背景を教えてください。

開発を自社内に内製化し、ノウハウの蓄積を行うという動きが活発となっています。中でもソフトウェアテスト領域は開発の1/3以上を占めている※とも言われているため、ソフトウェアテスト領域に特化した調査を考えました。特に大企業の中で実際にブラックボックス化の課題を含め、内製化の課題感をリアルに把握できればと思い、調査を実施しました。
※IPA「ソフトウェア開発データ白書」より


なぜ、ソフトウェアテスト領域は開発の1/3以上という大きな比重を占めるのでしょうか。

開発ソフトウェアが出来上がってから実施する結合テストや統合テストと呼ばれる作業に工数がかかります。これらのテストでは、アプリケーションやサイト内での操作のさまざまなケースを想定する必要があるため、組み合わせが膨大となり、工数がかかってしまうのです。例えばホテル予約サイトであれば、シングル・セミダブル・ダブルといったお部屋の種類に加え、禁煙・喫煙やバースデープランなどの特別プラン、プランごとに専用のメッセージを送るかなど、いろいろな条件が発生しますよね。その中でバグが発生しやすい組み合わせを考えたり、手動で実行したりするのに多くの時間を要します。

手動でやるとたしかに時間がかかりそうですね。

一方で単純にそれを自動化すると見つけられなくなるバグもあります。手動のヒューマンテスターは、ソフトウェアテストの項目書に書いていない項目についても配慮や感覚で気がつくことができるのに対して、自動化では指定した項目のみしかチェックされないからです。

全てを自動化するだけでは上手くいかないのですね。

ヒューマンテスターにはユーザビリティやデザインの崩れなど、人が見つけるのに適しているものに集中してソフトウェアテストを行って、それ以外の機能が動くかどうかのテストは自動化していくというのがベストプラクティスだと思います。

ヒューマンテスターと自動化、それぞれの適性についてもう少し詳しく教えてください。

「こう入力したらこう表示されるのが正解」など、入力項目と期待する結果がきちんと定められるものは自動テスト向きで、そうでないものは手動テスト向きです。「触ってみた感じ、なんかうまく動かないな」「使いづらい仕様だな」といった感覚的なものはヒューマンテスター向きだと思います。

UI/UXのような「心地よさ」に関わるソフトウェアテストはヒューマンテスターがやる必要があるのですね。調査によれば大企業の9割以上が内製化していると回答していますが、コスト削減の動きが大きいのでしょうか。


そうですね、コスト削減の面も大きいと思いますし、システムのブラックスボックス化を防ぐため、システムの動きを把握するという意味でもシステムの内製化が進んでいるのだと思います。カスタマーサポートやテスターはエンジニア以上にシステムの動きを知っていることがありますが、テスターを外注してしまうと、自分たちのシステムの仕様のことなのに、毎回ベンダーに問い合わせないといけない、という無駄な作業が発生してしまいます。

大企業の9割以上が内製化しているという結果はどのようにとらえていますか。

調査対象者が、従業員数1,000名以上のソフトウェア開発プロジェクト開発ソフトウェアテストの責任者なので、おそらく大企業においてはソフトウェアテストの内製化がかなり多くの企業で進んでいるととらえられます。
ソフトウェア内製化によるメリットと課題

内製化によって実感しているメリットを見てみると、さまざまな回答がありますね。


はい、そのなかでも「開発チームの品質意識が向上した」「開発チームの製品理解が深まった」というのは、ブラックボックス化している現状に対する改善効果だと思います。ソフトウェアテストを内製化することでシステムを理解できるというのは非常に良い点ですし、テストを人任せにしないことで、品質の高いプロダクト・サービスを出そうという意識にもつながると思います。

「臨機応変な対応が可能になった」というのは、どういったことだと思われますか。

バグが発生した際に優先順位を変更して対応するなど、開発チームの温度感や緊急度に合わせて進めやすくなったということだと考えています。

一方で、ソフトウェアテストの内製化により「新たな課題が生じた」と実感している方は、「非常にそう思う」「ややそう思う」を合わせると約7割いらっしゃるんですね。


そうですね。内製化である程度の課題が出るだろうと予測していたので、弊社としては想定内でしたが、数字として出てきたのは非常に良かったと思います。

具体的な課題としては、「社内リソースの負担の増加」が61.2%、「チーム間でのテスト方法の標準化」が47.3%、「一時的に開発やテストスピードが低下」が44.2%となっています。


社内リソースの負担が増加しているのは、今までやってこなかったことをやるようになったので、誰が・どうやってやるのかわからないという課題が大きいのだと思います。ベンダーはさまざまな企業のソフトウェアテストを請け負っているので、その度にノウハウが蓄積して横展開することもできますが、自社で内製化するとレバレッジが効かなくなります。いくつかチームがある中でそれぞれがバラバラにテストしているということも起こりがちだと思います。そうした混乱も相まって、開発やテストスピードが低下したり、混乱を抑えるために品質保証テスト担当者の採用を進めたりということが起こってくるのだと思います。

「一時的に開発やテストスピードが低下」「品質保証/テスト担当者の採用」といった回答にも関連してくるのですね。

日本市場においては、品質保証やテスト担当者の優秀な人材を確保するのは非常に困難です。弊社は英語を公用語としていることで、インドなど海外から優秀な品質保証エンジニアを採用できていますが、日本語を話せる品質保証エンジニアは希少です。

スタートアップ企業が英語公用語を進めているのは、そういった背景もあるのですね。
ノーコードでテストを自動化する「Autify NoCode」

調査では84.1%が、ソフトウェアテスト内製化による課題を、ソフトウェアテストの自動化により「解決できる」と回答していますね。


いわゆる打鍵確認を自動化することで、工数削減が見込めます。また開発・テストスピードにおいても、開発中に自動化テストを実行し、開発者がそのままバグ修正を終えることで、品質保証の工程は楽になりますし、細かい修正であれば品質保証を通さずに本番環境に出すことも可能になります。

オーティファイ社ではどのような自動化ツールを提供されていますか?

Webアプリケーションとモバイルアプリケーションのテストを自動化する「Autify NoCode」というサービスを提供しています。実際の画面で文字入力などを手動で操作する、いわゆる打鍵確認やE2E (エンドツーエンド) テストを自動化するものです。ノーコードですので、テスト自動化の特殊なスキルセットを持っていないエンジニアでもテストを自動化できます。

ノーコードだと採用困難な人材の獲得に苦戦する必要もなく、すぐに内製化に着手できますね。

そうですね、ただ、テスト自動化は簡単になったけど、テスト設計はどうしたら分からないという企業も多いんです。そうした方々のために、最近サービスを開始したベータ版の「Autify Genesis」では、仕様書や要件定義書などのドキュメントを読み込むことでテストケースやテストシナリオを自動生成することができます。


打鍵確認のようなテスト実行の作業だけでなく、テスト設計まで自動化できるのですね。

さらにプロダクトを上手く活用できなかったり、より上流のテスト戦略を助けて欲しいといったニーズも増えていたりするので、当社の品質保証のプロ集団が導入支援やテスト設計をサポートする「Autify Pro Service」も行っています。

近年増えているニーズはありますか?

生成AIの流行もあって「Autify Genesis」に関心を持っていただくことが多いです。一方で、そもそも開発におけるテストを実施していない企業や、「開発をもっと上手く進めるためのノウハウ」を質問される企業様もいらっしゃるので、さまざまなニーズに対応できる「Autify Pro Service」の需要が日々高まっているように感じます。


最後に内製化を考えている企業にメッセージをお願いします。

ソフトウェアテストを内製化したいと考えているが、どうすれば良いのか分からない。あるいは、テスト設計のスキルを持つ人材がいない企業様は、最初の3ヶ月は「Autify Pro Service」で伴走させていただき、自動化テストの設計やシナリオの作成をサポートしながら、できるところから『Autify NoCode』などで内製化を進めていくとスムーズだと思います。ぜひお気軽にご相談ください。
ライター

編集部オススメコンテンツ
アンドエンジニアへの取材依頼、情報提供などはこちらから