Amazon Web Services ブログ

AWS App Studio を使用して、自然言語でエンタープライズグレードのアプリケーションを構築 (プレビュー)

組織は、請求処理、在庫追跡、プロジェクト承認などの分野において、ビジネス上の問題解決に苦労することがよくあります。カスタムビジネスアプリケーションはこれらの問題を解決し、組織をより効果的に機能させるソリューションを提供できますが、構築と保守には専門の開発チームが必要とされてきました。しかし、多くの場合、開発能力が不足していたり費用がかかりすぎたりするため、企業は非効率的なツールやプロセスを使用し続けていました。

7月10日、AWS App Studio のパブリックプレビューについてお知らせします。App Studio は生成人工知能 (AI) を活用したサービスです。ソフトウェア開発のスキルがなくても、自然言語を使用してエンタープライズグレードのアプリケーションを数分で作成できます。

ここでは App Studio でできることを簡単に紹介します。 App Studio にサインインした後、CREATE A NEW APP から Generate an app with AI を選択します。その後、プロジェクト承認アプリが必要だと説明すると、App Studioがユーザーインターフェイス、データモデル、ビジネスロジックを備えたアプリを生成してくれます。アプリ生成プロセス全体が数分で完了します。

注:上記のアニメーションは、デモンストレーション用に早送りをしています。またデモの中で入力しているプロンプトは以下の通りです。皆さんもぜひお試しください。
Create a project approvals app for my team to submit projects for approval through a form. The form will accept detailed information and allow users to upload related files.

この記事を書いているうちに、App Studio がさまざまな技術者の役に立つことがわかりました。App Studio を使用すると、IT プロジェクトマネージャー、データエンジニア、エンタープライズアーキテクトは、安全なビジネスアプリケーションを数日ではなく数分で作成および管理できます。App Studio は組織によるエンドツーエンドのカスタムアプリケーションの構築に役立ちます。App Studio には主に次の 2 つのユーザーロールがあります。

  • Builder – このグループのメンバーはアプリケーションを作成、構築、共有できます。アプリケーション構築の過程に興味がある方は、後述する “Builder として AWS App Studio を利用する : アプリケーションの作成” をご覧ください。
  • Admin – このグループのメンバーはグループとロールの管理、コネクタの作成と編集、組織内で作成された他のアプリの可視性を維持できます。これらの権限に加えて、Admin は独自のアプリケーションを作成できます。App Studio の有効化と設定方法や管理者として可能な操作については、後述する “AWS App Studio の利用を開始する” をご覧ください。

Builder として AWS App Studio を利用する : アプリケーションの作成
Builder は App Studio の生成 AI を搭載したローコード構築環境を使用し、安全なアプリケーションを作成できます。まず「Build an application to review and process invoices.」(請求書を確認して処理するアプリケーションを構築する)など、必要なアプリケーションを自然言語で記述します。次に App Studio がデータモデル、ビジネスロジック、複数の画面からなる UI を含むアプリケーションを生成します。

ここから楽しい時間の始まりです。App Studio でアプリを構築する時がやってきました。 Builder hub ページで、Create app を選択します。

アプリケーションの作成方法には 2 つの選択肢があります。 AI を使ったアプリケーションの生成 (Generate an app with AI) または、一からアプリケーションを作成する (Start from scratch) かです。ここでは AI を使ったアプリケーションの生成 (Generate an app with AI) を選択します。

次のページでテキストボックスにアプリケーションへの要求を入力するだけで、アプリケーションの作成を開始できます。また、右側のパネルにあるサンプルプロンプトも選択可能です。

その後、App Studio がアプリの要件を準備してくれます。プロンプトを絞り込み、更新された要件を確認することで、アプリケーションの計画を改善できます。満足のいく結果が得られたら、Generate app を選択すると、App Studio がアプリケーションを生成します。

App Studio のアプリケーション作成は私にとって良い経験でした。App Studio に搭載された生成 AI 機能により、わずか数分でアプリケーションが生成されました。他のツールを使用すると、同じ結果を得るのに何時間も、あるいは何日もかかっていたでしょう。

