Are you paying enough attention to the quality of the software your organization produces?
By Erik Oltmans
If your answer is “Yes,” the next question would be whether you are putting your money where your mouth is? Most IT pros don’t.
A recent poll SIG conducted in partnership with O’Reilly Media surveyed more than 1,400 programmers on all aspects of code quality: who evaluates it and when, what methods and tools they use to measure it, and so on. Elsewhere we have discussed how developers and teams can better organize and carry out their work based on the survey findings. But as a CEO who engages regularly with senior executives, I want to focus here on an issue that has sharp implications for both your IT environment and your business results: budgeting.
Too many organizations do not allot adequate budget — and corresponding management responsibility — to ensure code quality. This was made evident by the findings of the survey, and I can confirm that it is a large but insidious problem for many organizations I encounter.
Inadequate Time, Money, and Tools
Nearly three-quarters of our survey respondents (71%) said that they have no budget for code quality tools. Another 18% said that they don’t know whether they have a budget. Think about it: that leaves only 11% of our large sample of developers who have a code quality tool budget and know how much it is.
Yet SIG’s countless engagements to find and fix code quality problems — large and small, across many industries — conclusively reveal two things:
- Accurately measuring code quality has profound impacts not just on raw software performance, but on software maintainability, IT security, developer productivity, vendor management, talent development, . . . and your organization’s bottom line.
- Accurately measuring code quality requires in-house practices such as peer reviews. (Coincidentally, 71% of our respondents do employ them.) But doing it right also absolutely requires the proper use of code quality tools and external expert review.
Yes, those things cost money, and, yes, you likely already spend some of your budget on analytical tools, penetration testing, and other worthy items. But code quality deserves its own dedicated budget. Without it, you run the risk of many problems in maintainability, security, productivity, and so on — with the attendant costs — in the future.
You Get What You Pay For . . . and You Pay Attention to What You Fund
The inconsistent allotment of budget and tools among our survey respondents, in my experience, ties to inconsistent allotment of responsibility for code quality within organizations. Individual coders and small teams assume that they are doing enough to measure and improve code quality, even when those efforts are informal or haphazard, while leaders further up the hierarchy assume that quality is being taken care of at those lower levels.
All of that changes when you assign enough funds to the issue, with appropriate benchmarks and reporting requirements attached. It starts with understanding which tools you need — not just common static tools, but also more nuanced ones such as those at our Better Code Hub. Building on that, you need to develop a thorough understanding of the internal and external review processes that ensure better code quality. (We can help with all of that.)
As with most things in business, once you’ve put in place . . .
- a budget,
- intelligent processes,
- meaningful benchmarks, and
- clear authority — and duty — to carry out the program
. . . there is a much greater likelihood that the matter will be taken seriously and tracked closely up and down the hierarchy.
Individual coders and small teams will benefit as they receive more meaningful feedback and guidance on quality: it makes them more effective programmers and drastically reduces frustrating rework. (As explained in this post, we also offer certification training in writing quality code.) Meanwhile, managers will be able to see clearly how quality is trending and take informed action to ensure that goals are met. And executives will be able to determine how improved quality not only justifies the immediate budgetary expense, but also creates broader benefits for the IT organization and lines of business alike.
The Burden and Blessing of Software Quality Management
As a CEO myself, I understand the hesitation to take on new expenses, especially when they go hand in hand with new processes. But improving your software quality is well worth the investment. Some organizations understand this, even if they’re only part way to the goal. Among our survey respondents, there was a strong correlation between the use of code quality tools and the use of code reviews. That’s a solid start.
Savvy leaders in software development will build on that ethos of quality, putting real organizational muscle — money, processes, and attention — behind a commitment to improving code quality and reaping the rewards in productivity, security, talent development, and beyond.
The full SIG/O’Reilly report can be found here: https://www.softwareimprovementgroup.com/insight/improving-code-quality/
This blog was also published on Medium by Erik Oltmans