NASA's next space telescope will fly or fail on the strength of its software.
MIRROR IMAGE: The James Webb Space Telescope will include a folding, segmented primary mirror that will adjust to shape after launch and detectors able to record extremely weak signals, NASA says. Above, a full-scale model of the telescope was at the Rochester Museum & Science Center, in Rochester, N.Y., in August 2005.
Above, a full-scale pathfinder of the telescope's sunshield is checked over at Northrop Grumman's Space Technology facility in Redondo Beach, Calif., in November 2006.
If something doesn't work right, there will be no space shuttle trip to give astronauts the chance to fix it.
Instead, the Webb'an infrared telescope designed to find the first galaxies that formed in the early stages of the universe's creation'will be software-dependent. And maintaining the telescope will depend on the reliability and consistency of the code.
Space agencies from several different countries'the Canadian Space Agency and members of the 17-country European Space Agency'are developing the software to operate the Webb's guidance, navigation and control systems, command and data handling, and the integrated science instrument module that houses the four primary instruments.
Use this Software
NASA has mandated that the agencies develop their systems using open-standards software from IBM Corp.
The software, Rational Rose Real-time, uses the Unified Modeling Language's visual modeling development software, which acts as a blueprint for the entire multidecade project, letting the various international developers 'drag and drop' software code directly into the blueprint, where it's then available automatically across the entire project.
The way NASA and its partners are developing the Webb (named for NASA's second administrator, who during the 1960s oversaw the Apollo program), is a real contrast to the development of software for the Hubble Space Telescope'Webb's world-famous predecessor.
While the Hubble, too, was a collaboration between NASA and the European Space Agency, the various organizations used proprietary software in developing systems for the telescope. That means that maintenance, changes and fixes for components and instruments required multiple software tools.
The Hubble's woes are well known. Launched in 1990, astronomers quickly discovered that the telescope's primary mirror was flawed; it took a trip by the space shuttle Endeavour in 1993 and major repairs by astronauts to fix it.
Since then, there have been three further trips to the telescope to replace parts and add new instruments, and a fourth trip is planned in order to keep the Hubble in orbit until the Webb can be launched.
Just last week, the Hubble's main camera shut down. NASA officials said they expected to be able to restore only part of its function, until the shuttle visit next year.
To keep the same problem from arising with the Webb, NASA selected IBM's software six or seven years ago, said Glenn Cammarata, the agency's integrated science instrument module flight software engineer on the project.
'The complexity level in software is difficult,' he said. 'This is for the control system for the instrument side. ... If all goes right, the vendor that's doing the satellite is also supposed to use the Rational tool.'
Cammarata said the IBM tool's graphical capabilities drove NASA's decision.
'At that time, no other vendor provided such a UML-like graphical tool to develop software with. There was nothing like it,' Cammarata said. 'We've been using the tool for the telescope for over two years. We have never had one issue'we have not had one bug come up related to the ... auto generation or the real-time services library.'
NASA and its partners are rigorously testing the software for the various modules of the telescope, Cammarata said.
'This is no different than any onboard software updates [we will] make. On the ground we make changes and load changes; everything comes down to bits and bytes,' he said. 'Basically, you do maintenance the same way. ... We'll continue to use our models on the ground.'
Code can be Recycled
Swati Moran, IBM Software's market manager for aerospace and defense, said the tool's blueprints are what allow the reusability.
'This is a great example for other government agencies across any software development program,' she said. 'If I want to reuse the code from the [Webb] on the next telescope, they can innovate or expand off the blueprints.'
Cammarata agreed that the telescope software has the potential to be reused, but he cautioned it is not as simple as just grabbing the appropriate lines of code.
'What facilitates reusing code is not just the software, it's the hardware you're running on,' he said.
'If we want to use the same engineering concepts on a telescope, and use the same hardware cards and processor, then you're facilitated. It's not 100 percent true, because sometimes there are components that aren't tied to hardware.'
NEXT STORY: Incoming