Microsoft Tech Summit 2018でPowerAppsセッションを提供させていただきました

インフォシェアではPowerAppsに関するサービスを提供しています。これまで金融機関様を初めとして、様々な業種においてPowerAppsを使用したアプリの作成やコンサルティングを提供してきました。
これまで培った経験を共有させていただくために、2018年11月5日から開催されたMicrosoft Tech Summit 2018で「組織のデータ力を強くする “One Platform, One Data”を実現する次世代ビジネスアプリケーション基盤構築方法」というタイトルのもと、セッションを提供させていただきました。

50分という短い時間のため、準備していた内容すべてをお伝えすることができず、心苦しい限りではありましたが、「PowerAppsでなにができるのか?」「ライセンス形態」「Plan2のCDSとはなにか?」「なぜPlan2を検討しなければならないのか?」をお話しさせていただくことができました。

PowerAppsというと、どうしても「キャンバスアプリ」の印象が強いかもしれません。キャンバスアプリは短時間でデザイン性や操作性に優れたアプリを作成することが可能ですが、私たちが最も気にしなければならないのは「データをどうするのか?」です。キャンバスだろうとなかろうと、結果として「データ」が生まれます。そのデータを企業にとって有益な物にするためには、SharePointやExcelに書き込んで終了とはいかないはずです。なぜなら、SharePointにデータがたくさん蓄積されていった先、将来はどうなるのでしょうか? そのデータは”組織全体として”つねに利活用ができるのでしょうか? AIで活用、BIで分析の対象になるでしょうか? 誰がデータをメンテナンスするのでしょうか? 誰がそのデータが最新であることを保証するのでしょうか?

PowerAppsのような製品は、他のメーカーからも準備されています。PowerAppsがそれら同カテゴリの製品と決定的に異なるのは「アプリケーション作成プラットフォーム」と「データプラットフォーム」の両方が提供されている点です。Plan2では「Common Data Model」に基づいたデータベースが標準で提供されます。オンプレの既存のデータ資産も活用できる「オンプレミスデータゲートウェイ」も提供されていますし、マイクロソフト社以外の製品と相互接続できる「コネクタ」も準備されています。さらには「データ統合」機能で他のシステムからPlan2のCDSへデータを定期的に書き込むことも可能です(バッチ処理)

これらの内容を扱ったセッションとなります。
ご興味のある方、詳細を知りたい方に、インフォシェアはPowerAppsサービスを提供しております。是非お問い合わせください!

インフォシェア株式会社PowerAppsサービスメニュー

 

 

InfoshareとPowerApps -その4

前回の記事では、キャンバスアプリのもう一つの活用法である、SharePointとの統合を取り上げました。
最後に取り上げるのは、PowerApps Plan2、つまりCDS2.0で作成する「モデル駆動型アプリ」についてです。

初めの記事ですでに言及した通り、「誤解を恐れずに端的」に表現すると、CDS2.0はDynamics 365プラットフォームを使ったアプリケーションの構築基板です。とはいえ、CDS2.0のライセンスは「月¥4,350円/1ユーザー」なので、誰もが気軽に契約できる料金ではありません。
PowerAppsはPlan1 (含むプレミアムコネクタ)、Plan2(CDS2.0)ともに「無料試用版」があるので、まずは試用版にサインアップし、検証されることをお勧めします。https://web.powerapps.com/signup

なお、Plan2 のサインアップには「組織アカウント」が必要になります。outlook.com、Hotmail.com といった個人用アカウントでは登録できないので、ご注意ください。

※参考情報:PowerApps Plan2相当の機能は「コミュニティ プラン」を申し込むことで入手することも出来ます。しかし、2018年7月10日現在、コミュニティ プランではCDS2.0データベースの作成が行えません。
2018-07-06_19-43-46
(つまり、このプランでは現状検証が出来ません。後日可能になるようです。)
※コミュニティプランの詳細:https://powerapps.microsoft.com/ja-jp/communityplan/

組織のアカウントが必要とはいえ、自分の勤務先アカウントを利用してサインアップできない事情があるかもしれません。このような場合、次の方法でも検証環境の準備が可能です。(※クレジットカードの登録が出来る方のみ)

