皆さん、マイクロソフトが提供している「PowerApps」をご存じだろうか。PowerAppsはカスタム・ビジネスアプリケーションを構築するためのツールである。PowerAppsは開発ツールのジャンルに入るが、言語をバリバリ使ってコーディングを行う開発ツールとは違う。

PowerAppsは今回のテーマである「ローコードプラットフォーム」に分類されるツールである。「ローコードプラットフォーム」とは、ソースコードを書かずに、GUIを用いて高速にソフトウェアを開発するためのプラットフォームを指す。Forrester Researchが2014年にソフトウェアを分類するためのカテゴリとして用いたのが始まりと言われている。

簡単に言うと、「ローコードプラットフォーム」はWebベースのビジュアルな画面でウィジェットやテンプレートを使いながら、最小限のコーディングを追加するツールである。筆者は、このローコーディングプラットフォームが、今後の開発環境の一翼を担う分野になることは間違いないと考えている。

そこで本連載では、マイクロソフトが提供しているローコードプラットフォーム「PowerApps」をベースに、ローコードプラットフォームの基本を解説していく。第1回となる今回は、ローコードプラットフォームを活用するメリットから紹介しよう。

アイデアを即座に可視化できるのが魅力

ローコーディング開発に制約はあるものの、コーディングを主体とする開発よりもスピーディーにアプリケーションを展開することが可能だ。もともとローコーディングは、過去に考えだされた開発手法の1つだが、働き方が重視され、生産性を高めるための技術が高頻度で求められる昨今のビジネス環境において、業務改革の切り札的な存在として注目が集まりつつある。

業務改革を行うために市販のアプリケーションの導入を検討するケースはよくある。その際、低価格な製品が求められる一方で、導入時の負担や運用の手間を減らすため、業務手順に合ったカタチで導入できることが要件に選ばれることは珍しくない。

ところが、そうした条件に適したアプリケーションを探し出そうとしても、すべての要件を満たす製品は稀で、何かしらの業務はアプリ側の仕様に合わせるしかないというケースも起こりうる。アプリケーションに頼らざるを得ない業務がある場合は、別のアプリケーションを導入するか、個別にスクラッチ開発をするしかないわけだが、いずれにせよIT管理者側の負担は大きい。特に後者はコストも時間も膨大に必要とし、結局はアナログな手法に戻らざるを得ないというケースさえ作り出してしまう。

市販のアプリケーションで満たしていない要件をスクラッチで開発をするのであれば、どれ程の時間が必要になるのだろうか。

コーディングを主体とする開発であれば3カ月で終わるケースもあるが、従業員が数千人を超える大企業となると、満たすべき要件が多く、取り扱うデータ数も膨れ上がるため、数人で組織されたメンバーだけでは開発作業は追いつかない。また、こうした開発作業は予算の承認を得るのが難しく、別のアプリケーションや低コストで請け負える業者を探すなどの是正を求められるケースもあるため、順調に事は進まない。

では、こうした問題はどのように解決できるのだろうか。

ここでお勧めしたいのが、最近、マイクロソフトが活用を推進しているPower Platformという製品群だ。Power Platformは、PowerAppsのほか、データを可視化して洞察を行うためのツール「Power BI」、プロセスを自動化するツール「Flow」、これらOffice365製品のデータストアとなるクラウド型データベース「Common Data Service」を組み合わせた製品群を指す。

Power Platformの特徴は、ローコーディングによってデータの収集から解析・予測までを一気通貫で実現できることにある。

ローコーディングで開発をする最大のメリットはスピードにある。コーディングで何行も書かなくてはならない動作も、ローコーディングなら関数を1つ埋め込むだけでできることもある。また、ほとんどの作業がドラッグ&ドロップで完了するため、まるでキャンパスに絵を描くようにアプリケーションが組み上がっていく。Power Platformの中でも、PowerAppsは特にこの開発スピードにコンセプトを置いたような機能が豊富に用意されているのでいくつか紹介したい。

各種データソースと連携して、自動的にアプリを作成

PowerAppsではOneDrive上のExcelファイルやSharePointのリスト、Azure、Dynamics365など、さまざまなデータソースを利用するための仕組みが用意されている。接続したデータソースは関数を用いてデータ項目指定するだけで、簡単にパーツの中で利用できる。

また、AIやスマートフォンに搭載されているカメラやセンサーとの接続コネクタも用意されており、コーディングベースでは困難な開発も短時間で組み込むための仕組みが用意されている。

さらに、PowerAppsでは接続したデータソースをベースに、アプリケーションを自動で作成する機能も備えている。数回クリックしてデータを選択するだけで、一覧表示、詳細、編集画面といった基本的なアプリケーションのカタチが自動生成されるのだ。

あとは、レイアウトやデザインに手を入れるだけでアプリケーションが完成し、電子辞書や掲示板など、情報の閲覧が主目的なアプリケーションであれば、十分に使用することが可能だ。

アプリケーションの展開

作成したアプリケーションの管理やユーザーへの展開は、IT管理者を悩ませる課題の1つだが、PowerAppsにはポータルサイトが用意されており、ドラッグ&ドロップのみで簡単に運用が行える。ユーザーへの展開もアプリケーションを共有するだけで特に難しい操作は不要だ。

モバイルデバイスで利用するために、PowerApps Mobileというアプリケーションが用意されている。iOSではAppStore、AndroidではGoogle Play、PCではWindowsストアからそれぞれダウンロードして使用する。

PowerAppsはほかにも機能を備えているが、上記の特徴だけでも、これまでコーディングにかかっていた期間が大幅に削減されそうなイメージが湧くのではないだろうか。

こうしたローコーディングによる時間の削減は、アプリケーションの提案にも大きな威力を発揮する。アプリケーション開発において最初に取り組む作業は要件定義だが、ここで固めたアイデアを開発に移すには作業依頼者へ完成イメージを伝えなければならない。そこで、ExcelやPowerPointなどのツールを使ってイメージを作成するわけだが、これがなかなか難しい。いくら素晴らしいアイデアでもイメージが正しく伝わらなければ、何度もこの作業を繰り返す羽目になる。

ところが、ローコーディングによる開発であれば、完成イメージを簡単に作成できる。使い慣れたツールであれば、要件定義の段階から開発画面で実際のパーツを使ったイメージをドラッグ&ドロップで作り、さらに画面やデータの動きまでも表現することが可能だ。

PowerAppsを使った提案では、当社でも要件ヒアリングの段階で、お客さまの目の前でアプリケーションを作成してみることがあり、プレゼンテーションツールとしても大きな効果を生んでいる。

著者プロフィール

三島正裕


1978年島根県生まれ。ディーアイエスソリューション株式会社所属。クラウドサービスを中心としたシステム提案やアプリケーション開発をする傍ら現在はマイクロソフト製品の活用事例「Office365徹底活用コラム」を自社サイトで執筆中。