Power Platformにおけるフュージョン開発の概要
フュージョン開発とは、プロの開発者と市民開発者やローコード開発者の協力を促すことでより良いアプリケーションを構築することを目的とした開発体系のことです。
ここではフュージョン開発チームについて説明し、プロの開発者向けのローコード概念を紹介するほか、プロの開発者がどのように JavaScript、ASP.NET Core Web API、Azure API Management など、既に使い慣れたプロコード ツールとフレームワークを使用して、優れた Power Apps アプリケーションの構築に向けて市民開発者を支援できるかを説明します。
Power Platform フュージョン開発で実現できること
フュージョン開発によって、ローコード開発者はコーディングを活用し、Web APIを利用した連携などの機能を実現することができます。以下はその具体的な利点です:
- 総合的な工数を低減できる: ローコードだけで開発する場合は、難易度の高い処理をコーディングレスする必要がありました。この場合、Power AppsやPower Autoamteなどの製品仕様に依存した制約が存在しており、回避策の検討や実装の複雑性が増したことによる保守負担の増加など、様々な悪影響がありました。フュージョン開発では、そのような複雑な処理をコードで実装することで、不要な回避策の検討やローコード部分の保守性を担保した実装ができ、検討コストや保守コストを下げることが可能になります。
- より柔軟なシステムが可能: コード開発部分をWeb APIとすることで、ローコード開発者は、Power AppsのHTTPリクエストを利用してコード部分の処理との連携を行うことができます。C#やJavaの力を借りて、複雑な処理を単純にすることが可能です。また、C#やJavaなどから外部システムを呼び出すことも可能です。例えば、商品情報を管理している外部システムからデータを取得して表示する、データを更新するなどの操作が可能です。
- 処理性能の向上が見込める: ローコード開発者は、Power AppsとPower Automateを組み合わせることで、高度な自動化プロセスを作成することができます。Power Automateは様々なアプリケーションやサービスとの連携を容易にするためのワークフローツールであり、ローコード開発者に柔軟なプロセス自動化の能力を提供します。
- 対応できる技術が一般的になる: ローコード開発ができる開発者の母数は一般的な言語開発に比べると少ない傾向にあります。フュージョン開発ではC#やJavaなど一般的な言語を扱えるので、技術者の調達や支援が受けやすくなります。
ローコード開発者がコーディングを活用することで、より柔軟でパワフルなアプリケーションを構築し、Web APIや他のシステムとの連携を容易にすることができます。
Power Platform フュージョン開発の体制
フュージョン開発の体制に必要な役職は、主に以下の3つです。
- コード開発者(Code Developer): Power Platformが対応していない独自処理をプログラミングによって実現する役割です。C#やJavaなど様々な言語とパッケージを利用し、ローコード開発者がカスタマイズを工夫することで実現していたサービスを独自処理として提供する。
- 情報システム管理者(System Manager):Power Platform及び、Azureに存在するリソースを管理する役割です。Azure リソースを活用し、Power Platformに存在しない機能を提供するためには、企業としてのセキュリティポリシやリソースの払い出し・課金状況等を管理、デプロイする作業を行います。
- ローコード開発者(Low Code Developer): Power Platformの標準機能を利用して実装を担当する役割です。標準機能での実現が難しい場合やパフォーマンスが改善できない場合は、コード開発者を頼り、コード主義で開発することで柔軟なシステムを構築することが可能です。
Power Platform でのフュージョン開発 より
https://learn.microsoft.com/ja-jp/power-platform/developer/fusion-development
これらそれぞれの役職者が協力し合い、適切なコミュニケーション、課題管理を行うことでプロジェクトの目標達成に向けて進むことができます。
また、コード開発者はローコード開発の技術を、ローコード開発者はコード開発の技術を持ち合わせていると会話がスムーズになり、開発が円滑に進みます。
このようにPower Platformのフュージョン開発では、ローコードでは実現が難しかった(難易度がたかかった)処理をコード開発者へ任せ、保守性の担保されたローコード処理を記述することに専念することができます。
このような分界点を置くことで、Power Platform導入のメリットを高めながら柔軟なシステム構築を目指すことができます。
Power Apps / Power Automateの開発において、ローコード開発はもちろん、コード開発においても人材が必要であれば、まずは弊社ご相談をいただければ対応方針のご提案をさせていただきます。
お知らせ
LINEオープンチャットにて『PowerPlatformコミュニティ』を運営しています。
Power Platfromについて情報交換をするコミュニティですのでご興味ある方は下記リンクから
オープンチャットにご参加ください!
『PowerPlatformコミュニティ』へのご参加はこちら