①Office 365 E3の試用環境を作成する。
(PowerAppsでアプリを作成すると、どうしても電子メール連携が必要になる場面がでてきますし、Office 365と組み合わせるとPowerApps、Flowの検証の幅が広がるからです。)
但し、課金はないものの、本人確認の一環として登録にはクレジットカードが必要になります。
②作成したUserId@xxxx.onmicrosoft.com アドレスでPowerAppsの試用版を申し込む

無事にサインアップが完了すると、PowerAppsのホーム画面が表示されます。この画面は既に見慣れているしれませんが、左下に注目されたことはありますか?

図11211

どうして、これほど「目立たない」位置に切り替えメニューを配置しているのかはわかりませんが、PowerAppsホームの既定は「キャンバスアプリ」となっています。ここをクリックすると、「キャンバスアプリ」と「モデル駆動型アプリ」を切り替えることが出来ます。
※Plan2相当のライセンスが適用されていない環境では、この「切り替え」メニューは表示されない場合があります。

2018-07-06_19-44-21

モデル駆動型に切り替えると、ホームUIの表示内容が変化します。
2018-07-11_18-37-11

CDSのアプリケーションを作成するためには、デザインモードで「モデル駆動型」に切り替えてから、「環境」を作成するが必要があります。(ライセンスの種別によっては既定環境で作成も可能)
PowerAppsは一つの契約テナントに複数の「環境」を作成することができます。
これらの操作はPowerAppsの「管理センター」で行います。環境作成時、リージョンの指定もでき、指定されたリージョンにDynamics 365のインスタンスが作成されます。
2018-07-11_18-47-52
豆知識ですが、Dynamics 365(CDS2.0)の展開リージョンはURLからも判別可能です。
(日本の場合は、 https://組織名.crm7.dynamics.com、南米はhttps://組織名.crm2.dynamics.com といった用に URL内の”crmX番号“で展開リージョン定義されます)

※参照:https://docs.microsoft.com/ja-jp/dynamics365/customer-engagement/admin/sign-in-office-365-apps

なお、通貨と言語を選択しなければならない理由は以前の記事の中でも言及しましたが、試しにCDSの「サンプルのアプリケーション」(現状:チャリティー、資産のチェックアウト、Innovation Challenge)を確認したい方は、データベース作成時に「サンプルアプリとデータを含める」に必ずチェックを入れて作成してください。
CRMのサンプルデータは後からインストールすることも可能ですが(作成時にインストールされるのとは異なるサンプルデータとなりますが)、サンプル”アプリ”はデータベース作成時に選択が必要です。
2018-07-12_14-52-37

環境とデータベースが作成されると、右上のドロップダウンから環境の切り替えが出来るようになります。
2018-07-12_10-37-16

このスクリーンショットでは、既定の環境のほかに、“Contoso”という「環境」が作成されています。そしてContoso表示の左に「(org9ac24fd0)」と表示されていることに気がつかれましたでしょうか。これがCDS2.0用に作成されたデータベース、つまりDynamics 365インスタンスIDになります。
そしてこのCDSで作成したアプリを実行すると、下記のようにそのままDynamics 365がCDSプラットフォームとして起動します。
2018-07-12_15-10-00※このスクリーンショットは、CDS2.0のサンプルアプリである「Innovation Challenge」を開いたところです。

くどいかもしれませんが、CDS2.0を開くと(再生すると)、内容はDynamics 365そのものです。実際、ロゴ表記もDynamics 365のままです。
(※Dynamics 365の一部分はPowerApps表記になりつつあるので、ロゴ表記は将来変更されるかもしれません)
必須ではありませんが、Dynamics 365のカスタマイズの知識を持っている方が、エンティティ、フィールドの作成と構成、業務プロセスフロー設計やワークフローは容易に理解できることでしょう。

さて、前置きが長くなってしまいましたが、ここからがCDSの本題です。
「どのような場面でCDSで作成されたアプリを利用するのでしょうか?」
「キャンバスアプリとの違いはあるのでしょうか?」

CDSの利用価値に関する考え方や視点は様々です。ここから記載する記事の内容は、あくまで私たち(インフォシェア)の「現時点」で考えていることの共有となります。一つの意見として参考にしていただけましたら幸いです。

どんな場面でCDSは最適なのか?

・モデル駆動の実現が必要アプリ
モデル化つまり「構造化」が必要なアプリケーションの作成に適しているのがCDS2.0です。
例えば、前の記事でご紹介した「インフォシェア 入退館記録アプリ」。
これは「入室・退出」を記録した単一データから成りたちます。あるデータと、別のデータがつながり合って・・といった類いの「構造(階層)」ではありません。もし、この入退館記録アプリに「従業員のタイムカード」「有給管理」など複数の要素と異なる種類のデータを扱わなければならなくなった際は、私たちはCDSのモデル駆動型アプリへの設計変更を検討します。

・フロントライン(現場)でアプリを使うユーザーと、バックエンドのデスクワークでアプリを使用するユーザーが混在している場合
ちょっと使う人の立場になって考えてみましょう。キャンバスアプリは美しいデザインでシンプルな動作のアプリを誰もが簡単に作ることが出来ます。しかし、「PC」で、かつ「デスクトップ上」で使うユーザーは、キャンバスアプリが最適解といえるでしょうか?
デスクトップPCは一般的に画面が広く、マウスやキーボードと言った入力装置があるため、もっと多くの情報を扱うことが出来ます。そうであれば逆にキャンバスアプリはデスクワーカーにとっては「シンプルすぎ」であり、業務生産性を高めていることにならないかもしれません。現場のお客様先で、タブレットやスマートフォンから操作するときに最適化した情報量のキャンバスアプリは、全てのディバイス環境やユーザーの使われ方ニーズに応えるわけではありません。
CDSであれば、キャンバスアプリを作成して現場のタブレットユーザーへ、Dynamics 365の統合インターフェースでより複雑な作業や大量の情報を提供といった「どのニーズにも当てはまる」シナリオで展開することが可能になります。
図111
※まったく同一の内容をCDS(Dynamics 365)の統一インターフェースとキャンバスアプリで表示した例
※Dynamics 365の統合インターフェースはモバイル表示にも最適化されているレスポンシブ対応の新しいUIです。CDSアプリ作成者は新しい統合インターフェースと旧Dynamicsインターフェースの選択が出来ます。

 

・データを「将来にわたる財産」にしたい場合
キャンバスアプリでアプリケーションを作成した場合を考えてみましょう。
ユーザーがキャンバスアプリで入力したデータはExcelやSharePointリストに書き込まれ記録されることでしょう。必要に応じてコネクタで接続された他のデータベースへ書き込むことも可能です。
しかし、どこに書き込んだとしても、「データ一つ一つは “単体では意味を持つ” ものの、集合体・集積値として活用や分析したい場合には再び加工が必要になる」可能性があります。Excelは一つのファイルであり、ただのシート。このような「ただのファイル」を将来にわたって増やしていってもよいでしょうか? 考えどころです。
例えばインフォシェアの入退館アプリ。
社員の情報はExcelから拾ってきて表示。データの書き込みはSharePointの“リスト”へ。このExcelとSharePointの間には何の関係性もありません。
結局、データは、それぞれが「単一」であり、まとまりや繋がりはありません。
AI(人工知能)が組織分析の鍵となるこれからの時代、Dynamics上のCDSであれば「データにまとまり」を出すことができ、「このときのユーザーのアクションには、どのような意味があり、どう改善すればよいのか」など”塊データ”として記録するキャパシティーと機能があります。
前述の「インフォシェアの入退館アプリ」はキャンバスアプリで作成しましたが、拡張して、「勤怠管理」も追加すれば「誰」が、いつも「どのくらいの時間」まで働いていて(勤怠)、記録用に撮影された「写真」をAzure CognitiveサービスのFace APIで分析して「どういう感情」を持っているのか、などを総合的にCDSへ記録していくことも、シナリオとしては考えられるでしょう。さらに人事情報を追加して、CDS(Dynamics)アプリケーションで管理することによって、その従業員のパフォーマンスと勤怠の相関関係を知ることも出来ます。
時代も、技術も、日進月歩で進歩していきますが、社内にあるデータはいつまでたっても「分断化」されていたら、分析に適した”ビックデータ”として使うことが出来ません。

CDS2.0は、構造化を目的としたアプリケーションを作成する基盤として、よい選択肢の一つです。
「そこまでするんなら、スクラッチでアプリケーションを開発するよ」と考えられますか?
もちろんスクラッチ開発も選択肢としては常にあります。
しかし、また「データが分断」してしまいませんか? データを正しくまとめていくのにふさわしい基盤やアプリををスクラッチで「開発」する時間はあるのでしょうか?
また、それは本当にコストパフォーマンスに見合っているのでしょうか?

インフォシェアでも、“お客様の困った”に誠実にお答えできるよう、PowerAppsに限らず、シナリオや条件に合わせた最適な回答を出すことが出来るよう、日々技術を学んでいます。

コンサルティングも行っていますが、「トレーニング」という形でも、お客様にお伝えさせていただいています。常に新しい情報を「俯瞰して」見ることが出来るよう配慮されたトレーニングへのご参加も、是非ご検討ください。
特にCDS2.0に関しては、Dynamics 365のカスタマイズと構成の知識があるのとないのでは、設計に大きな差がでます。セキュリティー周りの設計もしかりです!CDS2.0の中身はDynamics 365だからです!

4記事で構成した、PowerAppsに関する記事は以上になります。

PowerAppsに関しては、これからも継続的に情報を発信させていただく予定ですので、おたのしみに!

※お薦めの参考資料:https://docs.microsoft.com/ja-jp/powerapps/maker/model-driven-apps/model-driven-app-overview#defining-business-processes

 

InfoshareとPowerApps -その3

前回の記事では「なぜ、またどのような場面でキャンバスアプリを利用するのか」を中心にご紹介しました。迅速性がPowerAppsにはあります。
もう少しだけキャンバスアプリの活用についてご紹介します。

SharePointリストのフォームとしてのキャンバスアプリ

キャンバスアプリのもう一つの活用方法として、SharePointリストのカスタムフォームがあります。通常、PowerAppsで作成したアプリはモバイルアプリプラットフォーム上で、またはWebで実行します。いまのところ、SharePoint OnlineのモダンUIだけ、PowerAppsのアプリを「ビルドイン」で表示し実行することが可能です。

これまでは、InfoPathでフォームを作成し、SharePointに発行して利用していました。InfoPathと組み合わせることにより、簡単な入力規則を設定したり、書式設定や動作なども定義することができ、より現場の業務に役立つ、使いやすいフォームが作成できました。

InfoPath
※画像参照:https://support.office.com/ja-jp/article/sharepoint-designer-%E3%81%A7-infopath-2010-%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%A6%E3%83%AA%E3%82%B9%E3%83%88-%E3%83%95%E3%82%A9%E3%83%BC%E3%83%A0%E3%82%92%E7%B7%A8%E9%9B%86%E3%81%99%E3%82%8B-f86cf514-9a11-4613-a479-12a1a0132d22?ui=ja-JP&rs=ja-JP&ad=JP

とはいえ、InfoPathはすでに開発が終了し、現在はサポート期間を残すのみとなっています。なによりも、この間にSharePoint側もクラシックUIからモダンUIへと大きく進化を遂げています。
時代が進み、昔のInfoPathの時代にはなかった「クラウド」「SaaS」「複数データソースの参照」「統合」といった考え方や機能が一般的になり、今回の「PowerApps」へと移行してきました。
誤解してはならないのは、InfoPathの時代からそうでしたが、決して「見栄えが美しい」帳票フォームを作成(デザイン)することを主眼にしているわけではありません。日本のお客様は「紙伝票と同じ」など”レイアウト”にこだわりが強くありますが、InfoPathの時代から「生産性を上げるために“プラスの価値”をフォームに実装する」ことが製品の目的です。
PowerAppsもしかり。ユーザーが多くのデータを参照しながら、正しく情報を入力するためのフォームを作成することが目的です。ビジュアルで要素を表現するのもPowerAppsの得意なところです。

SharePointのビルトイン フォームをPowerAppsで作成すると、SharePoint専用のアプリとして定義されます。例えば、SharePointフォームはiOS、Androidモバイルアプリから“自分のアプリ一覧”を表示させたとき、一覧には出てきません。モバイルアプリでは実行できない、SharePointモダンUI専用アプリ(フォーム)だからです。
※2018年6月現在

ほかにも、SharePointのフォームとしてPowerAppsを使用する際の注意点があります。

1.SharePointで定義されている全ての列型に対応できるわけではない。

一部、参照できない列型(データ型)があります。また、PowerApps側の表示カードに関しても、どのカードでも一律に表示されるわけではないので、SharePointの列型に対応したカードと組み合わせながらフォームを作成する必要があります。

よく失敗しがちなのは、一般的にSharePointのデータは「ギャラリー」を使って表示します。ギャラリーを選択すると、いくつかの既定のフィールドが並べられ、値が表示されます。そして、作成者は「ここは、この値を表示しよう」などと変更を加えていきます。
2018-07-10_18-51-11
実は、既定で表示されるカードでは表現できないものがあるので、その場合は、作成者自ら、新しいパーツをカードへ挿入し、それをデータとマッピングします。

2.表示できるフォームの面積(サイズ)はある程度限界がある。

良くも悪くもビルトインのフォーム。右ペインの幅を広げるにも「実質利用上の限界サイズ」があります。そういった意味でも「PowerAppsでフォームをカスタマイズして“帳票”を・・・」といったシナリオではないことがおわかりになるかと思います。開発前に、関係者内での正しい期待値の設定が必要です。
2018-07-10_18-56-37

あとは、実際にSharePointリストを用意し、PowerAppsでカスタマイズを行い体験してみるのが一番です。作成を開始する方法はいくつかありますが、インフォシェアがトレーニングでお伝えしているのは、次の手順です。

1.対象となるカスタムリストを開きます。 2018-07-10_19-02-38
2.右上の歯車アイコンをクリックし、「リストの設定」を開きます。 2018-07-10_19-02-48
3.全体設定メニューで「フォームの設定」を開きます。 2018-07-10_19-03-23
4.フォームのオプション一覧から「PowerAppsでカスタマイズします」をクリックします。 2018-07-10_19-04-50
5.PowerAppsでフォームを作成・カスタマイズします。 2018-07-10_19-05-32
6.ファイルメニューを開き、「保存」します。 2018-07-10_19-06-05
7.「SharePointに発行」をクリックし、SharePointリストに戻ります。 2018-07-10_19-06-35

もっと簡単にカスタマイズを開始する方法もありますが、まず「フォーム」に関するメニューがSharePointのどこにあるかを理解するようにしましょう。(何らかの理由で ”標準フォームに戻す” ことも考えられます)

下記は、少しだけカスタマイズを行ったフォームのサンプルです。デザインが貧弱なので、もっと改善しなければなりませんが、取り急ぎ、標準とは違うフォームであることが一目でわかるようにボタンなどを配置して表示しています。
2018-07-10_16-50-33

フォーム下部に配置されたボタンをクリックすると、「どのような備品があるのか?」「現在貸出し中なのか?」などを別のマスターから参照して表示しています。空きがある備品をクリックすると、入力フォームに「ある程度自動で値が入力され」、かつその備品のスペックがイメージ図とともに表示されます。
2018-07-10_16-48-05

簡単なカスタマイズですが、他の情報を参照できるようにすることで、SharePointのリストをシンプルにすることが出来ます。一つのリストにゴチャゴチャと情報を詰め込まなくても、バラバラの場所から必要な情報を参照したり、フォームで表示すると言ったことが可能になります。

PowerAppsでのアプリ作成は、まず手を動かして体験してみること!

是非、お時間のあるときに試してみてください。もちろん、インフォシェアでもコンサルティングの一環として、PowerAppsアプリ作成のお手伝いもしております。お問い合わせください。

PowerAppsとSharePointに関する参考情報:
https://docs.microsoft.com/ja-jp/powerapps/maker/canvas-apps/customize-list-form
https://docs.microsoft.com/ja-jp/powerapps/maker/canvas-apps/connections/connection-sharepoint-online#known-issues