Composable Software for Space Exploration
NASA is preparing to return humans to the Moon, and then on to Mars. With a new generation of spacecraft will come a new generation of mission control technologies. At NASA Ames, we are developing component software technology that can change the way we think about, build and use software. For most of the relatively short lifetime of personal computing, we have used software as monolithic applications, installed locally on our personal computers. At the dawn of personal computing, software was not created as pre-packaged monoliths. More than thirty years ago at Xerox PARC, functionality was added to software by simply adding objects to an image. The evolution to pre-packaged software applications was dictated by marketing and business needs, and hardware constraints. With the Internet we are seeing new forms of software, as distributed services, mashups and widgets. We are creating the infrastructure required to build software out of composable user objects. This allows us, the users, to assemble software from small pieces, or building blocks of functionality, thus removing the constraints of hard coded pre-packaged software which limits our work to a pre-determined set of functions and interactions. With composable software we will be free to assemble software to do what we, as users, want to do.
Jay Trimble is Computer Scientist, NASA ARC, Group Lead of Ubiquitous Computing and User Centered Design Group. He is the Project Lead for Mission Control Technologies (MCT) initiative. MCT is a new framework for the creation of mission systems using collaborative component technologies. At the Jet Propulsion Laboratory, he was Operations Director for Shuttle Imaging Radar-C, managing design and development of the mission operations system and payload operations control center for an Earth Observing Radar that flew two successful missions on the Space Shuttle Endeavour in 1994. He was a science support team member for the Voyager Neptune Encounter in 1989. At NASA Johnson Space Center, he had a payload operations position in the mission control center where he developed checklists, procedures, command and control interfaces, and displays for the operation of payloads on the Shuttle.