Home United States USA — software A Crystal Ball to Prioritise Technical Debt in Monoliths or Microservices: Adam...

A Crystal Ball to Prioritise Technical Debt in Monoliths or Microservices: Adam Tornhill's Thoughts

218
0
SHARE

At QCon London, Adam Tornhill presented “A Crystal Ball to Prioritise Technical Debt”, and discussed that although the technical debt metaphor has taken the software world with storm, most organizations find it hard to prioritise and repay their technical debt. A key takeaways from the talk…
At QCon London , Adam Tornhill presented ” A Crystal Ball to Prioritise Technical Debt “, and discussed that although the technical debt metaphor has taken the software world with storm, most organizations find it hard to prioritise and repay their technical debt. Key takeaways from the talk included: methods to identify ‘hotspots’ of code complexity and churn; the benefit of continually evaluating the suitability of the architecture for the current system, for example, by examining ‘temporal coupling’ of components or microservices; and that the cost of inter-team coordination can often be learned from examining the social metadata associated with code commits within a version control system.
Tornhill , founder and CTO at Empear, began the talk by quoting Martin Fowler in regards to the problems caused by technical debt: “Like a financial debt, the technical debt incurs interest payments, which come in the form of the extra effort that we have to do in future development”. In relation to this, three propositions were stated: technical debt interest rate is a function of time spent working on the system; that all technical debt is not created equal; and most technical debt is not actually ‘technical’ – there is a strong link between technical debt and the organisation that produced the code.
Tornhil continued by suggesting that a ‘wish list’ of questions and information required to effectively priortise technical debt would include:
The code with the highest technical debt interest rate may be found using ‘hotspot’ analysis, which can be used to visually represent areas of the code base that are large, complex, or have high churn rates.

Continue reading...