Continuous Improvement: The By-Product of Monitoring
September 07, 2016

Jason Hand
VictorOps

We all remember the game from our childhood where one person whispers a phrase to the person directly next to them, who in turn shares the phrase with the following person in line. This continues through a group of people until it makes its way back to the original source.

The point of this exercise was primarily to demonstrate how easily information can become corrupted by a lengthy path through which it passes. Minor and major alterations to the information occur naturally, and in some cases intentionally, as details and facts associated with information are diluted by way of indirect communication with the original source.

Another observation is that the time in which it takes for information to return to the originating source varies greatly and increases with each new point through which the information must pass. In short, the volume and frequency of errors in data increase conversely with the path size and time in which it passes.

This concept can be applied to feedback loops, which are used in nearly every industry. Most IT professionals understand the importance of having the right monitoring and metrics in place to give them a pulse on infrastructure, code base and facilities. With a focus on uptime and availability, extra attention is put toward efforts to identify a problem before end users do.

Unfortunately, with availability as the highest priority, monitoring and metrics are typically used by IT teams to constantly firefight issues. They are rarely used to experiment or innovate so that the teams can improve upon their own processes and tooling.

In an industry where failure is unavoidable, learning and innovating through feedback loops is your best course of action. Instead of focusing on increasing the time until your next failure, you should focus on decreasing the time it takes for your systems to recover following a failure.

Continuous Improvement

Agile and DevOps principles teach us that removing friction in our processes and communications is a critical component to success in modern software delivery. Shortening feedback loops allows for quicker responses to situations, as well as a reduction in opportunities for errors in data.

Companies that have found a competitive advantage know the secret of shortened feedback loops very well. Not only have they adopted the principles of Agile and effective DevOps practice within their IT teams, but throughout the organization. It's part of an ongoing effort towards continuous improvement.

Today's best practices quickly become outdated as new processes and tools become available and mature. Embracing the feedback loop allows us to respond, learn and improve, which in turn allows us to innovate our own products and services.

No More Waterfalls

Waterfall planning and delivery methods where software releases take place in long cycles are no longer acceptable. The demands of competition and innovation require much shorter cycles for every phase of the process. The goal of the waterfall approach is to structure everything so that the schedule, scope, and resources can be determined upfront.

Unfortunately, this approach means companies can't respond as quickly. When the needs of customers or the landscape of markets inevitably changes, IT teams aren't equipped to receive that feedback and immediately apply it to new decisions and choices. There is no way to self-correct other than by throwing out an immense amount of planning and work only to start from scratch.

Human Feedback Through a Systems Thinking Lens

Feedback doesn't take place only within systems - verbal and non-verbal communication between co-workers, partners and customers are other forms of feedback. Taking a step back and looking at that feedback through a systems lens is a far more accurate method of evaluation.

There are three main questions to ask in order to accomplish this:

1. Are differences between the giver and receiver creating friction for the feedback?

2. Is the feedback partly related to the differing roles between giver and receiver as it relates to the common system?

3. Are processes, policies, physical environment, or other factors within the system reinforcing problems with the feedback?

Examining feedback in this manner allows for a deeper understanding of the information flowing to and from the human inputs and outputs. By allowing ourselves to view feedback through a Systems Thinking model, we can begin to look for patterns, understand the feedback loop with more accuracy and identify contributing factors to both failure and success.

Learning and Innovation

The inevitability of failure has a unique ability to absolve us from the effort of trying to engineer failure out of systems. Because of this, we now design for failure, optimize for a reduction in Time-To-Repair and build in feedback loops that prevent us from aimlessly hunting for a root cause of a disruption. From that, we can use divergent thinking to guide our decisions and choices on what to do next to improve the reliability and resilience of our systems. The by-product of all of that is a highly available system built, maintained and continuously improved upon by high-performing IT teams.

As builders and maintainers of complex systems, we must take great effort to shorten feedback loops. Once the focus is on repairing systems faster, you can create space to explore, experiment and develop new ways to provide bleeding-edge products and services. The by-product of a highly reliable and resilient system is a highly available system.

Once the focus is shifted from simply maintaining systems to improving them, value is increased across many fronts. As a result, the IT department will provide greater value to the business, and the business provides greater value to the end user.

Jason Hand is a DevOps Evangelist at VictorOps.

The Latest

April 24, 2017

The expectation of regular software updates – it's what developers are tasked with, and what users expect and demand. Increased functionality, better performance, and fewer bugs – often in a week or less. Automation of critical processes such as QA can help meet the gargantuan task of constant updates, but it can also send your software into a death spiral of user abandonment unless deployed correctly ...

April 20, 2017

One could argue that testing is the most important phase of an IT project. It's also time-consuming and expensive. It's essential to strike a balance between an IT testing program that ensures a quality product and the cost-to-value ratio of your project. But when you're dealing with replatforming projects, how much testing is enough testing? ...

April 18, 2017

Whether through formal methods such as classroom or virtual training, job shadowing, and mentoring; or through informal methods such as team discussions or presentations, teaching needs to be a frequent element of team integration. It is a given that IT and business teams have difficulty understanding each other without a common taxonomy. Even teams within IT often fail to understand each other ...

April 17, 2017

Although DBAs fortunately have the rare ability to bridge the gap between development and operations, they have been detrimentally overlooked in many companies that deploy DevOps practices. A DBA's ability to interrogate code and construct a resilient, well–performing database environment uniquely defines the capabilities needed for DevOps – leaving me perplexed about why DBAs were not one of the first operations team members asked to join the DevOps movement ...

April 12, 2017

DEVOPSdigest asked experts across the industry — including analysts, consultants and vendors — for their opinions on the best way for a development or DevOps team to become more Agile. Part 5, the final installment in this series, provides tips on empowering people ...

April 10, 2017

DEVOPSdigest asked experts across the industry for their opinions on the best way for a development or DevOps team to become more Agile. Part 4 covers DevOps technologies ...

April 07, 2017

DEVOPSdigest asked experts across the industry for their opinions on the best way for a development or DevOps team to become more Agile. Part 3 provides some tips for getting started and gaining feedback ...

April 05, 2017

DEVOPSdigest asked experts across the industry for their opinions on the best way for a development or DevOps team to become more Agile. Part 2 covers processes including automation, continuous delivery and testing ..

April 03, 2017

One of the most ubiquitous words in the development and DevOps vocabularies is "Agile." It is that shining, valued, and sometimes elusive goal that all enterprises strive for. But how do you get there? How does your organization become truly Agile? With these questions in mind, DEVOPSdigest asked experts across the industry — including analysts, consultants and vendors — for their opinions on the best way for a development or DevOps team to become more Agile ...

March 30, 2017

As trends like cloud computing and DevOps become the de facto standard, organizations are increasingly looking for next-generation analytics tools and services that provide continuous intelligence to help them build, run and secure modern applications, and accelerate their journey to the cloud, according to a new study with UBM Technology titled The New Normal: Cloud, DevOps and SaaS Analytics Tools Reign in the Modern App Era ...

Share this