top of page

Power Platform best practices: my recipe for building Power Platform solutions

In today's rapidly evolving technological landscape, leveraging best practices for developing Power Platform solutions can significantly enhance their quality, reliability, and performance. Adhering to these practices ensures security, compliance, and cost efficiency, while also optimising user experience and maintainability.


This blog explores on my recipe for best practices recipe for building efficient and future-proof Power Platform solutions.


Why Best Practices Matter

Quality and reliability

Implementing best practices leads to consistent results and reduces bugs and issues, ensuring high-quality and reliable solutions. Consistency reduces variability, making it easier to predict outcomes and maintain high quality.

Performance optimisation

Efficient use of resources and scalable solutions are one of the most important aspects of building any solutions, including Power Platform as well. Optimising performance ensures that the applications can handle increasing loads and provide a smooth user experience. Use of the out of the box components and low code/no code approach with minimum or no bespoke development positively contribute to the performance optimisation. On the other hand, over-customisation and over-load with custom components might significantly impact the application loading time.

Security and compliance

Protecting data and controlling access are crucial. Ensuring that solutions comply with regulations and internal policies safeguards sensitive information. Appropriate use of the security roles or components like column-level security in the model-driven apps are essential in building secure and compliant solutions.

Cost efficiency

Well-designed solutions reduce development time, lower maintenance costs, and improve usability, leading to significant cost savings. Adherence to the standards also reduces risk of potential re-work, which ensure appropriate use of the project budget.

User experience

A consistent user interface enhances usability, making it easier for users to navigate and complete their tasks efficiently. Adherence to the UX best practices also improves user adoption and satisfaction, which can also lead to increased productivity.

Future-proofing

High-quality solutions minimise the risk of issues and create a stable foundation for future development and enhancements. Future-proof solutions can seamlessly integrate with new technologies and evolving requirements, ensuring long-term viability.


Best practices in practice

I believe that knowing and applying the best practices is responsibility of the individuals like you and me, but also the project teams and the company's you're working for .

Individual level

Quality work

Always apply continuous improvement and seek feedback to enhance your skills.

Learning & mentoring

Aim to stay updated with the latest trends and best practices, and mentor others to foster a culture of learning and development.

Project level

Guidelines and reviews

Ensure that the project team establishes clear guidelines for everyone and conduct regular quality assurance reviews.

Documentation

Maintain comprehensive documentation for your solutions, including designs, dependencies, deployment procedures, and customisations. Documentation should always contain a set of pre-agreed best practices that every team member should conform with.

Company level

Quality standards

Every company that works with Power Platform solutions should promote awareness and adherence to established quality standards and best practices.

Any new starts should be make aware of the company quality standards as they might have different experiences and backgrounds.

Continuous improvement

Companies should regularly check and update their best practices to align with new developments and opportunities for learning. Also, it is crucial for any organisation to recognise the importance of granting their employees the time and opportunities to learn and develop new skills. That also leads to positive improvements of the Power Platform best practices.


Best practices

Coding and development

Low code/no code approach

Following the Microsoft's best practices for low code/no code solutions is also the key in building the Power Platform solutions. However, sometimes we need to deliver customer's requirements when a bespoke development is necessary. In situation like this, it's key document and approve any exceptions and provide full rationale of the decision.

Out-of-the-box configuration

Prioritising the OOTB configuration over custom development to minimise complexity and maintenance should also be applied.

Avoid over-automation

As a good practice, any solution should provide guidance and information to support users in their day-to-day job without excessive over-automation of their tasks.


Company-specific boundaries

Each solution design should also to take into account the company's-specific boundaries. There also consider and apply the below rules and standards.

Strategic alignment

Ensure solutions support the company's strategic goals and contribute to its mission and vision.

Data policies

Adhere to data security, privacy, and quality management policies.

Internal policies

Comply with internal IT policies, including change management and incident management.


Collaboration and project setup

Teams collaboration

Separate channels

Create separate Teams channels for internal and external collaboration, including stakeholders.

Documentation

Store all the documentation in an accessible for everyone location - that ensures access to all the necessary information and improves teams' collaboration. Make sure to create and use checklists - that includes any configuration tasks and go-live checklists.

Email integration

Utilise the unique email addresses for each Teams channel to streamline communication.

Browser profiles and other tools

Chrome profiles

Set up separate Chrome profiles for each customer project to keep the work separate and also add any necessary extensions.

XrmToolBox

Configure the XrmToolBox utility to streamline development and administration tasks. Do it at the early stages to make sure that once the development will start, you do not have to worry about basic admin tasks.


Solution creation and management

Custom publisher and components

Custom publisher

Always start from checking what publishers already exist. If there is not one that you can use, create a custom publisher specific to the organisation and match it's prefixes accordingly. Never use the default publisher - that can cause issues in the future, specially around deployments.

Minimum components

Include only the required components in solutions to keep them focused and manageable.

Solution segmentation

I always found it helpful to segment all the solutions as it helps with the deployment - it minimises the risk of any deployment issues and helps with troubleshooting. For example, separate metadata and automation components.

Metadata

Include all necessary tables, fields, views, forms, and other metadata components.

Automation

Separate solutions for workflows, plugins, Power Automate flows, and web resources.


Naming conventions and table settings

Consistency in naming

Naming conventions

Use consistent naming conventions like PascalCase, camelCase, kebab-case, and snake_case across all customized components.

I personally tend to use the lower case for the schema names. In the past, I worked alongside lots of developers and they always recommended that approach.

Column schema

Follow specific naming formats for different field types to enhance readability and maintainability.

Table settings

Ownership and relationships

Configure table ownership and relationships thoughtfully, considering cascade rules and visibility.

Field limits

Be mindful of the maximum number of fields in a Dataverse table and choose field types carefully.


Form Layout and UX

Form layout best practices

Tabs and sections

Organise information logically using tabs and sections to enhance navigation and usability.

Header

Display important information prominently in the header for easy access - include record status and the owner.

App separation and navigation

Separate apps

Create separate apps for different functional areas and choose descriptive names that reflect their purpose.

Navigation structure

Organise areas, groups, and subareas logically to facilitate user navigation.


Security and notifications

Security roles

Early development

Work on security roles in parallel with other development tasks to avoid post-go-live issues.

Comprehensive and continuous

Define and update security roles comprehensively, covering all necessary privileges and testing solutions using all roles as opposed to limiting it only the testing using an admin role.

Email notifications

Understand the problem

In nearly every project I've worked on, customers often request the implementation of email notifications. However, I don't consider this the best practice because users tend to ignore system messages, especially when there are high volumes. Email notifications are just one solution. It's important to understand the underlying problem the business is trying to solve. Is the goal to ensure prompt action from individuals or to keep someone informed of progress?

Find the solution

Depending on the actual need, discuss alternatives with your customers, such as Teams notifications or in-app alerts, to reduce email overload. In many cases, dashboards can be an effective way to track progress and highlight records that need attention.


Conclusion

Adhering to best practices in Power Platform development ensures the creation of high-quality, reliable, and efficient solutions. By focusing on performance, security, cost efficiency, and user experience, developers can build adaptable and maintainable applications that align with organizational goals and contribute to project success. Continuous improvement and collaboration at individual, project, and company levels further enhance the effectiveness of these best practices, ensuring long-term benefits and stakeholder confidence.

298 views

Recent Posts

See All

Comentarios


bottom of page