When it comes to building your Business Applications using the PowerPlatform, there are many aspects you should consider at different stages of the design/development project.
Please remember that a lot of Power Platform developer as Power Users, who might lack the foundations of IT Programming such as the concepts of Variables, Collections, Loops, Memory management …etc.
In this article, I will try to compile different techniques and best practices to improve your over all Power Apps solutions.
The points I will cover in this article will apply to both Canvas and/or Model Driven Applications.
One of the biggest player when it comes to the performances of your application, is the information architecture and data source you want to use (or have to) as back end data storage.
In most cases, you will have three main choices:
SharePoint lists can be considered as the easiest data sources for your Power Applications, especially for legacy systems, however, this comes with multiple issues:
- SharePoint Lists Limitations: such as the lists threshold.
- The complexity of using Lookups, choices and person fields.
Using SQL Azure as back end for your PowerApps is much better from a performance point of view as SQL Server is actually a relational data base which makes it easier to link different entities and navigate the information architecture.
I would say, the main downside of using SQL Server is the need of having some Relational DB knowledges, or a dependency on your DBA.
For both SharePoint or SQL Server, when it comes to querying your back end, each call will take 8 jumps (with data conversion or Parsing) to go back and forward.
Previously known as CDS, Data Verse is for me the best back end data source to use with your PowerApps solutions.
The reason is simply due to the fact that DataVerse and PowerApps Applications live in the same context, which means, you back end data calls will take 2 Jumps to query and retrieve you data.
In addition to the quick data retrieval, you will have full relational data base structures, with much more features (Entities, Data Types …etc.).
Learn more about data verse –> https://learn.microsoft.com/en-us/power-apps/maker/data-platform/data-platform-intro.
The only downside of using Data Verse, I would say is the requirement of Premium licences, which may increase the cost of your project.
You might also want to use other data sources such as Excel (which I won’t cover in this article, or blog, for obvious reasons :p )