Welcome!

Ruby-On-Rails Authors: Liz McMillan, Pat Romanski, Elizabeth White, Hovhannes Avoyan, Yeshim Deniz

Related Topics: @DevOpsSummit, Linux Containers, Containers Expo Blog

@DevOpsSummit: Blog Feed Post

Measuring Technical Debt | @DevOpsSummit #DevOps #APM #Monitoring

If technical debt were like monetary debt, it would be hard to keep track of it unless you checked in manually

Measuring Technical Debt with Incident Management Data
By Christopher Tozzi

If technical debt were like monetary debt, it would be hard to keep track of it unless you checked in manually. The only way many people find out their checking account is running out of funds is by logging in and checking the balance - or, worse, having a check bounce or a debit card declined.

But measuring technical debt can be more automatic. That's because, unlike your bank account, your IT infrastructure can be monitored on an ongoing basis with specialized tools, and you can get notified on critical health metrics. In turn, you can use monitoring data to gain information about technical debt. In other words, you don't have to do a manual audit to know when something is going awry in your data center. You don't have to wait for a server to go down before learning about a problem. Incident Management tools provide that information for you. By extension, they also offer a way for you to take stock of your technical debt without having to measure things tediously by hand.

Here's how incident management can help you keep track of technical debt and correct it, with no additional investment on your part.

Defining Technical Debt

First, let me explain what I mean by technical debt. Technical debt refers to imperfections in software code or architecture that, over the long term, create inefficiencies or other problems. Even if the imperfection itself is small, it can accrue a lot of "interest" over time as its effects repeat themselves on a continual basis.

For example, a program whose code contains multiple versions of the same functions, rather than adopting a modular approach, could take a few milliseconds longer to run than a better written program. That's not a big deal if you execute it once. But if it's a server-side web application that runs thousands of times a day, the debt adds up quickly in the form of poor performance and wasted CPU time.

Technical debt has lots of potential causes. Sometimes, you might knowingly acquire technical debt because you need to implement something quickly, you don't have time to follow best practices, and you decide that the debt is worth the cost (at that time at least). Other times, even the nit-pickiest of admins is hard-pressed to avoid technical debt. Unless you could see into the future (for instance, you probably didn't know that a decade-old switch that you are still using today because you can't afford to upgrade, would not work well with modern firewall tools). In that case, technical debt is just par for the course of living in an imperfect world.

Tracking Technical Debt
While technical debt has many sources, the nice thing about using incident management to measure it is that this approach makes it easy to track the problems no matter what caused them. Again, instead of doing a time-consuming manual audit of your systems to search for inefficiencies, you can leverage your incident management data as a proxy for assessing the extent of technical debt and honing in on it.

To understand how, let's take a look at some examples of different types of incident management data that PagerDuty tracks, and what it can reveal about your technical debt.

For starters, take the raw number of alerts that your tools generate. This is a very basic metric, and it can be affected by a number of factors. But assuming that your incident management reporting systems are properly configured and that you make no major change to your infrastructure, there is likely to be a relationship between the size of your technical debt and the number of incidents that your tools report. That's because more debt means poorer performance, which in turn triggers alerts when response times or resource levels hit certain thresholds. So a steady month-over-month decrease in the occurrence of alerts could mean that your technical debt is declining because your code has become more efficient.

Mean time to resolution (MTTR) is another incident management metric that offers a view into your technical debt. One common cause of poor MTTR is code that is overly complex. For instance, to reuse the example from above, code that was hastily written and contains redundant functions will be hard for an admin to understand quickly. That means a longer resolution time in the event that he has to read and change that code in order to respond to an incident.

The rate of escalations in your incident management data is also a useful measure of technical debt. Escalations occur when the first responder to an incident is not able to solve the problem and has to call in extra help. Frequent escalations likely mean one of two things. First, your admins may not be good at their jobs, but if that's the case, you would already know about it well before you review your incident management data. The second main cause of escalations is code that is too complex to be handled easily by whoever responds to an incident. If that's the kind of code your admins are dealing with when they answer alerts, there's a good chance the code was poorly written and is a source of technical debt.

Finding the Source of Technical Debt
Beyond helping you trace general trends regarding your technical debt, incident management data is also handy for zeroing in on the source of a problem.

For example, if your MTTR for incidents related to a certain program is higher than your average MTTR, there's a good chance the program in question is generating technical debt. Similarly, if servers running one type of operating system account for a disproportionate number of alerts, there's probably a code or configuration flaw at play. That's a technical debt you can address.

