
人工知能(AI)と機械学習は、企業の事業運営のあり方を変革しています。企業は膨大な量のデータを蓄積し、AIと機械学習モデルを用いてビジネスプロセスの自動化と改善に活用しています。これにより、企業がデータに基づく新たな洞察を獲得し、ビジネスパフォーマンスを向上させることを可能にする、次世代のデータ対応アプリケーションの開発が促進されます。
AIとMLが企業に与える影響は、ソフトウェアエンジニアリング組織にも及んでいます。ビジネスを支えるアプリケーションにAIとMLモデルが組み込まれるケースが増えるためです。そのため、ソフトウェアエンジニアリングチームは、これらのテクノロジーがアプリケーションの市場投入にどのような影響を与えるかを理解する必要があります。
参照: 最高データ責任者によると、ビジネスリーダーの AI/ML アプリケーションに対する期待は高すぎる (TechRepublic)
AI および ML ツールは、設計からコード作成までのプラットフォームやツールから、コードを自動的に生成する ML モデル、アプリケーション テストの要素を自動化するモデルに至るまで、アプリケーションの構築方法を根本的に変えるでしょう。
多くのソフトウェアエンジニアは、アプリケーション開発におけるMLモデルの活用はまだ始まったばかりだと考えているかもしれませんが、実際はそうではありません。ガートナーの最近の調査では、ソフトウェアエンジニアリング組織の約40%が、アプリケーション開発において既にMLモデルを中程度から広範囲に活用していると回答しています。しかし、ほとんどの開発チームはMLについて十分な理解を持っていません。
ここでは、ML がソフトウェア エンジニアリングに及ぼす 3 つの影響と、開発者がこの今後の進化について知っておく必要があることについて説明します。
ジャンプ先:
- ML拡張アプリケーションコーディング
- ML拡張アプリケーション設計
- ML拡張アプリケーションテスト
ML拡張アプリケーションコーディング
プロの開発者向けの新世代コーディングアシスタントは、より長く斬新な補完機能だけでなく、コメントを使ってコードを生成する機能も備えています。Copilot、CodeWhisperer、TabnineなどのML対応コード作成ツールは、開発者の統合開発環境ツールにプラグインし、コメントやコード行に応じてアプリケーションコードを自動生成します。これらのコード作成モデルは、ChatGPTアプリケーションの基盤となっているOpenAIのGPT-3.5など、ハイパースケーラーが開発してきた大規模言語モデルから派生したものです。例えば、CodexはGPT-3から派生していますが、ソフトウェアコードの作成に最適化されています。ガートナーは、2027年までに開発者の50%がML対応コーディングツールを使用すると予測しており、これは現在の5%未満から増加しています。
ソフトウェアエンジニアリングのリーダーにとって、これらのモデルによってアプリケーションコードを書くエンジニアの必要性がなくなるのか、あるいは減るのかという疑問が必然的に生じます。コード生成を目的とした現在の機械学習モデルは開発者の生産性を向上させるものの、短期から中期的には開発者に取って代わるものではありません。しかし、将来的にはさらなる変化が起こる可能性があります。
ML拡張アプリケーション設計
AIとMLがソフトウェアエンジニアリングに与える影響は、アプリケーションへのモデルの組み込みだけにとどまりません。デザイナーがデジタル製品に魅力的なユーザーエクスペリエンスを提供するために使用するツールにも及んでいます。UXデザイナーからソフトウェアエンジニアへのデザイン資産と仕様の受け渡しワークフローは、ますます自動化が進んでいます。デザインシステムの導入拡大も、この受け渡しを円滑に進める上で役立っています。これらの機能は今後も急速に向上し、アプリケーションの導入期間の短縮につながると予想されます。
これまで、デザイナーと開発者の視点の違いが、魅力的なUXを備えたアプリケーションの開発において課題となってきました。企業におけるデジタル製品デザインの将来を見据えると、デジタル製品チームのリーダーはデザインと開発の両方のスキルを持つようになるでしょう。「デザインストラテジスト」という役割が生まれ、デザイナーと開発者の融合チームを率いて、より優れたデジタル製品をより迅速に提供し、アプリケーションの品質を向上させることが期待されます。
ML拡張アプリケーションテスト
AIとMLは、計画と優先順位付け、作成と保守、データ生成、ビジュアルテスト、不具合分析といった重要な領域において、アプリケーションテストプロセスにも影響を与える可能性があります。ソフトウェアエンジニアリングのリーダーは、経験豊富なテスター、特にプログラムによるテスト作成に必要なスキルを持つ人材の不足に直面しています。AIを活用したソフトウェアテストツールは、アルゴリズム的アプローチを用いてテスターの生産性を向上させます。これにより、テスト自動化ツールの有効性が飛躍的に向上し、ソフトウェアエンジニアリングチームはソフトウェア品質の向上とテストサイクル時間の短縮を実現できます。
AIを活用したソフトウェアテスト市場には複数の新規ベンダーが参入し、昨年はベンダー買収が盛んに行われました。ガートナーは、2027年までに企業の80%がAIを活用したテストツールをソフトウェアエンジニアリングツールチェーンに統合すると予測しており、これは2022年の10%から大幅に増加しています。アプリケーションの複雑化が進むにつれ、AIを活用したテストは、チームが高品質なアプリケーションを迅速に提供するための重要な役割を果たすようになるでしょう。
AIとMLがソフトウェアエンジニアリングに与える影響は大きく、データサイエンスとソフトウェアエンジニアリングの連携によるプラスの効果を過小評価すべきではありません。企業が保有する豊富なデータは、予測を生成するモデル、スコアリングモデル、次善策の推奨、その他のビジネス強化ツールを通じて、ビジネスアプリケーションに大きな価値を付加することができます。こうした連携により、繰り返し利用可能なベストプラクティスを実現し、企業のパフォーマンスを向上させ、これらのテクノロジーへの投資に対する高いROI(投資収益率)の実現に貢献します。

ヴァン・ベイカー氏は、ガートナー社のバイスプレジデントアナリストです。クラウドAI開発サービスと、自然言語処理、ビジョン、自動機械学習サービスを含む生成AIを担当しています。ガートナー社のアナリストは、2023年5月22日から24日までネバダ州ラスベガスで開催される「ガートナー アプリケーション・イノベーション&ビジネス・ソリューションズ・サミット」において、最新のアプリケーション戦略に関する詳細な知見を提供します。