BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage Articles Signs You’re in a Death Spiral (and How to Turn It around before It’s Too Late)

Signs You’re in a Death Spiral (and How to Turn It around before It’s Too Late)

Bookmarks

Key Takeaways

  • The importance of understand what a death spiral is in software products
  • The rising cost of technical debt and security threats
  • How to identify if you’re in a spiral 
  • There are four steps you can take to reverse a spiral
  • The role of value stream metrics in identifying and avoiding death spirals 

When it comes to supporting customers in a digital-first world, it can be easy for IT and business leaders to think solely about delivering “that” shiny new feature. Yet features alone do not define the business success of a digital product. Every big push to market comes with a percentage of risk and debt that, if neglected for faster-time-to-market and more features, will lead your business into a death spiral. While serious, especially in a time where customer responsiveness is legacy-defining, the good news is that you can turn it around if you take action now. And there’s no time to waste; by 2027, it’s estimated that 50 percent of the S&P 500 companies will be replaced if they continue on their pre-pandemic trajectory. While this estimation was made in 2016, we can assume this churn rate is now even higher. So, now perhaps more than ever, it’s critical that we make wise, data-driven decisions around balancing the need to create new business value while protecting existing business value.

What is a Death Spiral?

A death spiral is a series of opportunistic compromises that quietly build up over time to devastating effect. The oncoming of a death spiral may not be obvious to your product teams, as they are generally working flat out on important feature work. So when demand for new features is high—like it is at the moment to support customers in this intensified digital climate—shortcuts are taken. Architectural and process improvements (a.k.a. technical debt) are paused for the sake of getting to market sooner. Moreover, the success of getting a product to market before competitors can create even more opportunities to spiral. Meaning more feature work, more shortcuts, and more risk and debt. A recipe for disaster. 

For example, I once worked at a startup where our product owner’s mantra was, “We need to be first and we need to be fabulous.”  We were pioneering a new market and it was important to stake a claim. We took some shortcuts with the underlying platform roadmap in favor of more feature delivery. We assumed that we’d have time to take care of it once we found our footing in the market. But, over time, our focus on features and our early successes obscured us from keeping up with changes in our underlying platform.

After about three years into our growth, we hit an impasse. We had allowed ourselves to be dependent on a platform component that was long-scheduled to be retired. We had no choice but to re-architect the product. That effort tied up about half our engineering and testing resources for another 18 months while the rest of us worked on creative workarounds to keep the existing product relevant. It was an expensive opportunity cost for our startup firm, not to mention the confusion among our customers.

The Rising Cost of Technical Debt and Security Threats

The cost to the business bottom line and impact on your engineering teams cannot be overstated. For developers, the teams charged with creating and protecting business value through software, the pressure has never been greater. As more shortcuts are taken to get features or products to market faster in the pandemic—such as a new app or chatbox to support customer experience—they are straddled with even more tech debt work to contend with. A small but insightful survey found that 68% of 91 developers are working on products with a high or very high amount of tech debt. This debt, if neglected, only compounds over time, slowing productivity and impacting the happiness and engagement of teams. 

Worse still, while a specific feature may seem like a “must have” business priority at the time, all too often it is wasted effort as priorities quickly change. A 2018 Pendo report found that 80% of features are rarely or never used. Pendo calculated that software companies were squandering $29.5 billion year in assets that never see the light of day. And the costs don’t stop there...

Technical debt is estimated to cost companies $85bn annually. During the pandemic, tough decisions were made to accelerate delivery without consideration for the long-term effects on performance moving forward. In order to prevent tech debt overshadowing and undermining long term sustainability and growth, it’s critical to begin making technical debt visible and manageable as soon as possible.

Flow Metrics, as defined in the Flow Framework® introduced in Project to Product  by Dr. Mik Kersten, provide a mutually exclusive and comprehensively exhaustive means to make work, including technical debt visible and measurable. The framework prescribes the need to elevate and prioritize technical debt work on the same plane as feature and defect work. Through Flow Distribution—the proportion of each Flow Item (Feature, Defect, Risk and Debt) within a value stream—you can label debt work in your visualization dashboard to ensure its been monitored, tracked and reduced at the start of the release cycle.

IT leaders and business leaders must also be vigilant when it comes to software risks and vulnerabilities that threaten the security of their organization and business. The shift to digital is a golden opportunity for cybercriminals to capitalize on: the World Health Organization (WHO) reported a five fold increase in cyberattacks. Not only is there increased security risk from remote working and learning infrastructures, but security teams are also grappling with an even higher workload that may delay detection and response to cyber attacks. A CSO Pandemic Impact Survey found that 61% of security and IT leaders were concerned about an increase in cyber attacks targeting their employees working from home. This concern is illegitimate; the survey found that 26% of them have seen an increase in the volume, severity and/or scope of the cyber attacks since mid-March 2020.

