Speed vs quality in Salesforce projects

Just like with innovation and speed, there is a tipping point where more of it diminishes returns. With Software, when innovation becomes a priority without governance it can impact the long-term productivity and the quality of the systems being implemented. Hence quality should always be factored into the overall design, development, and implementation model.

From the latest State of DevOps report it seems obvious that speed, stability, security, and availability enable better performance as an organization, which includes profit; productivity, and customer satisfaction. That stability and availability translate into the quality of your application.

Security is one of the essential factors in achieving organizational performance. This fundamental metric emphasises to implementation of pre-deployment security screening which would result in fewer vulnerabilities in production code. 

With organisations adopting multi-cloud platforms could see a massive shift in organizational performance but it comes with a risk to the overall quality of the systems being built to support the business. Implementing a quality assurance framework along with DevOps at an earlier stage would avoid burnout in development teams as well as assist in creating high-quality applications.

Balance

To have a sustainable product over time we need balance, that’s one of the items we cover in the course with Don Robins (so is the chart below, you can grab it for free here).

There is a natural tendency for the ‘visible features’ to try to capture more of the delivery. We, the stakeholders, the users, and the customers want the new features: more pages, buttons, components, and automation. But as we have learned from past mistakes the items on the left (image below) have to be embedded in everything we do.

Governance controls help organizations to actively monitor the development with the right balance on the sustainability of the software systems. Every time there is a new requirement from the stakeholders, the scalability and performance have to be factored in while designing the solution. Adoption of a governance framework would help organizations to incorporate quality assurance into every step in the development process. 

Learn

We also need courage is one of the values from Extreme ProgrammingIs the commandment to always design and code for today and not for tomorrow. This is an effort to avoid getting bogged down in design and requiring a lot of effort to implement anything else.

Keeping things simple whilst preserving optionality allows you not only to finetune to reduce waste but also to enhance and expand capabilities easily and to amend and refactor the existing ones. In a sense keeping things simple and modular allows you to manage future change less painfully, with minimal impact elsewhere. 

Shifting Left

Is the idea of incorporating feedback and testing way early and throughout the development cycle. That is to happen automatically and continuously, also being notified right away if something is not as expected, bringing the concept of monitoring not just for usage but for performance.

Shifting left supports feedback and integrates assurance, confidence, and trust in the product. As further down the development cycle, you find an issue the more expensive it is to sort it.

Image reference: https://www.stickyminds.com/article/shift-left-approach-software-testing

Shifting left is just not an operational change, implementation of the required toolset is mandatory to move the organization to adopt the technical shift in the development lifecycle. A governance platform would drive the shift left methodology in the DevOps process which is key for the development teams to be successful in building sustainable solutions. 

Definition of Done

This is one of the artifacts from the Scrum framework, but works a treat in any scenario. Is basically a way to convey agreement as a team to what means having a piece of functionality ready to be deployed.

The definition of done is the gap between the functionality being there and pressing the deploy button. What has to happen for it to be in prod in the blink of an eye?

This is also an agreement of items to be completed before marking a project as complete. Shift left practice and governance controls would validate the items around the best practices to give assurance on the quality of the solutions being delivered. 

Food For Thought

One thing you can do is gather data over time if the balance is not well looked after you will be surprised to know how much effort and time goes into repetitive tasks for anyone, for any team, and for any organization. Hence, there is a need to analyze the data so that organizations can interpret the information in a meaningful context for organizations. 

Gathering data around it and representing it visually, helps realization and it should prompt conversations on how to elevate the repetitive efforts that are high volume into more systematic, automated, and/or self-served solutions (as we spoke about in our story).

A system that needs so much manual intervention is just not sustainable over time.

Get in touch with us for more information on how Quality Clouds can help speed up your Salesforce investments.

Want to learn more? Let's talk: