Software fails - a ‘big bowl of spaghetti’ Monday, 13 June 2016

News article written by Corbett Communications. The statements made or opinions expressed do not necessarily reflect the views of Engineers Australia.

Telecommunications and banking software fails aside, as technology has taken a ubiquitous role in people's lives, with businesses and countries relying heavily on its high-speed, high-functioning use, it's likely engineers will be the scapegoats of software and system failures, many of which are highly complex issues. And this can come in the form of the smallest personal devices to communications systems, manufacturing processes through to military defence.

Naughty autos

Big car makers and their software have been in the news in recent years. Volkswagen was in hot water last year when it was found to have been installing “defeat devices” – software that allowed vehicles to cheat emissions testing which made them appear cleaner. The German car maker’s software “knew” when it was being tested, allowing it to switch emissions controls on and off due to its algorithm. This used steering patterns, engine use and things like atmospheric pressure to determine if it was being tested.

Toyota has been in trouble too with its “big bowl of spaghetti” code, so described by one of its own programmers some years ago. The code belongs to the 2005 Toyota Camry model which was cited in court cases in the US. Testimony of two software design experts who had reviewed Toyota’s software engineering process and the source code for the Camry and concluded the system was defective and dangerous, riddled with bugs and gaps in its fail-safe systems. Professor Phil Koopman of Adelaide’s Carnegie Mellon University may find his case study interesting. 

Nissan recalled more than one million vehicles across eight models worldwide, mainly in the US, in 2013 and 2014 due to a "software glitch" in which the system was unable to detect an adult sitting on the passenger front seat, leading to the air bag not being activated in an accident.

Ground to air

Last year a software malfunction of the F-35 joint strike fighter was reported in the accurate detection of targets when the aircraft flew in formation. The US Air Force was waiting on the combat version of the aircraft for marine use, the F-35B, when the problem related to sensors was identified.

The fighter jets are engineered to combine information from multiple sources into a single series of screens for the pilot, such as from radar, electro-optical target system (EOTS) infra-red sensor for air and ground targeting, laser designation and range-finding, and digital maps. In addition, there is the craft's distributed aperture system, a series of six electro-optical sensors that gives information to the pilot including precision tracking, warning of an approaching threat or missile, and fire control capability. Add that to the F-35's active electronically scanned array radar that can track electromagnetic signals and returns from synthetic aperture radar to paint a picture of terrain contours, cockpit and helmet-mounted display screens, a data link for real-time information sharing with other aircraft, Block 2B software that can fire an advanced medium range air to air missile and other artillery, and special short-take-off and landing navy variant make the F-35 a complex piece of computing machinery.

Up to the stratosphere

In January this year, the failure and removal of the oldest GPS satellite in use, the SVN 23 satellite which was launched in 1990, triggered a software bug causing a time spike in the global positioning system resulting in a discrepancy of 13 microseconds.  While it seems brief, "significant navigation errors" could have been caused according to Richard Easther, head of the University of Auckland's physics department.

"The rule of thumb is that for every nanosecond of error, you could be out by as much as a foot. An error of 13 microseconds or 13,000 nanoseconds works out as just under four kilometres." he told IT News.

Investigation revealed the GPS ground software affected the time on legacy L-band signals. While the discrepancy lasted several hours there were no reports of GPS-aided munitions issues in relation to the 25-year old satellite that had well exceeded its 7.5 year life expectancy.

Down to Earth

In the UK, householders using a 'smart' heating app to control the boilers in their homes saw indoor temperatures peak at 32C without being instructed to do so due to a "software glitch" that had been not corrected for more than three months. Concerns were raised over this causing fire risks as well as soaring energy bills, but "engineers are now working on a solution" the Daily Mail reported in February.

Stock exchanges in Russia and Singapore were brought to a trading halt in 2014 following separate "software malfunctions". The MICEX exchange cause a two-hour outage that made it impossible to operate the trading and clearing system while the SGX blamed a three-hour halt on a "software defect".

In India last year, headlines read in block letters, "OUT OF ORDER: THE SOFTWARE PROVIDED BY A COMPANY TO THE COMPUTER NETWORK CENTRE OF THE HOSPITAL HAS FAILED TO OPERATE". This software issue deprived more than 10,800 people of free medical services including x-rays, medicine, blood tests and consultations as it could not detect the names and addresses of the local health scheme's card holders.

And something as simple as obtaining a driver's permit has seen software allege fraud against 15-year-old identical twins who the facial recognition program would not accept were two people, insisting they were one, while another set of older twins elsewhere in the US had a similar problem with both licences cancelled because one twin's licence had expired.