Convergence 2015 EMEA というイベントの1日目キーノートで唐突に発表されました。
- Announcing PowerApps with Azure App Service
- Introducing PowerApps (Ch.9)
- Introducing Microsoft PowerApps
- Introducing Microsoft PowerApps (InfoQ)
- Microsoft’s newest app turns anyone into a programmer (Business Insider Enterprise)
- Microsoft’s newest app turns anyone into a programmer (Business Insider Tech)
- Microsoft Convergence EMEA: How we can help drive business transformation
- Introducing Microsoft PowerApps
- Microsoft takes wraps off PowerApps mobile-app creation service (ZDNet)
- powerapps.microsoft.com
- [速報]マイクロソフトが「PowerApps」を発表。パワーユーザー向けのモバイルアプリ開発ツール (Publickey)
PowerAppsって何?と背景
ざっくり言うと従業員向けのネイティブWebアプリやモバイルアプリの開発と展開を加速させるためのプラットフォーム、ですかね。業務アプリの開発用ツール(後述)、それを動かすためのプラットフォーム(Azureですが)などなど。
※ PowerAppsのコードネームKratosと呼ばれてたらしいです
PowerAppsが必要とされた背景は各Blogなどを見てもらえればと思いますが、要はビジネスアプリにはイノベーションギャップがあり、Microsoftとしてはそこを解消したいという感じです。
ギャップの原因としては3つ挙げられています。
- 熟練モバイル開発者の不足
ガートナーの予測として2017年までにモバイルアプリの開発に対する需要は内部のIT組織の能力よりも少なくとも5倍速く成長するらしいです。つまりそれだけ開発者が不足するだろいうという話 - ビジネスデータの増加
いわずもがな。内外を問わず(クラウドも含めて)データは日々増えていっています。これらをうまく接続しデータを消費(まぁ利用)することが難しい。 - 俊敏性やアプリケーションの共有
モバイルアプリの配布は普通プラットフォームのストアを通したりMDM通したりと面倒。
といったところをPowerAppsで解消するのが狙いです。Microsoft Officeのようにすぐ使うためのテンプレートやワークフロー(※)を自動化するビジュアルデザイナでサクッとアプリを作って、Office 365やDynamics CRM、Salesforce、SharePoint、SQL Server、SAPほかもろもろWeb APIなどと接続してデータも触って、簡単に共有(展開)できる、そんなソリューションです。
※他のREST APIに接続するにはPower Apps Enterpriseである必要があるようです
「Empower every person and every organization on the planet to achieve more.(地球上のすべての個人とすべての組織が、より多くのことを達成できるようにする)」というのを捧げているMicrosoftのミッションを体現した感じのものかなと思います。
コードガリガリ書くプロの開発者でなくてもアプリが作れるというのは、例えば今までだとAccessフォームだとかSharePointだとかPowerBIとかExcelとかで業務に使う何かしらを作ってたのを想像してもらえると、企業内のそういう人たちがターゲットなのかなと想像できるかもしれません。もちろんそれだけじゃないですけど。
PowerAppsのアーキテクチャ
PowerAppsの裏側は平たく言うとAzure App Serviceです。PowerAppsで使うAPIのホストをAPI Appsで行うし、認証や他のサービスとの接続もAzureのアーキテクチャ上に乗ります。PowerAppsのキモは「PowerApps Clients」の部分でもあるのですが、裏側がAzure App Serviceだとわかると何となく(裏側として)できることが想像しやすいかなと思います。
また、PowerApps EnterpriseだとAzure App Service Environmentを使えるようなので(上の図はEnvrioronemntのみみたいな図ですが)占有環境にできるしVNETに参加して安全に企業内のデータソースと接続したりも可能になります。
PowerAppsそのものはまぁAzure上で動いてるんでしょうけどPowerBIのようにPowerAppsというドメイン上で動くことになるっぽいです。まぁWebアプリなんで。(ネイティブアプリへのエクスポートは今のところサポートされてないぽい)
PowerApps
PowerAppsのキモは特に難しい専門的な知識がなくてもビジュアルなデザイナでぽちぽちWebアプリが作れるところにあります。あれどこかで聞いたフレーズですね? はい、PowerApps ClientのベースはProject Sienaです。
後はデータソースに接続したりして画面なりを作っていく感じです。
ロジックフローも作れます。
Twitterの内容をOffice 365使ってメール送信するとかとか。Logic Appsぽいですよね。
是非チュートリアルというかHow-to見てみてください。
フロント(アプリ)ではなくて裏側のWeb APIや管理のほうに興味がありますか?それならAzure側のドキュメントもぜひ。
注意点とか
現状、作るためのこのアプリはWindows 8かWindows 10なPCが必要です。ブラウザで作れるようになるのはSoonぽいですけど。またネイティブアプリへのエクスポートはサポートされてないみたいです。
また組織外へPowerAppsのアプリを共有するのはPreview中は不可のようです。
Preview期間中はPowerAppsで作ったアプリのAndroidデバイスのサポートはまだみたいですね(Soonらしい)。今のところWindows 8、10のデバイス、iPhone, iPad (iOS9以上) が動作対象のようです。オフラインサポートもおいおいかな。
詳細はヘルプセンターを参照。
始めるには?
現在はまだPrivate Previewという感じです。メールで招待を待ちましょう!
クライアントツールはこれからという感じですが、裏側のWeb API(API Apps)を作ったりは今すぐできます。招待されるまでの間にデータの活用方法やアプリについて考えたりしてみてはどうでしょう?
開発者の方はChannel.9の動画も見てみましょう。
費用感
まだまだ価格はでてないですね。StandardはPreviewの間、無料ぽいです。Free/StandardはおそらくそれぞれAzure App ServiceのFree/Standardなところの制限がついてきそうですね。Enterpriseを選ぶとAzure App Service Environment使えたりAPI Managementやリポートなど充実してそうです。
まとめ
生粋の開発者以外の人も、自分達に必要なアプリを簡単に作って共有できるようになれば面白いですね!
データは貯めるだけじゃ価値がでないですよ。
おまけ
ちなみにPowerAppsのPMはまたMSに戻ってきたWade Wegnerです。Azure側(?)はGuang Yangも関わってそうだし、まぁこりゃ人手不足になるのも当然だわという感じです。