Ariadne’s project manager Yuri regularly tracks the average time it takes for various tasks. She notices that since the start of the new year her developers are taking an unusually long time to respond to user-submitted bug reports. She digs deeper and discovers that the automation tool her team had been using for years to assign bug reports to developers has been shut down! She quickly pivots and finds a new tool for her team to use.
In this situation, Yuri created a feedback loop. A feedback loop is created when a team identifies and tracks a key piece of data, or metric. Teams can then use that information to drive process improvements. A typical feedback loop may look like this:
- The system is monitored and data is collected.
- Data is analyzed and bottlenecks are identified.
- Solutions are created and implemented.
- New solutions are monitored again.
Choosing which metrics to track is perhaps the most important step in creating a feedback loop. Metrics that can’t provide meaningful insight into a system just distract from the real bottlenecks.
Focusing on metrics that affect the customer is a great place to start. Some of these include:
- Time to load a website page
- Time to resolve an issue/outage
- Time to release new features
When and where metrics are tracked is another important aspect to consider. A defect, or problem, becomes more expensive to fix as it moves along the development process. DevOps seeks to discover defects as early as possible, a strategy known as shifting left.
When we collect and utilize feedback loops, we are also embracing, rather than turning away from, the inefficiencies in our system. Feedback loops contribute directly to a culture of continuous learning.
What was the key metric that Yuri tracked to create her feedback loop?
The metric that Yuri tracked was the time it took to respond to bug reports.
Well done! We’ve seen quite a few scenarios where a DevOps culture could have helped. We also learned the key practices teams use to foster a DevOps culture including systems-level thinking, an embrace of failure and learning, and feedback loops. Now, before you run off to change the way your organization operates, continue on to the next and final exercise to review what we’ve learned.