数分後、アプリの準備が完了します。また、App Studio には、さまざまな機能を操作して理解するための簡単なチュートリアルが用意されていることもわかりました。

App Studio には主に 3 つの領域があります。Pages、Automations、Data です。最初にデータモデルを定義することからアプリケーション作成に着手したいので、Data セクションに移動しましょう。

Data セクションでは DynamoDB によって提供されるマネージドデータストアまたは、利用可能なデータコネクタを使用してアプリケーションデータをモデル化できます。このアプリケーションは AI が生成したため、すべてのデータエンティティが自動的に定義されています。手動で行う場合、アプリケーションのさまざまなデータテーブルとフィールドタイプを表すエンティティを作成する必要があります。

データエンティティに満足したら、ビジュアルページを作成します。ここでは、ユーザー向けの UI を作成できます。テーブル、フォーム、ボタンなどのコンポーネントを追加および配置して、エンドユーザーに合わせたエクスペリエンスを作成できます。

アプリの構築中に Preview を選択すると、ライブプレビューが表示されます。これはアプリケーションのレイアウトと機能をテストするのに役立ちます。

しかし、この 3 つの領域でのハイライトは Automations です。Automations はルール、ワークフローに加え、アプリケーションのビジネスロジックを拡張するアクションを定義できます。このアプリケーションは App Studio の生成 AI アシスタントで構築したため、処理に必要な複数の Automations が自動的に作成され、アプリケーションに配置されました。

たとえば、新しいプロジェクトが申請されるたびに、プロジェクトを作成して通知メールを送信するアクションが呼び出されます。

API の呼び出し、AWS Lambda、その他の AWS サービスの呼び出しによってビジネスロジックを拡張できます。たとえば、プロジェクトを作成するだけでなく、プロジェクトをフラットファイル形式で S3 バケットにアーカイブしたいとの要求です。そのためにはいくつかの処理を行う必要がありますが、既存の Lambda 関数を利用可能です。Lambda 関数を利用する場合の事前準備は Connect to AWS Lambda をご覧ください。

Connector 作成などの Lambda 関数を利用する準備が完了した後、一つ前のスクリーンショット右側の Actions タブの API Actions から Invoke Lambda を選択し、フローの中に配置します。次に Properties タブで Connector、Function name、そして既存の Lambda 関数に渡す Function event payload を設定します。

最後にすべての UI ページ、データエンティティ、Automations に満足したら、Publish を選択してアプリケーションを公開できます。アプリケーションの公開先はテスト環境(Testing)本番環境(Production)が存在します。テスト環境は本番環境にアプリケーションを公開する前のテストに役立ちます。

ここまでは Builder の視点から見たアプリケーション構築体験を説明しましたが、App Studio の設定および管理は Builder とともに Admin にとっても重要な責任です。App Studio を使い始める方法は次のとおりです。

AWS App Studio の利用を開始する
AWS App Studio は AWS IAM Identity Center と統合されており、既存のシングルサインオン (SSO) や Lightweight Directory Access Protocol (LDAP) との統合を柔軟に行えるため、アクセス保護が容易です。また App Studio がアプリケーションのデプロイと運用を管理するため、アプリケーションの運用にかかる時間と負担を省くことができます。それにより、アプリケーションに機能を追加したり、ユーザーのニーズに合わせてカスタマイズしたりすることに、より多くの時間を費やすことができます。

App Studio を使用してアプリケーションを作成する前に、サービスを有効にする必要があります。管理者が App Studio インスタンスを設定する方法は次のとおりです。

まず、App Studio 管理コンソールに移動して Get started を選択します。

前述のとおり、App Studio は IAM Identity Center と統合されており、IAM Identity Center での既存の組織インスタンスの有無を自動的に検出します。IAM Identity Center の組織インスタンスとアカウントインスタンスの違いについては Manage organization and account instances of IAM Identity Center をご覧ください。

