Feeds

Boffins zapped '2,000 bugs' from Curiosity's 2 MILLION lines of code

Billion-dollar laser-firing nuke tank - what could go wrong?

Choosing a cloud hosting partner with confidence

With a $2.5bn price tag, a 350-million mile journey and 2 million lines of C and some C++ code, the only bugs NASA wants its Curiosity rover to find are those possibly beneath the Martian surface.

And it may not be a particularly glamorous job, but software analysis outfit Coverity was the company tasked with "ensuring that every software defect is found and fixed before launch".

Roughly 2,000 bugs were zapped in the rover's code, estimates Andy Chou, the chief technical officer of Coverity, although NASA is schtum on the exact figures.

"For typical software (which this clearly isn't), it's not unusual to find approximately 1 defect for every thousand lines of code," Chou said. "For a project with 2 million lines of code, it would therefore not be unusual for Coverity to be able to find about 2,000 defects."

The company's static analysis tool was used to examine the source code written by NASA's Jet Propulsion Laboratory scientists - specifically the systems that guided Curiosity's flight to the Red Planet and are now running all of the laser-armed robot's onboard functions. At this stage, every bug correction is vital – after all, there's no service desk on Mars.

The source code was fed through Coverity's package, which examined the code to identify flawed logic and common programming gaffes. The error reports were then sent back to NASA's JPL developers so they could sort them out.

Coverity's tool checked the software that controls all the functions of the Rover. Credit: NASA

According to the software vendor's communications manager Chris Adlard, NASA threw all kinds of tests at the code. "You can't really test the Mars landing, so NASA wanted to use every possible way of pruning out mistakes, that's why they were using a lot of methods," he said.

The automated analysis tool was developed from research cooked up by Stanford University boffins. The tech analyses C/C++, Java and C# code bases as it is being compiled for hard-to-spot critical defects including resource leaks, memory corruptions and null pointer dereferences. It also looks at code behaviour to iron out flaws.

Rock-zapping Curiosity is the most complicated project NASA has ever launched to date, and testing was of huge importance. However a software checker can't catch all mistakes: the error that wrecked the space agency's Mars Climate Orbiter wouldn't have been spotted by Coverity's software, Chou admitted. That particular cock-up was caused by boffins mixing up measurements in imperial and metric units.

It's not the first time the static analysis tool has been called up to check the globe's biggest projects: it was also responsible for pulling the bugs out of CERN's particle accelerator, which included 3.5 million lines of code in the ROOT framework - the software that sifted the petabytes of data coming out of the machine - and 50 million lines in associated science projects. The Large Hadron Collider's ROOT code was more buggy than average: 40,000 bugs were found and squashed. ®

Beginner's guide to SSL certificates

More from The Register

next story
FYI: OS X Yosemite's Spotlight tells Apple EVERYTHING you're looking for
It's on by default – didn't you read the small print?
Russian hackers exploit 'Sandworm' bug 'to spy on NATO, EU PCs'
Fix imminent from Microsoft for Vista, Server 2008, other stuff
Microsoft pulls another dodgy patch
Redmond makes a hash of hashing add-on
'LulzSec leader Aush0k' found to be naughty boy not worthy of jail
15 months home detention leaves egg on feds' faces as they grab for more power
Kill off SSL 3.0 NOW: HTTPS savaged by vicious POODLE
Pull it out ASAP, it is SWISS CHEESE
Facebook slurps 'paste sites' for STOLEN passwords, sprinkles on hash and salt
Zuck's ad empire DOESN'T see details in plain text. Phew!
China is ALREADY spying on Apple iCloud users, watchdog claims
Attack harvests users' info at iPhone 6 launch
prev story

Whitepapers

Forging a new future with identity relationship management
Learn about ForgeRock's next generation IRM platform and how it is designed to empower CEOS's and enterprises to engage with consumers.
Cloud and hybrid-cloud data protection for VMware
Learn how quick and easy it is to configure backups and perform restores for VMware environments.
Three 1TB solid state scorchers up for grabs
Big SSDs can be expensive but think big and think free because you could be the lucky winner of one of three 1TB Samsung SSD 840 EVO drives that we’re giving away worth over £300 apiece.
Reg Reader Research: SaaS based Email and Office Productivity Tools
Read this Reg reader report which provides advice and guidance for SMBs towards the use of SaaS based email and Office productivity tools.
Security for virtualized datacentres
Legacy security solutions are inefficient due to the architectural differences between physical and virtual environments.