NASA Logo, National Aeronautics and Space Administration

National Aeronautics and Space Administration

Goddard Space Flight Center



Two Columns


cFS is a complete software engineering solution that includes a set of components with reusable requirements, source code, design documentation, development standards, unit tests, functional build and system tests, test artifacts, tool suite, user’s guides, and ground system command and telemetry database templates:
  • Provides a common, reusable product line approach to embedded software development
  • Allows missions to focus on mission specific applications
  • Enables collaboration and sharing of applications across organizations
  • Missions can use cFS to prototype and improve their concepts early, resulting in reduced technical, schedule, and cost risks.
  • The layered, portable nature of the cFS allows developers to use the architecture on desk-top environments, freeing up expensive and valuable lab resources.  The development completed on a desk-top environment can then easily be integrated on flight hardware without changing a single line of code.
  • Supports real-time swapping of software and box-level hardware because of its plug-and-play architecture, which eases integration, technology infusion over time, and maintenance.
  • Adds mission capability because flight software applications are available through the cFS re-use library. Therefore, a team can add functionality even if it does not have time or the budget to create its own.
  • Speeds development because catalog components are re-used rather than coded from scratch. Using the cFS development environment with the use of virtual machines, new projects/missions can prototype and run mission specific flight software in a matter of hours.
  • Lowers flight software costs and risks. All software products come from the re-use library and have been fully tested, qualified, and documented.