Adventures with Power Platform – To Do or Not To Do in the Power Platform

This is my first attempt at coming up with a rubric to guide a team on whether an application should be created using the Power Platform or a more traditional development technologies, such as React, Angular, C#, JavaScript, etc.

The first place I start is with the audience of the application or applications.

Is the primary audience Internal users, those in Azure Active Directory as a member or guest, External users, those outside of the organization’s Azure Active Directory tenant or Hybrid users, a combination of Internal and External users.

Figure 1 – Application audience

Once the audience is determined, I follow the appropriate path.

Internal

Assuming that the users are a member or guest of Azure Active Directory, my next questions involve the availability of connectors.

Is there a Standard or Premium Connector that is available to connect to the data source, and if not, can a Custom Connector be created to connect to the data source.

If a connector is available or can be created, then the next question revolves around the user interface, assuming this is applicable. Does the user experience have to be pixel perfect? If yes, then use Canvas Apps, if no, use Model-Driven Apps.

Figure 2 – Audience is internal users, those in Azure Active Directory

External

If users are not part of Azure Active Directory, or some other authentication provider is leveraged, then my next question revolves around the make up of the development team, are they composed mostly of Citizen Developers or Pro Developers.

If mostly Citizen Developers, the next ask is around data, specifically is it available in Microsoft Dataverse, if yes, then the recommendation is Power Pages.

Figure 3 – Audience is external to Azure Active Directory

Hybrid

When the user base is composed of both Internal and External users, I ask questions around the functionality of the application or applications. Can the applications can be separated, one app for Internal users, and another for External users? Separation can be accomplished by targeting specific user activities, administrator capabilities, etc.

If the applications and/or business functionality can be separated, then I run each one through the appropriate process, Internal or External.

Figure 4 – Users are a combination of organizational and external users

This is in no ways “the way” for determining this. I will admit, I took a very academic approach, but I needed a starting point.

Hoping to draw from the community for ideas on how to make this better and/or different approaches for doing so.

Thanks!

Leave a Reply

Your email address will not be published. Required fields are marked *