Financial savings just the beginning for CIOs who understand code quality
Businesses need to understand the quality of the code in their applications if they are to avoid unnecessary costs and glitches
Whether a multibillion-pound financial firm or an online training company, software is the lifeblood of an organisation. If core applications don’t work, business stops.
The move to digital business models puts pressure on software development teams to create and adapt software more quickly and at a lower cost, which in turn increases the risk of things going wrong.
But while board-level directors might have blank faces when IT approaches them about the importance of understanding software code quality, there is hope for CIOs seeking extra resources to improve software quality. The ability to use metrics to back up anecdotal evidence will help CIOs win the argument.
At an event hosted by Cast, a company that helps its customers understand software quality, IT leaders from companies including a US financial services giant, Sony Pictures Entertainment, ING, Sita, and Dutch training and education organisation NCOI, described the benefits they have reaped by gaining visibility of the software code that underpins their business.
A recent Cast survey of 500 developers across four countries suggested that a third of developers are not held accountable for poor code quality. This is because businesses do not have information about it at their disposal.
It found that more than a third (37%) of developers are not graded on code quality. In France, this figure goes up to 45%, compared with 39% for Germany and the UK, and 27% for the US. Due to this lack of software intelligence across internal teams, businesses are paying for code that is below the required quality, and suppliers are not incentivised to improve.
IT downtime can be costly
The stakes are high. Toine van Eeden, CIO at NCOI, said a large proportion of customers find the company’s courses online, so if systems are down, the company’s business is, in effect, offline. A couple of hundred contact centre workers will simply be keeping seats warm as people looking for the right educational course go elsewhere. “Every hour we are offline means €100,000 in lost sales,” he said.
Understanding software quality through a software intelligence program is the answer for Cast customers. By running their code through Cast’s application intelligence platform, they can get metrics about software quality.
NCOI, a 20-year-old organisation that offers online and campus-based training and education, started using the platform about a year ago. CIO van Eeden, who is not an IT professional by training, sits on the company’s board.
Read more about Cast software
- Software analysis and measurement company Cast conducted its 2017 developer survey with a twist, in a bid to uncover whether developers are being held accountable for the code they create.
- Testing expert Matthew Heusser attended Cast 2017 and was surprised to hear why testing less might lead to better software. Here are his key takeaways.
- In this week’s Computer Weekly, our latest buyer’s guide looks at software testing and code quality, and examines how to test effectively when using agile development. We find out about the latest techniques to defeat SQL injection attacks – a method of hacking that has remained undefeated for 15 years.
Despite the company’s relative youth, it has acquired companies that date back to the 19th century, hence it has had to integrate a host of software applications, including legacy systems, from the acquisitions. “When we acquire companies, we do not keep the legacy systems, but paint them in the colour of our company,” said van Eeden.
NCOI’s big applications, which take up the most development time, are its enterprise resource planning (ERP) system and a portal that supports students and 6,000 teachers.
The student and teacher portal is currently being built, while the ERP system is being replaced, so there is a lot of software development work being undertaken. All of NCOI’s development is carried out by a supplier in a nearshore location in Romania.
Streamlining software development
When van Eeden joined the company, he quickly realised that its software development processes were inefficient. “When I entered the company two years ago, we had 80 people in Romania. We only turn over €256m, so this number seemed ludicrous. But the company was making so many changes to software that it needed them. After looking deeper, it became clear that this was not being managed,” he said.
“We used to just answer the suppliers’ questions and they would build it, and we would then ask them to test it because we were too busy. Then we would often get things back and find it was not what we asked for.”
But over the past 12 months, using Cast’s platform to help it understand the software it has, NCOI has been changing this. “We make sure we are more involved, to ensure we don’t provide developers with loads of irrelevant information,” said van Eeden.
“We decided only to ask for something if we really knew what we wanted, otherwise you get a lot of bouncing backwards and forwards between the business and developer. These developers cost a lot of money, so we now only ask questions if we know they can deliver.”
He said many companies think the suppliers manage everything, so they end up in a situation where nobody manages it and there is no incentive for the supplier to do the best it possibly can.
In the past, if NCOI wanted to do something new it would just request more developers. The people in control at the time had lost control, said van Eeden, so the company started using metrics to see how bad it was. “I am not really a tech guy, but I like to have facts so I asked around for help with the problem.”
Toine van Eeden, NCOI
Working with a benchmarking company, van Eeden was put in contact with Cast, which now provides NCOI with a platform-based software intelligence service. “We hand them the code and they put it in a machine that analyses everything and tells us the quality in terms of productivity, security and other things, and then a benchmarking firm takes it and compares it to the market.
It is not just about cutting costs, but improving development productivity and code quality. In the past year, NCOI has fed code into the Cast system four times, but is moving to a contract to enable it to do so monthly to keep up with more regular software updates. “This is so we can refresh our portal every month,” said van Eeden.
Ironically, since using the Cast system NCOI has been using more developers because it is doing more development. “For our core ERP application, we have doubled software development productivity,” said van Eeden. “My output doubled, and the quality in the sense of downtime and the number of bugs also improved dramatically.”
Van Eeden said he knows there have been no software outages since the company has been using the software intelligence platform, whereas previously it “didn’t even look at the robustness of systems”.
How to justify the cost of software intelligence
On the face of it, the NCOI story is a good use case. But convincing the non-technical board of a financial giant to change the firm’s software development processes is not an easy sell for CIOs.
For example, the financial services sector is heavily reliant on systems, with any downtime or security breach potentially highly damaging. But that isn’t always enough to entice the board to invest in software to measure the quality of code, according to one CIO at a large US financial services firm. He explained how his team succeeded in justifying a software intelligence investment and some of the benefits it has generated.
“If I go back to 2014 [before we measured software quality] and calculate the cost of the function points then compared to now, we have saved the company about $200m in an annual investment cycle, and that has gone straight back into capacity to build better systems and being agile as a company,” he said.
“I am a firm believer in better and faster, with lower risk, higher quality and faster output. You only get that if you invest a lot in engineering,” he said.
The company is using Cast in all of its processes, and is using metrics from the platform to justify its software development budget demands. “This is an ongoing journey, but we had a specific set of targets to meet in the business case. We were able to use the Cast numbers to convince the CFO [chief finance officer], CEO and board to prove that we had improved,” he said.
Financial services CIO
The company used Cast as part of a transformation of IT at the company, which was part of a bigger project. “As part of the big project, there was a CFO team looking at this to see if we were doing what we were supposed to [in software development]. They were looking at hundreds of metrics, so when we said software was better quality, better time to market, with more functionality and all those kind of things, they could see it was true. The close monitoring we had from the finance side generated confidence that we were moving in the right direction.”
He said when they went on to share details with the CEO and the board, they presented a more overall picture, with some anecdotal stories to help the board understand. The anecdotal evidence to get them in the door, and then delivering the enterprise view with the metrics later, with the CFO team confirming the team’s findings.
As an example of anecdotal evidence, the CIO said he reminded board members that resetting the mortgage rates in a big application, which had previously taken nine months and cost $1m, was more recently done in one week for $10,000. He said taking examples like that to the board helps them understand the value.