AWS、ローコード開発ツール「AWS Step Functions Workflow Studio」リリース。サーバレスアプリをビジュアルプログラミング

AWSは、AWS Lambda関数やAWSのサービスなどをフローチャートのようにアイコンを組み合わせることでプログラミングを行える、ローコードビジュアル開発ツール「AWS Step Functions Workflow Studio」(以下、Workflow Studio)をリリースしました

Workflow StudioはWebブラウザから利用する開発環境です。左側にAWS Lambda関数の呼び出しやAWSのさまざまなサービスがアイコンとして並んでいます。

fig

条件分岐や並行実行など、動作の制御を行えるアイコンも選択可能です。

fig2

これらのアイコンを組み合わせ、設定を行うことで、フローチャートを描くようにビジュアルにプログラミングができます。

fig3

Workflow Studioで開発された内容は、最終的にJSONベースのコード「Amazon States Language」( ASL)として出力されます。

Amazon States Languageは、AWSのサービスの1つである「AWS Step Functions」によって実行されます。

つまりWorkflow Studioとは、AWS Step Functionsで実行可能なASLを、ビジュアルな開発環境で生成できるローコード開発ツールだといえます。

Workflow Stidoはサーバレスアプリケーション向けのローコード開発環境

Workflow Studioで開発の大事な構成要素となるAWS Lambdaは、ユーザーがあらかじめ定義した関数を、イベントに応じて実行できるサーバレスコンピューティング環境です。

そして一般的に、ユーザーがAWS Lambdaでアプリケーションを構築する場合、1つの関数に多数の機能を詰め込んで1本のアプリケーションにするのではなく、さまざまな機能を備えた多数の関数とAWSのサービスを連携させることで、1つのアプリケーションを組み立てます。

そのため、AWS Lambdaによるアプリケーションでは、AWS Lambda関数やサービスを連携させるためのロジックの記述機能を備えつつ、エラーハンドリングやリトライ、ロールバックなどの制御も可能なオーケストレーターのような仕組みの登場が望まれていました。

AWS Step Functionsは、そうしたサーバレスアプリケーションのためのオーケストレーターとして登場したサービスです。ただしAWS Step Functionsのロジックを記述するためにはJSONベースのスクリプティング言語であるASLを、プログラマが覚え、記述しなければなりませんでした。

そこで、このASLを記述する代わりに、ビジュアルなローコード開発ツールとして登場したのが今回のWorkflow Studioというわけです。

プログラマにとって、サーバレスアプリケーションの開発は従来のトラディショナルなサーバアプリケーションの開発と比べてアーキテクチャのレベルから異なる新しい経験です。

そのうえでさらにASLのような、従来のプログラミング言語とは異なるJSONベースの可読性が高いとは言えないコードを記述するのは、サーバレスアプリケーション開発のハードルを大いに高めてしまうものでした。

Workflow Studioの登場は、こうしたASLの記述を不要にし、ロジックをビジュアルに表現することで、サーバレスアプリケーションの難しさのハードルを大いに下げる役割を担っています。その意味で、実はAWSにとって戦略的に重要な新サービスではないかと推察されます。