本日ご紹介する既存の組織インスタンスが存在しないケースでは、App Studio が IAM Identity Center でアカウントインスタンスを作成する手順をガイドしてくれます。ここでは、Create an account instance for me を選択します。

次のセクション Create users and groups and add them to App Studio では Admin グループと Builder グループの両方を定義する必要があります。このセクションでは、自分自身を管理者として Admin グループに追加し、後で Builder グループにユーザーを追加します。

オンボーディングプロセスの最後は Acknowledgment の確認です。記載内容を確認してからチェックボックスをオンにし、Set up を選択します。

オンボーディングプロセスが完了すると Account ページで App Studio のステータスが Active になり、利用可能になります。この時点で一意の App Studio インスタンス URL が発行され、アクセスが可能になります。

このオンボーディングシナリオでは、IAM Identity Center に既存の組織インスタンスが存在しないケースご紹介しています。既存の IAM Identity Center インスタンスを使用する方法については Creating and setting up an App Studio instance for the first time をご覧ください。

App Studio が IAM Identity Center のアカウントインスタンスを作成したため、App Studio へのサインイン手順が記載された E メールが届きました。リンクを選択し、アカウントのパスワードを作成し、多要素認証(MFA)を定義してアカウントのセキュリティ体制を強化する必要があります。

これで、App Studio にサインインできるようになります。

ユーザーの追加 (オプション)
App Studio は AWS IAM Identity Center を使用してユーザーとグループを管理します。つまり App Studio インスタンスに追加のユーザーを招待する場合、IAM Identity Center で招待する必要があるということです。

たとえば、これがユーザーのリストです。 Add user を選択すると、さらにユーザーを追加できます。ユーザーの追加が完了すると、アカウントを有効にする手順が記載されたメールがユーザーに届きます。

追加のグループを作成する必要がある場合は Groups ページで Create group を選択します。次のスクリーンショットは IAM Identity Center のアカウントインスタンス用に定義したグループを示しています。

管理者として AWS App Studio を使用する
App Studio に切り替えて、管理者としてサインインします。ここには2つの主要なセクションがあります。Admin hubBuilder hub です。

管理者として Roles セクションで既存のユーザーグループをロールに関連付けることで、ユーザーに App Studio へのアクセス権を付与できます。

IAM Identity Center で作成したグループをマッピングするには、Add group を選択し、Group identifierRole を選択します。設定できるロールは、Admin、Builder、App User の3つです。各ロールの違いについては Managing access and roles in App Studio をご覧ください。

管理者としてコネクタを使用して App Studio にさまざまなデータソースを組み込むことができます。App Studio には Amazon AuroraAmazon DynamoDBAmazon Simple Storage Service (Amazon S3) などの AWS サービスと統合するための組み込みコネクタが用意されています。また、Salesforce 用の組み込みコネクタやサードパーティのサービスと統合するための汎用 API および OpenAPI コネクタも備えています。

今回は Generate an app with AI を選択してアプリケーションを作成したため、App Studio が自動的に DynamoDB コネクタを作成してくれました。また Create connector を選択して追加のコネクタを作成することもできます。

このページでは AWS サービスへの他のコネクタを作成できます。他の AWS サービスが必要な場合は Other AWS services を選択します。コネクタの IAM ロールを定義する方法は Connect App Studio to other services with connectors をご覧ください。

プレビューにご参加ください
AWS App Studio は現在プレビューとして米国西部(オレゴン)リージョンにて利用可能です。なお App Studio で作成するアプリケーションは他の AWS リージョンのデータにも接続できます。

AWS App Studio を使用して、安全かつスケーラブルでパフォーマンスの高いカスタムビジネスアプリケーションを構築し、ミッションクリティカルなタスクを最新化および合理化しましょう。すべての特徴や機能の詳細については、AWS App Studio ドキュメント ページをご覧ください。また AWS Developers Slack ワークスペースの #aws-app-studio チャンネルで会話にご参加ください。

Happy building,

– Donnie

原文はこちらです。