NASA STTR 2015 Solicitation


PROPOSAL NUMBER: 15-1 T11.01-9878
RESEARCH SUBTOPIC TITLE: Information Technologies for Intelligent and Adaptive Space Robotics
PROPOSAL TITLE: Advanced Tools for Effective Automated Test Generation

NAME: Aries Design Automation, LLC NAME: Oregon State University
STREET: 2705 West Byron Street STREET: 116 Covell Hall, Office of Research and Economic Development
CITY: Chicago CITY: Corvallis
STATE/ZIP: IL  60618 - 3745 STATE/ZIP: IL  97331 - 2409
PHONE: (773) 856-6633 PHONE: (541) 737-6525

PRINCIPAL INVESTIGATOR/PROJECT MANAGER (Name, E-mail, Mail Address, City/State/Zip, Phone)
Dr. Miroslav N Velev
2705 West Byron Street
Chicago, IL 60618 - 3745
(773) 856-6633

CORPORATE/BUSINESS OFFICIAL (Name, E-mail, Mail Address, City/State/Zip, Phone)
Dr. Miroslav N Velev
2705 West Byron Street
Chicago, IL 60618 - 3745
(773) 856-6633

Estimated Technology Readiness Level (TRL) at beginning and end of contract:
Begin: 3
End: 4

Technology Available (TAV) Subtopics
Information Technologies for Intelligent and Adaptive Space Robotics is a Technology Available (TAV) subtopic that includes NASA Intellectual Property (IP). Do you plan to use the NASA IP under the award?

TECHNICAL ABSTRACT (Limit 2000 characters, approximately 200 words)
Testing is a critical activity in any software project. It is particularly important for intelligent and adaptive (autonomous) space robotics software, since the nature of autonomy is such that many behaviors in deployment will never be seen before, without extensive testing. The primary approach to testing such systems at present is manual testing, which is expensive, time-consuming and, most importantly, often ineffective. The best alternative to manual testing is automated generation of test cases. Current automated test generation tools are mostly academic prototypes. Many simply produce unit tests over all methods of a Java program, and have a single algorithm for testing. The most successful automated test generation efforts for real-world large systems have been custom work of experts with deep understanding of the application. At present, such experts using automated test generation end up writing the system in the language of the software under test, with little tool support. Such systems are brittle and cost prohibitive. Much labor is duplicated due to lack of tools. We will develop a full-featured language and tool chain for automated test generation development, based on the open source Template Scripting Testing Language (TSTL). We will produce a commercial prototype version based on TSTL that supports efficient C and C++ automated test generation and code verification. We will provide developers with prototypes of sophisticated test generation algorithms and fully documented example test systems on which to base their own efforts. The products of Phase I will be a revised TSTL language standard, a prototype tool for producing test systems for C and C++ code, prototype implementations of highly effective automated test algorithms, and documented examples of testing systems using TSTL.

POTENTIAL NASA COMMERCIAL APPLICATIONS (Limit 1500 characters, approximately 150 words)
Testing of complex software systems is a major activity in almost all NASA missions, particularly those involving unmanned autonomous robotic systems. These tools can be applied to improve the effectiveness and re-usability of NASA software testing systems, while reducing labor costs (or enabling more effort in test development with the same labor). The language chosen for implementation is C, the primary language of development of real-time embedded robotics systems at NASA. Use of automated test generation is a long-standing goal of NASA software development efforts, with major research initiatives at the Jet Propulsion Laboratory and NASA Ames Research Center that we expect to be potential early adopters. The design of our system is informed by experience with building test automation tools for major NASA missions, so the applicability of the tools is likely to be high.

POTENTIAL NON-NASA COMMERCIAL APPLICATIONS (Limit 1500 characters, approximately 150 words)
Complex software systems require effective testing, especially as the everyday world increasingly relies on ubiquitous embedded software, and with the emergence of autonomous systems (like self-driving cars) as near-future possibilities. In addition to cyberphysical systems that have an impact on safety, many software systems have potential security problems with a high economic cost. Effective automated test generation is one of the most effective ways for companies faced with potentially disastrous software bugs to mitigate the risk of software failure. The tools developed in this project can provide a cost-effective way to apply more sophisticated testing techniques and improve software reliability without having to hire automated software testing experts. The languages chosen (C and C++) are widely used in embedded software systems, and are also the languages in which much security software is written (e.g., the recent Heartbleed and Goto Fail security flaws were C code errors), so effective testing tools for C/C++ are a driving commercial need. All companies that develop complex software in C/C++ will be potential customers.

TECHNOLOGY TAXONOMY MAPPING (NASA's technology taxonomy has been developed by the SBIR-STTR program to disseminate awareness of proposed and awarded R/R&D in the agency. It is a listing of over 100 technologies, sorted into broad categories, of interest to NASA.)
Analytical Methods
Autonomous Control (see also Control & Monitoring)
Circuits (including ICs; for specific applications, see e.g., Communications, Networking & Signal Transport; Control & Monitoring, Sensors)
Data Modeling (see also Testing & Evaluation)
Development Environments
Hardware-in-the-Loop Testing
Programming Languages
Simulation & Modeling
Software Tools (Analysis, Design)
Verification/Validation Tools

Form Generated on 04-23-15 15:37