The cool thing about using incident management data to locate and address technical debt is that it doesn't require any significant amount of additional work. You already have monitoring systems in place, along with (hopefully) a central operations and reporting hub like PagerDuty. Taking advantage of these resources to find and fix technical debt doesn't require additional tools or investment. It helps you proactively make your code and operations more efficient, using the software you already have in place.

The post Measuring Technical Debt With Incident Management Data appeared first on PagerDuty.

Read the original blog entry...

More Stories By PagerDuty Blog

PagerDuty’s operations performance platform helps companies increase reliability. By connecting people, systems and data in a single view, PagerDuty delivers visibility and actionable intelligence across global operations for effective incident resolution management. PagerDuty has over 100 platform partners, and is trusted by Fortune 500 companies and startups alike, including Microsoft, National Instruments, Electronic Arts, Adobe, Rackspace, Etsy, Square and Github.

IoT & Smart Cities Stories
To Really Work for Enterprises, MultiCloud Adoption Requires Far Better and Inclusive Cloud Monitoring and Cost Management … But How? Overwhelmingly, even as enterprises have adopted cloud computing and are expanding to multi-cloud computing, IT leaders remain concerned about how to monitor, manage and control costs across hybrid and multi-cloud deployments. It’s clear that traditional IT monitoring and management approaches, designed after all for on-premises data centers, are falling short in ...
We are seeing a major migration of enterprises applications to the cloud. As cloud and business use of real time applications accelerate, legacy networks are no longer able to architecturally support cloud adoption and deliver the performance and security required by highly distributed enterprises. These outdated solutions have become more costly and complicated to implement, install, manage, and maintain.SD-WAN offers unlimited capabilities for accessing the benefits of the cloud and Internet. ...
The deluge of IoT sensor data collected from connected devices and the powerful AI required to make that data actionable are giving rise to a hybrid ecosystem in which cloud, on-prem and edge processes become interweaved. Attendees will learn how emerging composable infrastructure solutions deliver the adaptive architecture needed to manage this new data reality. Machine learning algorithms can better anticipate data storms and automate resources to support surges, including fully scalable GPU-c...
The Founder of NostaLab and a member of the Google Health Advisory Board, John is a unique combination of strategic thinker, marketer and entrepreneur. His career was built on the "science of advertising" combining strategy, creativity and marketing for industry-leading results. Combined with his ability to communicate complicated scientific concepts in a way that consumers and scientists alike can appreciate, John is a sought-after speaker for conferences on the forefront of healthcare science,...
Machine learning has taken residence at our cities' cores and now we can finally have "smart cities." Cities are a collection of buildings made to provide the structure and safety necessary for people to function, create and survive. Buildings are a pool of ever-changing performance data from large automated systems such as heating and cooling to the people that live and work within them. Through machine learning, buildings can optimize performance, reduce costs, and improve occupant comfort by ...
René Bostic is the Technical VP of the IBM Cloud Unit in North America. Enjoying her career with IBM during the modern millennial technological era, she is an expert in cloud computing, DevOps and emerging cloud technologies such as Blockchain. Her strengths and core competencies include a proven record of accomplishments in consensus building at all levels to assess, plan, and implement enterprise and cloud computing solutions. René is a member of the Society of Women Engineers (SWE) and a m...
Poor data quality and analytics drive down business value. In fact, Gartner estimated that the average financial impact of poor data quality on organizations is $9.7 million per year. But bad data is much more than a cost center. By eroding trust in information, analytics and the business decisions based on these, it is a serious impediment to digital transformation.
DXWorldEXPO LLC announced today that Ed Featherston has been named the "Tech Chair" of "FinTechEXPO - New York Blockchain Event" of CloudEXPO's 10-Year Anniversary Event which will take place on November 12-13, 2018 in New York City. CloudEXPO | DXWorldEXPO New York will present keynotes, general sessions, and more than 20 blockchain sessions by leading FinTech experts.
Apps and devices shouldn't stop working when there's limited or no network connectivity. Learn how to bring data stored in a cloud database to the edge of the network (and back again) whenever an Internet connection is available. In his session at 17th Cloud Expo, Ben Perlmutter, a Sales Engineer with IBM Cloudant, demonstrated techniques for replicating cloud databases with devices in order to build offline-first mobile or Internet of Things (IoT) apps that can provide a better, faster user e...
Bill Schmarzo, author of "Big Data: Understanding How Data Powers Big Business" and "Big Data MBA: Driving Business Strategies with Data Science" is responsible for guiding the technology strategy within Hitachi Vantara for IoT and Analytics. Bill brings a balanced business-technology approach that focuses on business outcomes to drive data, analytics and technology decisions that underpin an organization's digital transformation strategy.