A Fujitsu software developer who raised the issue of bugs in the Horizon IT system said the company did not properly fix the problem because it would have been too expensive and time-consuming, the inquiry into the Post Office scandal has heard.
Faults in Fujitsu’s Horizon IT system resulted in the Post Office wrongfully pursuing and prosecuting more than 900 post office operators for theft, fraud and false accounting in what has been called the most widespread miscarriage of justice in UK history.
Gerald Barnes, a software developer at Fujitsu since 1998, worked on numerous technical tasks relating to the shift from the Post Office’s use of paper-based accounting methods to the automated Horizon IT system.
As early as 1998, it was found that there were “significant deficiencies in the product, code and design” of software being used to move functions online.
“Error handling wasn’t as good as it could have been if designed properly from the start,” said Barnes, speaking at the inquiry on Wednesday.
The inquiry into the scandal overseen by a judge, Sir Wyn Williams, began last year, and has gained greater public attention since the ITV drama Mr Bates vs the Post Office aired earlier this month. The UK business minister, Kemi Badenoch, has written to Fujitsu to demand talks on how much it would pay towards compensating the victims.
The inquiry heard that in 2008, a glitch in a system called CABSProcess, which automatically summarises a post office’s transactions at around 7pm daily, resulted in users working at the same time having balancing issues.
The system did not make post office operators aware of the problem, an issue Barnes said was referred to as “silent failure”.
“The failure was silent to the postmaster,” he said. “Although it was available [to Fujitsu] in the event log and to diagnosticians. The operator at the Post Office branch would not know anything had gone wrong.”
At first Fujitsu did not look to fix the issue due to its “rarity”, but it eventually did when it became “a higher priority with the [Post Office],” according to an internal Fujitsu email, when it appears to have emerged that the issue affected 195 branches.
In his witness statement to the inquiry, Barnes said that the glitch “highlights a problem that could easily be caused by another system at any time of day. In retrospect, error handling should have been tightened generally.”
Emma Price, counsel to the inquiry, asked Barnes if that problem was a “missed opportunity to address deficient coding practices that led to [other] silent failures”, which resulted in subpostmasters being wrongfully prosecuted.
In an internal message chain at the time, Barnes said: “I hope the [Horizon Online] version is much better.”
“We were just about to replace [legacy] Horizon with HNGx [Horizon Online],” said Barnes at the inquiry. “The better thing to do is to make sure the [Horizon Online] software works. It would have just been too expensive to do a thorough job at that stage. It would have been uneconomic. To comprehensively rewrite the error handling would be a massive job. It would be extremely expensive.”
In 2009, Barnes moved to work with the audit team, which became responsible for pulling data together on post office operators subsequently used in trials.
Around that time, Fujitsu scrapped using a third-party software program that had been in place to, among other tasks, help produce these audit record queries (ARQs).
Fujitsu internally rewrote the code so that Horizon would handle the tasks, but glitches later appeared that meant the ARQs did not provide complete information, something the company was aware could undermine prosecutions if exposed.
“To save [paying] the licence fee, they wanted to get rid of [the third-party supplier],” said Barnes on Wednesday.
In 2010, Barnes worked on a glitch that caused multiple transactions to appear in a spreadsheet without it being clear that it was the same transaction.
It became an “extremely urgent” issue, according to an internal message from Penny Thomas, a manager in Fujitsu’s fraud and litigation office, after up to a third of entries proved to be duplicates.
“If we do not fix this problem, our spreadsheets presented in court are liable to be brought into doubt if duplicate transactions are spotted,” Barnes warned in an internal exchange in 2010. “There are a number of high-profile court cases in the pipeline and it is imperative that we provide sound, accurate records.”
There were also issues with missing transactions caused by a coding “loophole” if Fujitsu teams ran audit queries on post office operators during the “evening service shutdown”.
The team were told to “only run audit queries during the day to prevent the possibility of audit transactions being missed from spreadsheets due to a bug in the code”. The bug was raised in April 2013 but wasn’t fully fixed until November 2014.
Current and former executives at Fujitsu are due to give evidence to the inquiry later this week.