Independent Test Capability (ITC)
|The NASA IV&V Program's Independent Test Capability (ITC) is responsible for acquiring, developing and maintaining adaptable test environments. These test environments enable the NASA's IV&V Program to perform dynamic analysis of software behaviors for multiple NASA missions. The ITC Team is the expert in simulation and the IV&V project teams are experts in the systems. IV&V project teams utilize the solutions developed by the ITC team within the JSTAR laboratory.||
The ITC team currently supports several NASA IV&V projects. Support ranges from developing simulators in-house (software-only or hardware-in-the-loop) or acquiring and maintaining developer's simulators. Below lists each project supported by the ITC team and their approach to setting up a simulation/test environment.
The NASA IV&V Program's In-House Simulation Development
These test environments are simulations that utilize cutting edge technology developed by the ITC team.
Jet Propulsion Lab
Startup Read Only Memory (SuROM) simulator to increase measurable confidence in SuROM functionality
For Juno the ITC team developed a software only simulator to aid in the IV&V project team's investigation of a SuROM boot anomaly seen with the Juno flight software. The simulation environment had the capability of performing memory page fault injections and forcing execution of a corrupt flight software image.
Operational Simulator (GO-SIM)
Goddard Space Flight Center
Simulator including unmodified operational ground system, unmodified flight software, environmental simulator, and science instrument simulators
Global Precipitation Measurement (GPM)
For GPM the ITC team developed a software only simulator called GPM Operational SIMulator (GO-SIM). GO-SIM is a pure software based simulator that uses the GPM ground system (ASIST), ground system command and telemetry databases, simulated RAD 750 single board computer (SBC), and unmodified flight software binaries to provide dynamic analysis capabilities.
IV&V Simulation and Test (JIST)
Goddard Space Flight Center
Simulator that reuses technologies developed for GO-SIM and adds customizations for JWST
James Webb Space Telescope (JWST)
For JWST the ITC team has a two-phased approach to establishing a simulation/test environment for the JWST IV&V project team. Phase one consisted of procuring and setting up hardware in the loop test environment for the Integrated Science Instrument Module (ISIM) Flight Software (FSW). The test environment enables the IV&V analyst to perform dynamic analysis of the ISIM FSW. The test environment contains the following: the latest ISIM FSW release running on a PowerPC single board computer (SBC), SBS 1553 Card, Compact Peripheral Component Interconnect (cPCI) bus analyzer, SpaceWire Test Set (SWTS), 1553 Bus Monitor, Joint Test Action Group (JTAG) debugger, 1553 Device Simulator (DSIM). The environment also contains the ASIST ground station which is used to command the FSW and execute test scripts against the FSW.
For JWST, the ITC team is developing a software only simulator to test the spacecraft's flight software, JWST Payload Interface Module (JPIM) flight software, and Integrated Science Instrument Module (ISIM) flight software. The simulator will utilize hardware models for the RAD750 SBC and PPC405 as well as other required hardware components. The ITC team is utilizing hardware specifications and design documentation to aid their modeling efforts. The end product will include the unmodified FSW running in a software-only simulation environment. JIST will include the Eclipse CCTS ground system. Eclipse CCTS will be used by the IV&V analysts to execute developer's test scripts as well as independent test scripts. When completed, JIST functionality will mirror the JWST spacecraft formal flight software verification environment.
Forming partnerships with other NASA centers and facilities to leverage existing technologies has brought these simulation and test environments in-house.
Wallops Flight Facility
Hardware-in-the-loop test article with supporting simulation software provided by AFSS development team
Autonomous Flight Safety System (AFSS)
In mid-February 2011, the AFSS development team delivered a spare flight chassis to the JSTAR laboratory. NASA's IV&V Program engineers are now able to stimulate the software system with simulations and identify areas of the software used during these simulations. The AFSS flight software has served as a case study for generating test coverage data. The ITC team executed the test suite from the AFSS project in order to determine the amount of test coverage achieved by the AFSS project. From this work, the ITC Team aims to identify and develop an approach and set of software tools that can be used to obtain test coverage data on NASA software systems. Test coverage data can be used as one mechanism to drive independent testing efforts.
Johnson Space Center
Final Qualification Test (FQT) configurations are installed to meet the needs of the ISS IV&V team
Johnson Space Center
Maintenance of multiple software simulation environments to support the IV&V mission
Multi-Purpose Crew Vehicle (MPCV)
The MPCV project is establishing two software-only simulation environments, Software-Only Crew Exploration Vehicle (CEV) Risk Reduction Analysis and Test Engineering Simulator (SOCRRATES) and Partition Level Application Test for Orion (PLATO). SOCRRATES is being developed by Lockheed Martin and being delivered to the Kedalion Laboratory at Johnson Space Center (JSC). PLATO is developed by engineers within the Kedalion laboratory. Both environments will enable the user to execute/test the FSW. SOCRRATES has two configurations, SOCRRATES-Lite and SOCRRATES-Heavy. SOCRRATES-Lite is a Linux based simulator and requires modification to the FSW before executing. SOCRRATES-Heavy is a Simics based software-only simulator that requires no modification to the FSW. The MPCV FSW (binary executables) will run in a Simics environment with external interfaces simulated using math models that are running in the Trick software environment. The CoreSim interface is Simics interface to the various MPCV flight partitions. The UI and Test Control environment will be the end-user's interface to run test scripts and capture test results.
The SOCRRATES and PLATO environments will satisfy the IV&V project team's needs for dynamic analysis; therefore, the ITC team has worked with the MPCV project and Kedalion Laboratory to replicate the two environments within the JSTAR laboratory. The replication of these environments within JSTAR will be a cooperative effort between ITC and the MPCV IV&V project team, with ITC having primary responsibility for the acquisition and configuration effort of the MPCV test bed and the MPCV IV&V project team responsible for the MPCV flight software domain knowledge and end-user responsibilities for performing the IV&V analysis.
Current Tools and Technology
The ITC team utilizes multiple commercial, government developed, and custom software applications in their simulation environments. The ITC team is continuously researching new tools and technologies that will aid in achieving its charter of developing, maintaining, and operating an adaptable test environment for NASA's IV&V Program.
The ITC team has developed custom components for use within their simulation environments. One component that was created for GO-SIM, but is being reused in JIST, is the ITC Synchronous Bus (ITCSB). The ITC team saw a need for a re-usable mechanism to ensure consistent and correct data passing among distributed components of a simulation system. Each component has a unique notion of time and when communication is received by one component, another component may expect it to perform some action or respond within some amount of time from the transmission. The purpose of ITCSB is to solve this problem by providing these communication pathways in a synchronous way where the sender and receiver can use each message delivery as a point of synchronization. To further aid in testing, final destinations can be "intercepted" with a dynamically inserted set of priority-sorted interceptors, which can change the data sent to, and back from, the final destination.
This interception capability allows users of the simulations to intercept, modify or block data to or from various simulation components. The interception technology provides users the ability to exercise fault detection scenarios which are often impossible when using actual hardware. Interception can simulate the loss or malfunction of hardware without modifying the software under test. The interceptor technology has the potential to provide increased software mission assurance agency-wide. Virtually any NASA mission and its accompanying simulators can be plugged-into the simulation architecture to form a complete system simulation solution capable of injecting hardware faults into the flight-configured software.
ITCSB has been registered with the Goddard Technology Transfer office under GSC-16265-1 and is available for use by any NASA project.
The simulation architecture utilized to develop the GO-SIM and JIST software-only simulators provides NASA's IV&V Program with a reusable mechanism to set up test environments. Software-only simulation is not a new concept; however the approach taken when developing the architecture used by GO-SIM and JIST is new, unique and has no known competition. The generic architecture enables rapid construction of software-only environments that simulate an interactive ground-spacecraft mission system, utilizes existing components when applicable (Commercial-Off-The-Shelf (COTS) and/or Government-Off-The-Shelf (GOTS)), and includes custom software when mission specific tailoring is required. This reduces simulator development schedule, cost and risk. The simulations include a high fidelity simulation of the spacecraft processor and mission specific electronics using a combination of commercial products and custom software; the spacecraft hardware simulation is so accurate that it can host and execute the unmodified binary image of the spacecraft flight software.
|In 2012 the ITC team received Honorable Mention in the NASA agency-wide Software of the Year competition. The ITC team's submission was selected by Goddard Space Flight Center (GSFC) to be their representative in the agency-wide competition. The ITC team put together a video demonstrating GO-SIM for Software of the Year and it can be seen at http://www.youtube.com/watch?v=ImtzXv-DahY.|
ITC's New Technology Reporting
GSC-16265-1 – ITC Synchronous Bus – 1553
ITCSB_1553 is a synchronous communications mechanism to pass data over simulated 1553 that provides both sides of a transaction with a software interface to communicate over the bus.
GSC-16264-1 – GO-SIM Instrument Simulations
GO-SIM Instrument Simulations are software-only science instrument simulations whose purpose are to satisfy the bus controller on the GPM 1553 instrument bus, allowing the flight software to operate as it would under normal conditions when both science instruments are present.
GSC-16262-1 – GO-SIM Core
Global Precipitation Measurement Operational Simulator (GO-SIM) core is a software-only simulator capability of executing GPM operational systems. Capabilities include communicating with GPM's ground system, loading and running versions of spacecraft flight software, executing faster than real-time, integrating with Wind River workbench, and injecting faults via ground system.
GSC-16378-1 – ITC Testing and Simulation Framework (Framework for Analysis, Simulation, & Test (FAST))
The purpose of the Framework is to develop a cross-project sofware environment to be able to perform dynamic software analysis on NASA software systems. The Framework provides the ability to capture inputs and outputs of executing tests and capture events of interest such as a breach of data thresholds and provides a standard framework for users to use when testing NASA software systems. The system is distributed in nature and current capabilities include versioning of components, launching and monitoring services, breakpoints, schematic views, basic user functionality, and simulation setup and archival.