In today's fast-paced digital world, delivering high-quality software is no longer just a goal – it's a necessity.
As a technology solutions organisation, we constantly strive to meet the ever-evolving demands of our customers, and one crucial element that can make or break our success is the incorporation of Feedback Loops throughout the software development process.
Traditionally, organisations have relied solely on getting feedback through Testing done at the end of a feature development. With this approach, we are likely to get undesired outcomes over time.
Here’s why:
The dev team only learns about any issues sprints/weeks, and sometimes even months after they introduced the change that caused the error. By then, the link between cause and effect has likely faded, solving the problem requires firefighting and archaeology, and, worst of all, our ability to learn from the mistake and integrate it into our future work is significantly diminished. [Ref: The DevOps Handbook by Gene Kim, Jez Humble, Patrick Debois and John Willis]. Testing done at the end of feature development is merely one sort of feedback.
One analogy that resonates with me deeply which captures the essence of constant adjustment of our course in software development is that of a self-driving car adjusting its course based on real-time sensor data. As software development teams we must continuously gather and act upon feedback to steer our projects towards success.
Let’s delve into the various Feedback Loops that can empower software teams to deliver high-quality products:
Each of the above Feedback Loops operates on its own timeline, with varying degrees of immediacy and impact. However, the collective synergy of these feedback mechanisms propels the development process forward, fostering a culture of continuous improvement and innovation.
The figure below illustrates the different Feedback Loops and their Feedback Cycle Times.
[Source: Hendrickson, Elisabeth. “DOES15—Elisabeth Hendrickson—It’s All About Feedback.” Posted by DevOps Enterprise Summit, November 5, 2015]
It's important to remember that Feedback Loops are not set-and-forget mechanisms. Over time, they can become less effective due to factors like changing requirements, technical debt, or simply complacency. This phenomenon, known as "Feedback Entropy," - a term used in the talk on Feedback by Elisabeth Hendrickson at the DevOps Enterprise Summit, 2015 - describes the tendency for feedback loops to degrade over time.
She suggests a number of ways to combat feedback entropy:
By embracing a holistic approach to feedback integration and management, we can elevate our software development practices to new heights, delivering solutions that not only meet but exceed customer expectations.
Hendrickson, E. (2015). DOES15—Elisabeth Hendrickson—It’s All About Feedback. Posted by DevOps Enterprise Summit, November 5, 2015.
The DevOps Handbook: How to Create World-Class Agility, Reliability, and Security in Technology Organizations, By Gene Kim, Jez Humble, Patrick Debois, & John Willis