ローコード開発ツール「Power Apps」とは?どんなアプリケーションが作れるかを解説

普段のお仕事に役立つ普遍的なプログラミングTIPSや、業界で注目度が高い最新情報をお届けする「編集部ピックアップ」。
今回のテーマは、アプリケーション開発分野で急速に利用が広がっているローコードツール。その中でも特に人気の「Power Apps」をご紹介します。

はじめに

近年アプリケーション開発で急速に広がっているローコード・ノーコード開発。昨年12月のガートナージャパンのプレスリリースによると「2025年までに、企業が開発する新規アプリケーションの70%には、ローコードまたはノーコード・テクノロジが使用される」という予測もあり、市民開発者のみならず、従来からスクラッチ開発を行ってきたプロ開発者にとっても、興味深い分野といえるのではないでしょうか?

今回は、数多くのローコードプラットフォームの中でも、米ガートナー社が調査する「2023 Gartner® Magic Quadrant™ for Enterprise Low-Code Application Platforms」の中でリーダーに選ばれている、「Power Apps」についてご紹介したいと思います。

Power Appsとは

Power Apps」はマイクロソフトが提供するローコード開発プラットフォーム「Power Platform」の一部で、主にアプリケーション画面の作成を担当するサービスです。

一部の機能制限はありますが、個別のライセンスを購入していなくても、Microsoft365のライセンスを保持していれば「Teams」などと同様に利用可能です。日本では多くの企業がMicrosoft365を導入していますので、他のローコードプラットフォームと比べると比較的、製品に触れやすい事が特徴の一つとして挙げられます。また他のMicrosoft製品やサービスとの連携が容易なことも特徴と言えます。

そんな特徴を持つ「Power Apps」ですが、同じ「Power Platform」に含まれる以下のようなサービスを利用することで、より高度なアプリケーションを作成することが可能です。

サービス担当領域
Power Apps主にアプリケーションの画面を作成を行う。簡単なビジネスロジックの作成など。
Power BIデータを元に様々なグラフや表を作成することが可能。データ分析を主としたBIツール。
Power Automateビジネスロジックの作成、定型処理の自動化、ワークフロー、WebApiとの接続、他社サービスと連携など。
Power Pages外部Webサイトの作成。
Power Virtual Agentsチャットボットの作成。

他の「Power Platform」サービスと連携することで、次のようなアプリケーションを作成することができます。従来型のアプリケーションのみならず、社内の問い合わせチャットボットなど、今まではマンパワーでしか行えなかった作業も置き換え可能になってきており、より広い範囲で活用が期待できます。

使用サービス作成できるアプリケーション
Power Apps+Power Automate他システムとの連携や、高度なビジネスロジックをもったアプリケーション。
Power Apps+Power BI高度なデータ分析用のダッシュボードを組込んだアプリケーション。
Power Apps+Power Virtual Agents社内の問い合わせチャットボットアプリケーション。
Power Apps+Power Pages+Power Automateインターネットに公開された顧客問い合わせページからデータを、社内の顧客対応アプリケーションに連携。

Power Appsのはじめ方

「Power Apps」は基本的に有料のためライセンスが必要ですが、アプリの構築やテストを行う為の環境として開発者向けプランが用意されています。この環境では作成したアプリを運用する事はできませんが、有料プランと遜色なくほぼ全機能の開発を行うことができます。

※ 開発者向けプランで、開発したアプリケーションを運用する場合は別途ライセンスが必要となります。

作成可能なアプリケーション

「Power Apps」では、以下のように「キャンバスアプリ」、「モデル駆動型アプリ」と呼ばれる2種類のアプリケーションを作成することができます。

「Power Apps」で作成できるアプリケーション

※ 上記に表示されている「ポータル」は「Power Pages」サービスとなり、開発するには別途ライセンスが必要となります。

キャンバスアプリ

キャンバスアプリ」の開発は、画面上にコンポーネントと呼ばれる画面部品を配置しながら、各コンポーネントに対して動作の記述や、プロパティ設定などを行いアプリケーションを作成します。

キャンバスアプリ作成画面

使用できるコンポーネント

「キャンバスアプリ」の標準コンポーネントは2023年5月現在で以下のコンポーネントが使用可能です。「ボタン」、「テキスト入力」、「テキストラベル」などアプリケーション開発では必須な機能の他に、AIを利用した画像認識コンポーネントの「名刺リーダー」や、スマートフォンのカメラなどを利用した複合現実コンポーネント「MRで図形を表示」なども用意されており、AIやMRの知識が無くとも高度なアプリケーションの作成が可能となっています。

キャンバスアプリのコンポーネント一覧
キャンバスアプリ名刺リーダーとMRで図形表示コンポーネント

モデル駆動型アプリ

モデル駆動型アプリ」は、「Power Platform」内のデータベースである「Dataverse」を使用して作成するアプリケーションです。基本的なアプリケーションの作成方法は「Dataverse」内に作成したテーブルに対して、入力用の「フォーム」、参照用「ビュー」を定義していきます。キャンバスアプリよりも少ない手順でアプリケーションの作成が行えます。

開発画面では以下のようにタブから「ページ」、「ナビゲーション」、「データ」、「自動化」それぞれの開発を進めることができます。

ページ

対象となる「Dataverse」テーブルに対する「フォーム」「ビュー」などを定義する他、「ダッシュボード」や「カスタムページ(キャンバスアプリベースのカスタム画面)」の開発も可能です。

モデル駆動アプリのページ開発種類

ナビゲーション

「モデル駆動型アプリ」の左側に位置するナビゲーション領域の開発を行うことができます。ページなどをグループ化する「グループ」を追加できるほか、「サブエリア」というコンテンツを追加することも可能です。

コンテンツタイプは以下のようになっており、「テーブル」、「ダッシュボード」、「カスタムページ」については「ページ」の開発と同様です。「Webリソース」についてはHTML、JS、CSS、イメージなどのリソースファイルを「Dataverse」上の「webresources」と呼ばれる仮想フォルダにホストすることができる機能です。この機能を使う事により独自のWebページを実装することも可能です。また「URL」はURLリンクを作成する機能となります。

ナビゲーション、サブエリアの作成

データ

アプリ内や、環境内の「Dataverse」データを編集することができます。

自動化

「自動化」ではビジネスプロセスフローの作成を行います。「モデル駆動型アプリ」のジネスプロセスフローは、実際の業務フローにあわせ、業務の過程(プロセス)毎に、業務データ(※)の入力項目や対応担当者、承認担当者、データ値による条件判定などを定義します。ビジネスプロセスフローを定義することで、業務手順に即したアプリケーションを作成することができます。

※ 「Dataverse」内に定義されたテーブル上のデータ

モデル駆動型アプリ、ビジネスプロセスフロー
ビジネスプロセスフロー画面

拡張コンポーネント

作成できるアプリケーションとして「キャンバスアプリ」、「モデル駆動型アプリ」についてご紹介してきましたが、この2つのアプリケーションにはどちらもコンポーネントを配置することが可能となっています。「キャンバスアプリ」で説明したように基本的には標準コンポーネントを使用することとなりますが、そのほかにも「コンポーネントライブラリ」、「コードコンポーネント」という拡張コンポーネントの使用が可能です。

コンポーネントライブラリ

コンポーネントライブラリ」は標準コントロールをひとまとめにし、1つの部品(コンポーネント)とすることができる機能です。次の例は、Imageコンポーネントに静的地図を表示させる機能を持たせた、地図コンポーネントの作成例です。

コンポーネントライブラリの開発

キャンバスアプリ上で、「コンポーネントをさらに取得」を押し、「コンポーネントライブラリ」をインポートすると、以下のように「ライブラリコンポーネント」として使用可能になります。画面上に配置することでImageコンポーネントを拡張した地図コンポーネントが利用できます。

コードコンポーネント

「コードコンポーネント」は、標準コンポーネントや「コンポーネントライブラリ」では実現できない機能を「Power Apps component framework」の使用し実装するコンポーネントです。開発言語はTypeScriptを使用し、JSフロントエンドフレームワークの「React」を用いることも可能なので、より高度なユーザーインターフェイスを持ったコンポーネントの作成が可能です。

また、Power Platformコミュニティメンバーによって作成されたコードコンポーネントがPCF Galleryにて公開されています。利用条件の範囲内で、実際に利用することも可能ですので、こちらをアプリケーション作成に活用できます。

さいごに

今回の記事では、「Power Apps」で作成できるアプリについてご紹介しました。いままでは市民開発者が身の回りの業務をシステム化するツールという側面がありましたが、「コードコンポーネント」などプロの開発者しか作れない領域もあり、組み合わせによってはエンタープライズなアプリケーションの作成も可能になってきているようです。

編集部ピックアップでは、今後も「Power Apps」をはじめとした「Power Platform」関連の情報をご紹介していきたいと思います。

\  この記事をシェアする  /