It’s crucial, therefore, to treat risk work as a first-class citizen alongside features, defects and debt to ensure accelerated time-to-market doesn’t compromise on your long-term stability, growth or security.  Like tech debt, it’s vital that you ensure risk work is visible and manageable across your software portfolio. Otherwise, you will find it increasingly impossible to escape the death spiral. Or worse still, a big security breach will sign your death warrant for you.

How Do You Know if You’re in a Death Spiral?

Taking shortcuts to keep up with demand for new features and accumulating technical debt is a leading indicator that you’re in a death spiral. Technical debt is borrowing time from our future selves; taking the easiest route to get features to market rather than doing the right thing that may take longer. At some point, the principal of the technical debt—time to work around previous choices and fix defects caused by them—starts to compound exponentially and overwhelm the efficiency of the value stream (defined as the sequence of activities an organization undertakes to deliver on a customer need). 

The pattern of a death spiral is unmistakable if you know where to look. For example, when measuring the value stream for the flow of value-creating or protecting work (features, defects, risk and debt), the telltale signs of a death spiral will be indicated by:

  • Time-to-market increasing
  • Feature throughput decreasing
  • A very low percentage of debt work completion across all types of work
  • A climbing or already large amount of defect work completion

A real-time Flow Metrics dashboard can help you identify the death spiral pattern 

When this pattern starts to emerge, there’s a feeling of sliding down a slippery slope without a lifeline to climb out. The workarounds, the spaghetti code and compromises add up and make it harder and harder to introduce new features without breaking what already works. More and more defects occur which takes time away from innovation. Soon, the previously highly performing value stream seems to be trudging through quicksand. 

Four Steps to Reverse the Death Spiral 

A death spiral can be intercepted and reversed with the right data and the right disposition to tackle and manage it. 

Step 1: Get the data that provides visibility across the entire value stream end-to-end, from customer request to delivery. This visibility, as shown in the above value stream metrics dashboard, will provide leadership with a birds eye view of the trends, as opposed to proxy/activity metrics that do not provide the business-level insights that are needed. Enabling leadership to learn to see the patterns that foretell a death spiral will enable well-informed actions to balance the priorities before it’s too late.

Step 2: Those leading the value stream should assure an environment of psychological safety. Leaders need to promote an environment that encourages experiments and celebrates the learning that occurs should an experiment fail.  Teams need to come to terms with why there has been a lack of investment in debt work. Then, together with leadership, delve into the root causes of the most constraining bottlenecks and identify those issues that are impeding flow. Seek to understand those components that seem to always require a complex workaround and those areas where the group is resource-limited. Keep in mind, it’s the process not the people that have allowed this situation to occur.

Step 3: Once the group has an understanding of the root cause(s), look to design simple experiments intended to alleviate the debt while simultaneously setting goals on flow improvement. For example, if the root cause is related to too much work-in-progress (WIP), consider experiments that temporarily reduce or eliminate the intake of new work so the team may have the time to invest in architectural enhancements. If there’s a problem with dependencies among systems, try alleviating dependencies with techniques that decouple underpinnings. No matter the cause, it’s important to establish a culture of quick, simple, lean experimentation while pivoting and learning from failures.

Step 4: Prioritize this work at the highest level. Strive to create a sustainable process to assure debt and risk work is continuously addressed along with features and defects. Strike a balanced portfolio of commitments that include both work on new business value and work that protects existing business value. Continue to measure and analyze the resulting impact of the improvement experiments to reach the desired goals using a continuous improvement cycle of plan-do-check-act.

The death spiral is a serious problem that many a great product, or what could have been a great product, has experienced. Although the slope is steep and slippery to overcome, it’s possible to slow down the momentum and eventually reverse course. The key is having the visibility and data that enables cross-organizational buy-in for continuous analysis and improvement. By taking the right steps today, you can begin steering your organization away from disaster before it’s too late.

About the Author

Lee Reid, Sr. Value Stream Architect with Tasktop, has over 25 years of experience in a variety of software development and lean transformation roles. Lee has career certifications including TOGAF Certified Enterprise Architect, The Open Group Distinguished IT Specialist, Lean Facilitator, and is a co-inventor of four US patents. 

Rate this Article

Adoption
Style

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Community comments

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

BT