A Continuous Integration System for GSFC Core Flight Executive/Core Flight System (cFE/CFS) Scott Zemerick [email protected] December 16, 2014 http://www.nasa.gov/centers/ivv/jstar/ITC.html Justin R Morris, JSTAR/ITC Lead [email protected] 304-367-8260 Agenda Independent Test Capability (ITC) Team Introduction Jon McBride Software Testing & Research Lab (JSTAR) Infrastructure, Deployment, and Users Technologies Developed Introduction to Software-Only-Simulation Process and approach for simulation and hardware modeling cFE/CFS Continuous Integration System Concepts / Features / Technologies
NASA IV&V Independent Test Capability 2 Introduction to the NASA Independent Verification & Validation (IV&V) Independent Test Capability (ITC) NASA IV&V Independent Test Capability 3 IV&V Approach for Independent Testing Create specialized group ITC team formed in 2009 Provide infrastructure to support efforts JSTAR Lab Built in 2010 ITC ITC Charter Charter
The The NASA NASA IV&V IV&V Program's Program's Independent Independent Test Test Capability (ITC) is responsible for acquiring, Capability (ITC) is responsible for acquiring, developing developing and and maintaining maintaining adaptable adaptable test test environments. environments. These These test test environments environments enable enable
the the NASA's NASA's IV&V IV&V Program Program to to perform perform dynamic dynamic analysis analysis of of software software behaviors behaviors for for multiple multiple NASA NASA missions. missions. The The ITC ITC team team isis the the expert expert in in software-onlysoftware-onlysimulation simulation and
and the the IV&V IV&V project project teams teams are are experts experts in in the the systems. systems. IV&V IV&V project project teams teams utilize utilize the the solutions solutions developed developed by by the the ITC ITC team team within within the the JSTAR
JSTAR laboratory. laboratory. Infuse into IV&V Projects Independent Testing & Dynamic Analysis NASA IV&V Program's Independent Test Capability 4 Jon McBride Software Testing & Research (JSTAR) Laboratory Cloud-based infrastructure using server and desktop virtualization Multiple strings of simulator deployments for onsite/offsite test teams Integration of COTS and GOTS software tools to support V&V activities Hardware-in-the-loop RAD750s, 1553, SpaceWire NASA IV&V Independent Test Capability
5 ITC Developed Spacecraft Simulators Global Precipitation Measurement (GPM) Operational Simulator (GO-SIM) Closed-loop simulator including unmodified operational ground system, unmodified flight software, environmental simulator, and science instrument simulators James Webb Space Telescope (JWST) Integrated Simulation and Test (JIST) Simulator that demonstrates reusable NASA Operational Simulator (NOS) technologies can be applied to other NASA missions Deep Space Climate Observatory (DSCOVR) ITC-developed simulator that also used NOS technologies to model the spacecraft C&DH NASA IV&V Independent Test Capability 6
Software-Only-Simulation NASA IV&V Independent Test Capability 7 Software-Only-Simulation Introduction Software-Only-Simulation is a complete software representation of modeled hardware components and software emulators Together, the components form a complete spacecraft simulator Software-Only-Simulator provides complete control of CPU, Time, Memory, and Peripheral Devices Can stop all execution for debugging Can peek/poke memory, perform fault injection Spacecraft simulator used for: Independent Testing (IV&V) Operator Training Augmenting project hardware testing NASA IV&V Independent Test Capability 8
Software-Only-Simulation Introduction Simulator Components Modeled Spacecraft Hardware cPCI, SpaceWire, 1553, Kaband, S-band, FPGAs Halt Entire System Memory Analysis Fault Injection Instruction Set Simulator Simics / QEMU PPC750, PPC401, LEON3 Unmodified Flight Software Binary Operational Ground System Independent Testing
Spacecraft Scenarios What-if Scenarios Operator Training NASA IV&V Independent Test Capability 9 Software-Only-Simulation Introduction QEMU was heavily used for this cFE continuous integration effort QEMU is a generic, open-source machine emulator QEMU already had support for many platforms x86, Sparc, ARM, MIPS, ColdFire, Microblaze, PowerPC ITC QEMU Modeling Experience Since the RAD750 is based on the PowerPC 750, the ITC Team was able to use the PowerPC model as a starting point and develop a RAD750 QEMU model, capable of running RAD750 FSW ITC also developed QEMU Ethernet and MIL-STD-1553 cPCI card models Some initial LEON3 work based upon QEMU patches provided by ESA
NASA IV&V Independent Test Capability 10 cFE/CFS Continuous Integration System NASA IV&V Independent Test Capability 11 System Goals 1. Provide an automated means to exercise build- system tests of cFE/CFS cFE chosen as pilot project due to size, usage, current manual build/test efforts, and dependence upon ground station software ITC familiar with cFS/CFS and plans to utilize it in the future Build-System tests are integration tests with ground station software as the test driver Main focus of this effort
Limited focus on unit tests 2. Support multiple target platforms Linux x86 VxWorks (QEMU RAD750 Model) 3. Create a regression test suite 4. Enable efficiencies in IV&Vs testing efforts NASA IV&V Independent Test Capability 12 System Technologies Utilized Technology/Product Atlassian Bamboo Origin Purpose Automated Build and Test Execution Virtual Machine Installation on Linux
GOTS/GSFC Ground Station used by CFS for executing build/integration tests Virtual Machine Installation on Linux ASIST WRAPPER ITC ASIST Ground System Automation Mostly new development for this task (Some parts leveraged from the ITC Framework) Bamboo CFS Plugin ITC Plugin allowing for CFS to be built by the Bamboo build server Integrated with Bamboo (Designed for
reuse where possible) Software Under Test Source installed and built on Build Server Virtual Machine ASIST COTS Integration Method Core Flight System (CFS) GOTS/GSFC QEMU RAD750 Model ITC Execution of the CFS under the RAD750 Target running VxWorks QEMU RAD750 Model built and installed on Linux
QEMU DEC Ethernet Tulip Model ITC Ethernet connectivity to the RAD750/VxWorks kernel. Provides connection between VxWorks and ASIST QEMU Tulip model integrated with the QEMU RAD750 Model NASA IV&V Independent Test Capability 13 Continuous Integration System Architecture Ground Station Software of Choice Bamboo VM coordinates activity across all VMs Other QEMU VMs for additional targets
NASA IV&V Independent Test Capability 14 Bamboo and ASIST System Architecture NASA IV&V Independent Test Capability 15 Continuous Integration Activity Flow Source Code Checkout Configuration Changes (RegEx Replace Task) Run CFS Core on QEMU/RAD750 emulator Stop ASIST
Run CFS Core Executable Start ASIST Make Task (build script, GNU make) Run pre-test cmds, ground test procs, and post-test cmds NO Linux? Build Task (VxWorks / SB Unit) YES Configure ASIST (Generate needed files (.prc, .rdl)) Log Test Results NO
Start ASIST Build ASIST Procedures Stop CFS Core; Stop ASIST Failed Tasks or Tests? Build Successful NASA IV&V Independent Test Capability YES Build Failed 16 System Automated Build & Test NASA IV&V Independent Test Capability
17 System Automated Build & Test NASA IV&V Independent Test Capability 18 Benefits & Next Steps Benefits Quickly perform a checkout of cFE/CFS and execute integration/regression tests automatically Supports multiple targets x86/Linux and QEMU RAD750/VxWorks Automation of Ground Station Software Next Steps Apply lessons learned and technology developed from this pilot project for another NASA mission, with increased focus on the IV&V lifecycle Add automated static analysis to activity flow NASA IV&V Independent Test Capability 19
Contact Information Web Page http://www.nasa.gov/centers/ivv/jstar/JSTAR.html E-Mail [email protected][email protected] Contact us for Demonstrations of test beds Middleware usage agreements Simulator development Hardware modeling V&V Services, HWIL Testing, Performance Testing NASA IV&V Independent Test Capability 20 Backup Slides &
ITC Technologies NASA IV&V Independent Test Capability 21 Software-Only-Simulation Introduction Simulator Development Process NASA IV&V Independent Test Capability 22 ITC Technologies NASA Operational Simulator (NOS) Software-only simulation architecture Capable of executing unmodified
flight software Custom layered-architecture middleware Dynamic interception capability Reusable software modules and scripts Virtual machine deployment Typical NOS Architecture (Space Domain) NASA IV&V Independent Test Capability 23 NOS Feature Set Plug-and-Play Hardware Models Use of Operational Ground Systems Software Instrument1 Subaddress HandlerA FunctionA Subaddress HandlerB FunctionB Subaddress HandlerN FunctionN Processors,
Boards, Racks Internal Bus Monitoring Instrument Model Framework InstrumentX Subaddress HandlerA FunctionA Subaddress HandlerB FunctionB Subaddress HandlerN FunctionN NOS Middleware Deployment & Maintenance Specialized Layers Base Layer Communications Virtualization NASA IV&V Independent Test Capability 24 NOS Middleware
Overview Features Offers re-usable communication mechanism Ensures consistent and correct data passing Provides synchronization between distributed applications Flexible and extensible design Can be extended to incorporate any communication protocol Transport agnostic Cross platform C++ implementation Robust User API Specialized User API Layers
MIL-STD-1553B ESA SpaceWire Discrete Signals Time Synchronization Interception allows for V&V analysis No modification to softwareunder-test NASA IV&V Independent Test Capability 25 NOS Middleware Architecture System Under Test MIL-STD-1553 SpaceWire Discrete Time
Synchronization NOS Core Middleware with Interception Capability Additional Protocols as Needed System Monitoring Bus Analyzer I/O Interface Layer NASA IV&V Independent Test Capability 26 NOS Software Utilities Virtual Oscilloscope Virtual CompactPCI (cPCI) Analysis Board-Level Signal Analysis Virtual MIL-STD-1553 Bus
Bus Controller with XML Defined Schedules Remote Terminal Bus Monitor/Logger PASS3200 Software Emulator Virtual SpaceWire Router NASA IV&V Independent Test Capability 27 NOS Dynamic Interception Interceptor Blocking Interceptor Modifying Data Flow With Normal Data Flow Data Interceptor
Node A NOS Node B Block Modify Interceptor NASA IV&V Independent Test Capability 28
School events, like Community Days, are a chance for the Raven Community to get together and sustain a school culture that is welcoming and inclusive. CCA supports students' lives outside the classroom through school wide campaigns, such as Raven Wellness...
- Katz. Anni '40 XX secolo: prove empiriche che confutano le tesi «ipodermiche» Effetti della comunicazione politica VINCOLATI dal contesto sociale. Effetti di rinforzo e attivazione (meno effetti di conversione) Esposizione «selettiva» Teoria del Flusso a Due Fasi: messaggio opinion...
Welcome Course name ... Please provide as much detail as you can about how you worked your problem, so that the instructor or tutor can provide useful advice. The length of time you must wait depends on the person assigned...
Todo un lujo para poder aprender de su labor y aportar nuestro pequeño granito de arena. Bien, como les decía, este programa no surge de la noche a la mañana y de forma aislada sino que se integra dentro en...
The Evolution of the Microscope Professional Resources Basic and In-depth Microscope Information Need help with the basic and more complex functions of the microscope? This website has a wealth of information about microscopes. Using a Compound Microscope Has it been...
Don't spoil the ending, but give a sense of what information or understanding may be gained by reading your paper ... Give the highlights! ... Use numerals (1, 2, 5) to refer to figure numbers, not words (one, two, five)...
Ready to download the document? Go ahead and hit continue!