複雑な人工知能(AI)アプリケーションを開発するときに、仕事を円滑に進め、軌道から外れないようにするためにはどうすればいいだろうか。その答えは、AIを使うことだ。
提供:Andriy Onufriyenko/Getty Images
今のソフトウェア開発者は積極的にAIツールを使っており、同時にAIシステムを構築する立場になることも多い。Stack Overflowが数カ月前に開発者9万人を対象として実施した調査では、回答者の70%が開発プロセスでAIツールをすでに使用しているか、今後使用する予定であることが明らかになった。
また開発者の多くはAIアプリケーションの開発に携わっている。IBMがITプロフェッショナル8584人を対象として実施した調査では、企業の42%がAIアプリケーションを積極的に導入しており、さらに40%が試験的に導入または実験中であると回答していた。
つまりAIは、AIアプリケーションを構築するための重要なツールになりつつあるということだ。生成AI、「GitHub Copilot」、「AgentGPT」、「Azure Machine Learning Studio」などのツールは、コード生成からテストに至るまで、開発者がやっている仕事の多くの面をカバーしている。
ではこれらのツールは、ソフトウェアライフサイクルのワークフローやコラボレーション、管理にどう使われているのだろうか。実のところAIは、人々の距離を縮め、同調させ、自動化によって生産性を高める手段として広がっている。またこのテクノロジーは、開発者、運用者、チーム、経営陣、ビジネスユーザーに進捗状況を理解する手段を提供する。
別の言い方をすれば、AIを作るためにコラボレーションが必要になっており、コラボレーションのためにAIを使っているわけだ。
Deloitte AI Instituteのグローバル責任者を務めるBeena Ammanath氏によれば、AIはさまざまな形でコラボレーションを支えている。例えばDevOpsの観点では、AIが「タスクの自動化や、リアルタイムでの問題検知の実現、共通の指標の利用促進によって、DevOpsのプロセスにおける開発者と運用チームの連携を後押ししている」という。
Ammanath氏は、AIの利用が拡大すれば、DevOpやアジャイルの手法に変化が起き、さらに強化されると述べた。同氏は、「AIはタスクを自動化し、データに基づいた意思決定を促進し、開発チームと運用チームの連携を改善する」と説明している。