{"projectId":6274,"project":{"projectId":6274,"title":"Static Detection of Bugs in Embedded Software Using Lightweight Verification, Phase II","startDate":"2007-12-01","startYear":2007,"startMonth":12,"endDate":"2009-11-30","endYear":2009,"endMonth":11,"programId":73,"program":{"ableToSelect":false,"acronym":"SBIR/STTR","isActive":true,"description":"<p>The NASA SBIR and STTR programs fund the research, development, and demonstration of innovative technologies that fulfill NASA needs as described in the annual Solicitations and have significant potential for successful commercialization. If you are a small business concern (SBC) with 500 or fewer employees or a non-profit RI such as a university or a research laboratory with ties to an SBC, then NASA encourages you to learn more about the SBIR and STTR programs as a potential source of seed funding for the development of your innovations.</p><p><strong>The SBIR and STTR programs have 3 phases</strong>:</p><ul><li><strong>Phase I</strong> is the opportunity to establish the scientific, technical, and commercial feasibility of the proposed innovation in fulfillment of NASA needs.</li><li><strong>Phase II</strong> is focused on the development, demonstration and delivery of the proposed innovation.</li></ul><p>The SBIR and STTR Phase I contracts last for 6 months with a maximum funding of $125,000, and Phase II contracts last for 24 months with a maximum funding of $750,000 - $1.5 million.</p><ul><li><strong>Phase III</strong> is the commercialization of innovative technologies, products, and services resulting from either a Phase I or Phase II contract. Phase III contracts are funded from sources other than the SBIR and STTR programs and may be awarded without further competition.</li></ul><p><strong>Opportunity for Continued Technology Development Post-Phase II</strong>:</p><p>The NASA SBIR/STTR Program currently has in place two initiatives for supporting its small business partners past the basic Phase I and Phase II elements of the program that emphasize opportunities for commercialization. Specifically, the NASA SBIR/STTR Program has the Phase II Enhancement (Phase II-E) and Phase II eXpanded (Phase II-X) contract options.&nbsp;</p><p><strong>Please review the links below to obtain more information on the SBIR/STTR programs.</strong></p><ul><li><strong><a target=\"_blank\" href=\"http://sbir.gsfc.nasa.gov/sites/default/files/ParticipationGuide.pdf\">Participation Guide</a></strong></li></ul><p>Provides an overview of the SBIR and STTR programs as implemented by NASA</p><ul><li><strong><a href=\"http://sbir.gsfc.nasa.gov/solicitations\">Program Solicitations</a></strong></li></ul><p>Provides access to the annual SBIR/STTR Solicitations containing detailed information on the program eligibility requirements, proposal instructions and research topics and subtopics</p><ul><li><strong><a href=\"http://sbir.gsfc.nasa.gov/prg_sched_anncmnt\">Schedule and Awards</a></strong></li></ul><p>Schedule and links for the SBIR/STTR solicitations and selection announcements</p><ul><li><strong><a href=\"http://sbir.gsfc.nasa.gov/content/additional-sources-assistance\">Sources of Assistance</a></strong></li></ul><p>Federal and non-Federal sources of assistance for small business</p><ul><li><strong><a href=\"http://sbir.gsfc.nasa.gov/abstract_archives\">Awarded Abstracts</a></strong></li></ul><p>Search our complete archive of awarded project abstracts to learn about what NASA has funded</p><ul><li><strong><a href=\"http://sbir.gsfc.nasa.gov/content/frequently-asked-questions\">Frequently Asked Questions</a></strong></li></ul><p>&nbsp;Still have questions? Visit the program FAQs</p>","parentProgram":{"ableToSelect":false,"isActive":true,"description":"Catalyst is a portfolio of early stage programs that specialize in different innovation constituencies and mechanisms to push the state of the art in aerospace technology development","programId":92327,"responsibleMd":{"canUserEdit":false,"locationEdit":false,"organizationRolePretty":"","organizationTypePretty":""},"title":"Catalyst","manageGaps":false,"acronymOrTitle":"Catalyst"},"parentProgramId":92327,"programId":73,"responsibleMd":{"organizationId":4875,"organizationName":"Space Technology Mission Directorate","acronym":"STMD","organizationType":"NASA_Mission_Directorate","canUserEdit":false,"locationEdit":false,"organizationRolePretty":"","organizationTypePretty":"NASA Mission Directorate"},"responsibleMdOffice":4875,"stockImageFileId":36648,"title":"Small Business Innovation Research/Small Business Tech Transfer","manageGaps":false,"acronymOrTitle":"SBIR/STTR"},"description":"Validating software is a critical step in developing high confidence systems.  Typical software development practices are not acceptable in systems where failure leads to loss of life or other high costs.    Software best practices for high confidence systems are often codified as coding rules. Adhering to these practices can increase software readability and predictability, thereby enhancing quality. However, adherence is limited by the lack of high-quality tools to measure adherence automatically. Checking rule conformance requires a diverse set of software analysis technologies, ranging from syntactic analysis to sophisticated inference of runtime behavior.  By combining lightweight verification techniques with other scalable analysis techniques that target syntactic and other static properties, we will create a tool that flags violations for almost all the rules typically applied to high-assurance code.   Our Phase I work demonstrated the feasibility of this approach. In Phase I, we developed a tool for checking compliance with rules developed for JPL flight software. The tool leveraged GrammaTech's existing technology for static analysis, including facilities for analyzing a program's abstract syntax tree, control-flow graph, and inferred runtime behavior. The prototype successfully checks a set of rules designed for high-assurance software. Our experiments show that the tool adds only minimal overhead to our CodeSonar bug-finding tool, and generates few or no spurious results that could distract or annoy users.   ","releaseStatus":"Released","status":"Completed","viewCount":688,"destinationType":[],"lastUpdated":"01/27/25","favorited":false,"detailedFunding":false,"projectContacts":[],"programContacts":[{"contactId":206378,"canUserEdit":false,"firstName":"Jason","lastName":"Kessler","fullName":"Jason L Kessler","fullNameInverted":"Kessler, Jason L","middleInitial":"L","email":"jason.l.kessler@nasa.gov","receiveEmail":"Subscribed_User","programContactRole":"Program_Director","programContactId":143,"programId":73,"programContactRolePretty":"Program Director","projectContactRolePretty":""},{"contactId":62051,"canUserEdit":false,"firstName":"Carlos","lastName":"Torrez","fullName":"Carlos Torrez","fullNameInverted":"Torrez, Carlos","email":"carlos.torrez@nasa.gov","receiveEmail":"Subscribed_User","programContactRole":"Program_Manager","programContactId":194,"programId":73,"programContactRolePretty":"Program Manager","projectContactRolePretty":""}],"leadOrganization":{"organizationId":4946,"organizationName":"Jet Propulsion Laboratory","acronym":"JPL","organizationType":"FFRDC_2fUARC","city":"Pasadena","stateTerritoryId":59,"stateTerritory":{"abbreviation":"CA","country":{"abbreviation":"US","countryId":236,"name":"United States"},"countryId":236,"name":"California","stateTerritoryId":59,"isTerritory":false},"country":{"abbreviation":"US","countryId":236,"name":"United States"},"countryId":236,"zipCode":"91109","projectId":6274,"projectOrganizationId":22609,"organizationRole":"Lead_Organization","canUserEdit":false,"locationEdit":false,"organizationRolePretty":"Lead Organization","organizationTypePretty":"FFRDC/UARC"},"otherOrganizations":[{"organizationId":4946,"organizationName":"Jet Propulsion Laboratory","acronym":"JPL","organizationType":"FFRDC_2fUARC","city":"Pasadena","stateTerritoryId":59,"stateTerritory":{"abbreviation":"CA","country":{"abbreviation":"US","countryId":236,"name":"United States"},"countryId":236,"name":"California","stateTerritoryId":59,"isTerritory":false},"country":{"abbreviation":"US","countryId":236,"name":"United States"},"countryId":236,"zipCode":"91109","projectId":6274,"projectOrganizationId":22609,"organizationRole":"Lead_Organization","canUserEdit":false,"locationEdit":false,"organizationRolePretty":"Lead Organization","organizationTypePretty":"FFRDC/UARC"},{"organizationId":3456,"organizationName":"GrammaTech, Inc.","organizationType":"Industry","city":"Ithaca","stateTerritoryId":55,"stateTerritory":{"abbreviation":"NY","country":{"abbreviation":"US","countryId":236,"name":"United States"},"countryId":236,"name":"New York","stateTerritoryId":55,"isTerritory":false},"country":{"abbreviation":"US","countryId":236,"name":"United States"},"countryId":236,"zipCode":"14850-3250","uei":"CBXRSPNRF8F9","cageCode":"0H7V8","congressionalDistrict":"New York 19","projectId":6274,"projectOrganizationId":5890,"organizationRole":"Supporting_Organization","canUserEdit":false,"locationEdit":false,"organizationRolePretty":"Supporting Organization","organizationTypePretty":"Industry"}],"primaryTx":{"taxonomyNodeId":11296,"taxonomyRootId":8817,"parentNodeId":11294,"code":"TX11.1.2","title":"V&V of Software systems","description":"This area covers the procedures and testing used to determine that a software system meets the requirements (verification) and fulfills its intended purpose (validation).","exampleTechnologies":"Model-based testing, Payloads and Components Real-Time Automated Test System (PACRATS), Code coverage testing techniques, continuous automated software analysis and testing techniques, SysML Model Based Systems Engineering (MBSE)","level":3,"hasChildren":false,"selected":false,"isPrimary":true,"hasInteriorContent":true},"primaryTxTree":[[{"taxonomyNodeId":11293,"taxonomyRootId":8817,"code":"TX11","title":"Software, Modeling, Simulation, and Information Processing","level":1,"hasChildren":true,"selected":false,"hasInteriorContent":true},{"taxonomyNodeId":11294,"taxonomyRootId":8817,"parentNodeId":11293,"code":"TX11.1","title":"Software Development, Engineering, and Integrity","description":"This area covers technologies for the design, development, testing, and verification of software systems.","level":2,"hasChildren":true,"selected":false,"hasInteriorContent":true},{"taxonomyNodeId":11296,"taxonomyRootId":8817,"parentNodeId":11294,"code":"TX11.1.2","title":"V&V of Software systems","description":"This area covers the procedures and testing used to determine that a software system meets the requirements (verification) and fulfills its intended purpose (validation).","exampleTechnologies":"Model-based testing, Payloads and Components Real-Time Automated Test System (PACRATS), Code coverage testing techniques, continuous automated software analysis and testing techniques, SysML Model Based Systems Engineering (MBSE)","level":3,"hasChildren":false,"selected":true,"hasInteriorContent":true}]],"technologyOutcomes":[],"libraryItems":[],"states":[{"abbreviation":"CA","country":{"abbreviation":"US","countryId":236,"name":"United States"},"countryId":236,"name":"California","stateTerritoryId":59,"isTerritory":false},{"abbreviation":"NY","country":{"abbreviation":"US","countryId":236,"name":"United States"},"countryId":236,"name":"New York","stateTerritoryId":55,"isTerritory":false}],"endDateString":"Nov 2009","startDateString":"Dec 2007"}}