With the growing popularity and usage of the Power Platform in many organizations, we’ve seen that many of them are struggling to build an effective strategy that helps them manage theur environments. This blog post is the second of a three-piece series on how to manage your environments in the Power Platform and concentrates on how to effectively build an environments strategy. Click here to catch up on the first part.
Our tips and tricks mentioned in the blog post will help you define a clear strategy and avoid chaos in your Power Platform environments. In this first topic, we will discuss the facts about environments which are the backbone for building a strategy around the Power Platform.
Developing an environment strategy is important to keep your Power Platform organized a structured in the long term. By developing a strategy, we can achieve a place where business critical apps and personal apps can be used and maintained in the long term.
When developing a strategy, it’s important to step away from the default environment and create a structure which fits your company. Most of the time, it’s the multiple environments that will be needed.
Benefits of using environments
An environment can be tied to a geographic location, which is important in a business with locations worldwide. There’s an isolation boundary for all resources because you can never have resources that reference resources across environments.
For each environment, a different target audience can be configured based on the purpose. As discussed in our previous blogpost, you can plan the roll-out of the platform updates. Data loss prevention can be configured for each environment and backup/restore. Over time, it might be relevant to have different analytics based on each environment.
Why is it important to develop a strategy?
You want to secure your data from different applications and avoid that the wrong people have the wrong permissions.
The default environment is always created and can’t be removed. That is why it’s important to find a place in your strategy. Next to this, you want to avoid a sprawl and conserve capacity. Ensuring data is being stored and transmitted in acceptable geographic regions, as well as organizing resources in logical partitions are also part of why you need a strategy for the environments in the Power Platform.
With a strategy, you are also able to manage the application lifecycle management. What will happen with the application in the future? What about the maintenance, retention, …?
Steps to develop your strategy
- Assign your admins the Power Platform service admin role
- Restrict the creation of trial and production environments
- Treat the default environment as a ‘Personal productivity’
- Enable a process for requesting access to environments
- Create Dev/Test/Production environments for critical applications
- Have individual use environments for proof of concepts
We also give our clients some extra advice. Always deploy production solutions with a service account to avoid the applications becoming “orphans”. Besides, it’s a best practice to share your applications with AD security groups.
If possible, try to reduce the number of shared development environments. If needed, we sometimes suggest to develop an automated provisioning for environments. This is especially used when you want to create a specific training/demo environment for trainings/demo’s which will be removed after the training/demo has taken place.
Keep in mind while developing a strategy: less is more. You want to avoid users getting lost in the search for the right environment.
Define the types of application solutions
When developing a strategy, we mostly define a type of the (possible) solutions from the following types: critical, important and productivity. Most of the time, we use this structure as the basis of our environment strategy.
Example of a strategy
An example of a strategy can be found in the following image and is an example of the best-practice of Microsoft.
In this example we divide our environment in 5 high level structures:
- Critical project
- Business unit
- Important project
The default environment is open for everybody and can be used for personal/small team productivity applications which are not business critical applications. The environment can also be renamed and is mostly used by the citizen users.
On the other hand, the developer environment is only available for users that are subscribed to the community plan and the only purpose is to develop applications. Applications can be migrated to other environments if needed.
Critical applications are placed in separate environments, with both a test and a development environment. Those applications are mostly supported by the IT departments in organizations and are following a deployment flow over the different environments.
For business developments, we suggest creating a separate container. In this one, users who have been very active in the default environment and have shown that they have the knowledge, can develop the applications. If the applications are developed, the IT admins can migrate them to a shared test and production environment on which the user does not have the creator role.
The last group is a separate environment for the development of important and highly critical projects. Applications can be migrated to the shared test and production environment by the IT department. We suggest to create a shared production and test environment for business and important project projects o avoid an overkill of environments.
Next up in our third and last blog post about the Power Platform environments: A deep dive into the monitoring of environements, with hands on examples and a checklist for your organization.