Microsoftが2023年に行った調査によると、CEOの87%はローコードプラットフォームへのAIと自動化の搭載が増えたことでこのテクノロジーのすべての機能をさらに有効活用できるようになると考えています15。一方、業界のエキスパートは、生成AIの台頭に伴ってローコードプラットフォームの必要性がさらに高まると考えています。たとえば、代表的な独立系市場調査会社であるForresterは、ローコードプラットフォームがアプリケーション生成プラットフォームという新しいプラットフォームカテゴリーのベースになるだろうと予測しています。
「アプリケーション生成プラットフォームは、AI(特に生成AI)をフル活用し、AIの欠点を軽減することで、実用的なプラットフォームエンジニアリングの進化を体現しています。アプリ生成プラットフォームは、ローコード開発とハイコード開発の両方のあらゆる手順にTuringBotsを取り入れることで、アジャイルとDevOpsの原則をすべて組み込みながら、ソフトウェア分析、開発、セキュリティ、テスト、デリバリーの各ステップを統合します」16
—Forrester Research 主席アナリスト John Bratincevic氏、VP兼主席アナリスト Diego Lo Giudice氏
ローコードプラットフォームにはAI機能が多数用意されており、ガバナンス、定義、セキュリティをプロセスに追加することで新しい生成AIの機能をフル活用できるようになっています。現在のところ、生成AIツールで作成できるのはコードのサジェスチョン、コードブロック、小規模なモジュールにとどまっています。そのため、開発者は引き続き生成されたコードを評価して、インターフェイスの調整、境界条件の把握、セキュリティリスクの評価を行う必要があります。ローコードプラットフォームではこの評価が自動的に行われるため、コード生成とコードレビューを合わせた開発者の作業は少なくてすみます。また、ローコードプラットフォームを使用すると、プラットフォーム側で生成AI開発時の難しい作業の大半を人間に代わってあらかじめ処理されるため、生成AIを導入しやすくなります。
では、ローコードプラットフォームがどのようにしてAI生成コードをリスクなく活用できるようにし、ソフトウェア開発ライフサイクルを通じてチームに必要な支援を提供するかを見ていきましょう。
ソフトウェアデリバリープロセス全体に対応する生成AI機能、インフラ、ツールの入手
AIが生成したコードが完全なものだったとしても、動作する検証済みのセキュアなアプリケーションをデリバリーするには不十分です。まず、AI生成コードはブラックボックスであり、コードの由来や中身がわかりません。また、SoR、データベース、連携といったインフラの状況も考慮していません。AI生成コードには、ランドスケープに関する変更や拡張の情報も含まれていません。一定の方向性は示してくれるかもしれませんが、インフラ固有のコンテキストが必要なのです。
「アプリ開発におけるコードの記述は開発プロセスのほんの一部分にすぎません。その後の作業のほうがずっと大変です。現時点では、生成AIだけでソフトウェアライフサイクル全体や継続的開発を管理することはできません」
—Bosch プロダクト・サービスマネージャー Elton Escaleira氏
本番環境と本番稼働後に対応できる生成AIツールを探し始めると、すぐに複数のツールの使用が必要だとわかるでしょう。その中にはプロプライエタリツールも含まれます。これでは、開発者が多くのツールを切り替えながら作業していた過去を繰り返すことになります。
ただ、これを避ける方法はあります。ローコードプラットフォームを使用すると、生成AIを利用してアプリを作成し、ビルド、テスト、デプロイ、保守といった残りのプロセスも管理することができます。また、最新のアプリケーションポートフォリオの実行に必要なコアインフラも備えているため、立ち上げに必要な多額のコストを削減できます。AI生成コードを活用して、既存のシステムやデータベースと連携可能なアプリケーションを開発することもできます。バージョン追跡、依存関係チェック、影響分析もすべてパッケージに含まれています。
「ワンクリックでのデプロイやパフォーマンス監視といったDevOps機能を活用することで、アプリの更新や保守を低コストで行うことができます」
—Total Produce Tony O’Halloran氏
セキュリティやガバナンスに関する指針に沿ったAI生成コードの実装
AIは、ユーザーのコードベースやオープンソースプロジェクトに由来するセキュリティの問題を複製しやすいものです。他の組織が保有するコードライブラリを取り込むことで知的所有権を侵害するおそれもあります。しかし、生成AIがローコードプラットフォームに組み込まれている場合、厳格な指針や中央のIT部門によるバックアップチェックにより、アプリケーションがコンプライアンスに違反する可能性を抑えることができます。包括的なアプローチにより、問題のあるAI生成コードを迅速に特定して修正し、あらかじめセキュリティを確保できるのです。
「2022年から2023年にかけてのAIアシスタントの台頭は、リポジトリへの「誤ったコード」のプッシュに深く関与しています。現在の傾向が2024年まで続いた場合、コードの変更全体の7%以上が2週間以内に取り消されることが見込まれます。この割合は2021年の2倍に相当します17」
ローコードプラットフォームにはセキュリティツールやコンプライアンスツールが組み込まれており、検証が自動的に行われるため、ISOやSOCといった世界標準に準拠したアプリを作成できます。自動セキュリティ評価によって厳格なQAプロトコルへの適応が可能になるとともに、AI機能によってコードの問題の常時確認が可能になります。また、分散型サービス拒否、新たに特定されたコードの脆弱性、モバイル脅威、その他の保護に対する修正が、自動的にアプリに適用されます。
「生成AIとローコードなどのツールを併用することで、開発者はかつてないスピードでアプリケーションを作成し、同じリソースでより多くの成果をあげています。こうしたテクノロジーに組み込まれたガイド機能は、実験的なアプローチを推進し、パブリックAIモデルに付きもののプライバシーリスクやセキュリティリスクを軽減します」
—OutSystems エンジニアリング担当バイスプレジデント Sílvia Rocha
生成AIにより、非開発者が未精査のアプリケーションや、既存のものと重複するアプリケーションを急増させるおそれも高まります。ローコードプラットフォームは、複数の方法でこれに対応します。そのひとつが、バージョン管理、リリース管理、コンポーネントの依存関係管理用のツールです。これにより、非開発者が既存のアプリと類似または競合するアプリを作成できないようにします。また、単一のプラットフォームを提供することで、すべての開発者が同じツールとプロセスを使用するようにします。
「私たちは、必要な機能をスピーディーかつ簡単に構築できる安全なプラットフォームを求めていました。それこそが、ローコード開発の魅力です。」
—Medtronic Karel Nouwen氏
AI生成コードの予測性と一貫性の確保と維持
AIによって生成されるコードは、所有者がはっきりしないブラックボックスのようなものです。なぜコードをそのように記述するのかは、知るよしもありません。ソースとなるのは、ミスの多い人間によって記述、コピー、ペーストされた、既存の不完全なソフトウェアの膨大なリポジトリです。コーディングコパイロットはその好例です。これは開発者のコード生成を支援する生成AIコンパニオンですが、生成したコードは手作業で記述した場合より50%も長くなります。記述不要なコードを生成すると、技術的負債が増加します。
「ソフトウェア開発者は根拠を知りたがるものです。自分でコードを記述した場合はなぜそうしたかがわかりますが、生成されたコードの場合は必ずしもわかるとはかぎりません。根拠は非常に重要です」
—OutSystems Founder and Chairman of the Board、Paulo Rosado
起こりがちな問題はほかにもあります。コパイロットでは、保守の簡素化のために定義された標準に準拠しないアプリケーションが生成されることがあり、既存のコードの再利用や変更を簡単に行えません。そのため、ルールやベストプラクティスに沿ったコードにすることが難しいのです。必要に応じてAI生成コードをデバッグしたりリファクタリングしたりするのも簡単ではありません。
「基本的に人間はブラックボックスを信じにくいものです。これは当然のことです。AIでは、必ずしも先入観のない意思決定やアウトプットを提供できるとは限りません」18
—Lotis Blue Consulting Donncha Carroll氏
AI生成コード機能を搭載したローコードプラットフォームを使用すると、スピードや手軽さといったメリットが得られるだけでなく、コードベースの保守性や可視性も維持できます。ローコードプラットフォームには、AI生成コードの組み込み方法を制御するための構造化された環境があるため、コードの把握、デバッグ、進化を必要に応じて容易に行うことができます。だからこそ、リスクや課題を軽減しながら生成AIを活用できるのです。
ローコードプラットフォームには、テストツール、CI/CD、監視、ユーザーフィードバック管理の機能が組み込まれています。視覚的なデバッグ機能を使用して、実行をブレークポイントで一時停止し、ロジックをステップごとに実行してエラーを特定できます。また、品質分析、自動化、AIが、健全なアプリとアーキテクチャを実現します。リアルタイムの監視、テスト、フィードバックにより、円滑なパフォーマンスとエクスペリエンスが維持されます。ローコードプラットフォームでは、ロールバックや、インフラとアプリケーションの監視も簡単に行うことができます。テクノロジーやユーザーの好みの変化に応じてコードを調整することも可能です。
「新しいプロジェクトを立ち上げて4か月でリリースしたいと考えているような企業で、大幅な人員削減が起こることがあります。これは、かなり厳しいものです。しかし、生成AIをうまく活用することで、比較的少ない人数でも対応できます」
—OutSystems Founder and Chairman of the Board, Paulo Rosado
ローコードの未来がかつてないほど明るいこと、そしてローコードと生成AIの統合が自然な進化の過程であることを示す実例は、枚挙にいとまがありません。
しかし、どの手法を使用するにしても、生成AIアプリの開発を始める際には未来を見据えた戦略が必要です。
15 Richard Riley 「Low-code signals 2023」 Microsoft、4月13日
16 John BratincevicおよびDiego Lo Giudice 「The Rise Of Application Generation Platforms」 Forresterブログ、2024年5月7日
17 「Coding on Copilot: 2023 Data Shows Downward Pressure on Code Quality」 GitClear、2024年1月26日
18 George Lawton 「AI transparency: What is it and why do we need it?」 TechTarget、2024年1月25日