With more businesses using the Power Platform for app development, the number of citizen developers within those businesses is on the up. In short, this refers to individuals who have access to your development environment. With this comes a huge opportunity to invest in and nurture organic growth.
However, it also poses some issues when it comes to governance. Put simply, this is the control you have over your IT operation. Having more people within a business that can create apps means more need for effective governance. Fortunately, Microsoft’s Power Platform comes equipped with a number of capabilities to help you achieve exactly that.
In this post, we’ll provide answers to some of the most frequently asked questions about Power Platform governance.
What is a Power Platform solution?
A Power Platform solution is a collection of Power App components that make up a whole application. Components can include model-driven apps, data entities, canvas apps, web resources and option sets.
Solutions are packaged as a whole unit rather than the separate components, and they can be imported into different environments as you require. So, your solution could start off in development as an unmanaged solution, which means the components can be created, edited, updated and deleted. By the end of the process, it could be used in production as a managed solution which is finalised and can no longer be amended.
Can dev-ops techniques be used in the Power Platform?
Thanks to a recent update from Microsoft, Azure dev-ops techniques can now be used in the Power Platform. Power Platform build tools can be used to automate common build and deployment tasks.
This can be used in in conjunction with Azure dev-ops to automatically deploy new updates of a solution between your power app environments. Pipelines can be created to update your app in development, move it user acceptance testing (UAT) then onto production as a managed solution.
What are Power Platform environments?
Environments are separate containers which can be created within your Power Platform tenancy. They’re highly useful for governance because you can create separate apps and permissions. With the ability to assign different permissions for each environment, for example, you can effectively separate development, testing and production.
All tenancies come with a ‘default’ environment, where everyone has access to create apps and flows. This environment is great for hackathons, little test apps and personal proof of concepts.
This is all demonstrated in the example above, which includes separate environments for production, building and development – along with the default environment. When a solution is ready to be moved to a production environment, the type of environment can be changed from ‘sandbox’ to ‘production’.
Can you provide version control for canvas apps?
Version control is possible for canvas apps that are built with PowerApps. We refer to this as a lightweight application lifecycle management technique – or lightweight ALM for short.
After a save, you can publish the app – then all the users will be using this version (the live version). You can also just save the application, meaning it won’t be the live version until you publish it.
However, if you publish a version of an app and there are mistakes or bugs, then you can ‘un-publish’ it and revert back to the previous one. If you intend to use this type of ALM technique then we recommend using the version note section when you publish the app, filling it with the updates you have done and any bugs fixed.
Version 90 is published ‘live’ and this is the version the users are using.
Here we are restoring back version 89.
And then it’s published to version 91.
This is how a version note can help.
Version control is also possible with flows and Power Automate solutions, which can be exported as ZIP files and re-imported with different version numbers. Not quite as slick as the canvas app version control.
How do you deal with API capacity on the Power Platform?
API capacity refers to the amount of API calls you can use in your Power App, Power Automate or the common data service within a 24-hour period. An API call may be an update from a sharepoint list to a Power App, or it could be an record update on the common data service.
Microsoft has made it quite hard for an individual user to reach the limit that their license allows them to use. However, if you’ve experienced this problem, it’s best to design solutions to use the lowest number of API calls – and for teams to work together to make sure you get the most value out of these calls.
Microsoft won’t switch a user off for using too many API calls, and so far there has not been a trigger set, but the O365 administrators will know when a user has exceeded their limits.
Can you share solutions built on the Power Platform with external users?
You can! In fact, it’s easy to provide great apps for third parties, business partners and contractors. Ask your Azure administrator to enable B2B External collaboration and make sure the guest user is added in your directory. The guest user needs a license and also needs access to the data that your app uses. But besides that, it’s quite a simple process.
Any more questions?
If you have any more questions about governance when working with the Power Platform, don’t hesitate to get in touch with the team at silverlimes. As fully certified Microsoft Partners, our experienced consultants can help with any issues you’re facing – whether that’s pointing you in the right direction or providing hands-on assistance.