Intelligent adaptive computer systems to control manned and unmanned spacecraft are among the most complex software systems engineered. Budget constraints and software reliability requirements pull in opposite directions, forcing NASA software engineers to adopt practices and methodologies that maximize productivity of developers while reducing the risk of programming errors. This project will create software development tools that reduce the burden of detail that programmers must manage and automate verification of important system attributes, thereby reducing the likelihood of software-induced system failure. Unlike software tools to support traditional commercial development, this project focuses on the unique requirements of embedded systems (which are memory and power constrained) and real-time systems (which must perform certain operations under precise timing constraints). The tools proposed in this research, the designs of which have been motivated by discussions with current NASA software engineers, are not currently available in the embedded real-time software marketplace.
Potential NASA Commercial Applications: (LIMIT 150 WORDS) Intelligent adaptive mission-critical software places important roles in many space missions, including deep space probes, autonomous and remote-controlled planet surface exploration, communication and intelligence gathering satellites, and manned space vehicles. This same class of software also plays important roles in certain ground-based mission control activities. The tools described in this research proposal make it possible to improve the functionality and quality of mission-critical software for lower development costs and less calendar time.
Potential NON-NASA Commercial Applications: (LIMIT 150 WORDS) There are many related industries that will likewise benefit from improved technologies to support mission-critical software systems. Among these, we include telecommunications infrastructure (e.g. fiber optic switches, metropolitan area switches, data networking gateways and firewalls), industrial automation, commercial avionics, air traffic control, defense systems, automotive control, and medical instrumentation.