Methodology in Low Code Development

A software development methodology is a framework or set of guidelines that outline the processes and practices that should be followed when developing software. It provides a structure for how work should be organized and carried out, and can include activities such as planning, design, coding, testing, debugging, and deployment.

There are multiple methodologies that have been developed over the years, each with its own set of principles and practices. Some common examples include Agile, Waterfall, Lean, and Scrum.

Is it needed?

Those of us who use the Power Platform, or any low-code development tool to build software, still need to follow a methodology. At the end of the day, the building part is only one step of the process.

Having a methodology helps in having a clear vision of the steps

When we develop software using low-code tools, we still need, for example, to gather requirements or do testing, and having a methodology in place helps tremendously in having a clear vision of the steps required to build the app we need.

The Power Platform facilitates enormously the creation of apps and speeds up the building process. As a consequence we are tempted to jump straight into the creation phase, forgetting to do very important things in advance, like planning or design.

This is acceptable in some scenarios, as long as the complexity of the app remains minimal, but as soon as the app grows in size, number of users or complexity, you really want to use a well-defined set of steps to ensure the app is usable, maintainable, performant and bug-free.

Imagine we are building a house. We have to choose to build it the traditional way, with bricks and timber from the ground up or to use pre-built modular blocks that we need to assemble and connect to the existing electricity network, water pipes and the rest of the supplies.

Modular vs traditional building construction
Just because you are using pre-built blocks doesn’t mean that you don’t need to do everything else

Regardless of the chosen option, no sensible person would consider going ahead with the construction without proper planning at the beginning and inspections at the end, to make sure the house is safe and it won’t fall over their heads.

The same applies to the Power Platform. Just because you are using pre-built blocks doesn’t mean that you don’t need to do everything else, if you want to ensure a minimum quality standard.

Unless you are building a shed. In that case, you can start nailing the timber planks straight away. But the problem with software development is that a shed rarely ends up being a shed. Most programs start with shed requirements and end up being five stories houses.

Image of a timber shed
If you are building a shed, is OK to start nailing the timber planks straight away

This happens with software because it usually makes people more productive. And once people are more productive, they want to find a way to be even more productive. And because the last time productivity was increased was because of the introduction of a program or an automated process, is natural to think that more of the same will produce the same result.

Are Methodology and Governance the same?

They are not the same. If you follow the Power Platform world, you probably hear the governance buzzword a lot.

Governance tends to focus more on the overall management and oversight of the software within an organization, while methodology focuses more on the specific processes and practices that should be followed during the development. Governance defines the rules at a higher level, while Methodology focuses more on the specifics.

In the Power Platform, the separation between the two is more blurry, because the platform building blocks are generally assets or components that need to be managed through governance rules.

Find a few examples below to clarify which is which.

The Governance defines:

  • The process of purchasing and assigning licences to users.
  • The steps required to onboard new users.
  • How deployments to production are made.

The Methodology defines:

  • How user requirements for the project are gathered.
  • How estimations are calculated.
  • How tests are written and executed.

The reason why Governance is heard a lot in the Power Platform world has to do with the tool called Power App Center of Excellence (COE), which facilitates the definition and implementation of the Governance Rules, as well as Administration, Monitoring and User Adoption.

With the Power Platform everybody is empowered to start building apps, and without a tool like this in place, and governance rules, things can get messy very quickly.

Center of Excellence Starter Kit summary with all its components.
Center of Excellence Starter Kit summary with all its components

What is the best methodology for my Project?

There is no one “best” software methodology that is suitable for all projects.

The right methodology for your project will depend on a number of factors, including the size and complexity of the project, the skills and experience of your team, the resources available to you, and the specific goals and requirements of your project.

Here are a few steps you can follow to choose the best software methodology for your project:

  1. Identify goals and constraints: Define the goals of your project and the constraints you are working within, such as budget, timeline, and resources.
    For example, if you are low on budget, it will probably be easier to start seeing results quicker with an agile methodology. Or, if your project requires formal validation at the end, then probably makes more sense to use a waterfall methodology, where the requirements are set up front.
  2. Research: There are many different software development methodologies to choose from, each with its own set of principles and practices. Consider the benefits and drawbacks of each methodology and weigh them against your project goals and constraints.
  3. Needs of your team: Think about the skills and experience of your team, as well as their preferences and working styles.
    For example, If the team is small, maybe a lean methodology makes more sense. Or if you have many inexperienced members, then maybe Extreme Programming (XP) is good for you, as this methodology emphasizes collaboration.
  4. Test and refine: Once you have chosen a methodology, try it out on a small scale to see how it works in practice. Be willing to make adjustments and refinements as needed to ensure that the methodology is working well for your team and project.

Ultimately, the best software methodology for your project is the one that helps you to meet your project goals efficiently and effectively, while also taking into account the needs and preferences of your team.

A methodology is a framework and set of guidelines, but ultimately you are in control of it. You define what works for you and what you want to make part of the methodology you follow. You can discard something from an existing methodology and make variations if it makes sense to you.

Conclusion

Low-Code tools and specifically the Power Platform facilitates and speeds up the building phase of any software project. But software development requires other phases that are fundamental to increase the chances of obtaining software that is fit for purpose.

Using the Power Platform doesn’t mean that you should not define and follow a methodology. If you are not doing it already, do your research, pick a methodology that suits your needs, and use it!

And if you need help in the process, please don’t hesitate to contact us.

I hope you find it useful. If you have any comments or queries, please leave them below.

Further reading

Credits

Photo by David Travis and Aubrey Odom-Mabey

COE map from the Power WIKI.

Subscribe to our newsletter