See edit history of this section
Post feedback on this section
1. Requirements
2.1.1.5 The NASA OCE and Center training organizations shall provide training to advance software engineering practices.
1.1 Notes
NPR 7150.2, NASA Software Engineering Requirements, does not include any notes for this requirement.
1.2 History
2. Rationale
NASA software development activities in support of projects often require a balanced blend of software engineering development expertise and knowledge. If the software is contracted out, the development activities also require knowledge of NASA's acquisition practices and regulations. The Office of the Chief Engineer(OCE) and the Centers have committed to support these objectives by providing sufficient funding in support of the training. In some instances, funding for training may be provided by multiple organizations if the training is beneficial to the communities they represent.
3. Guidance
Software engineering skills and expertise can be acquired through formal courses, on-the-job training, and specialized work assignments. While some of these skill enhancements come about while executing the project's activities, i.e., funded by the project, many need formal course work to achieve improvements in software engineering capability.
OCE and Center funding provides an opportunity to build a foundation that supports software improvement activities, as well as core courses across a software engineer's career.
These courses typically are formally developed and are usually found and maintained as part of the Developing a Curriculum (DACUM) set by the OCE 289 and Center training organizations. The OCE partners in funding these courses with Centers to assure balanced offerings and availability around the Agency. The OCE funding supports training for courses associated with (1) CMMI appraisals that support the OCE Software Engineering Improvement Initiative, as well as (2) core software courses across a software engineer's career. 289
Software engineers use project training funds to develop specific skills and expertise in programming languages, design tools, operating systems, coding standards, etc. Project-funded training differs from OCE- and Center-funded training in that it is generally focused on skills needed to produce software specific for its systems and subsystems.
Software Assurance training approach can be found at https://nsc.nasa.gov/step2020
Additional guidance related to software training may be found in the following related requirements in this Handbook:
4. Small Projects
Primarily this requirement is an institutional requirement, training in a unique implementation approach and technologies being used by a small project is the responsibility of the small project to provide.
5. Resources
5.1 References
- (SWEREF-041) NPR 7123.1D, Office of the Chief Engineer, Effective Date: July 05, 2023, Expiration Date: July 05, 2028
- (SWEREF-082) NPR 7120.5F, Office of the Chief Engineer, Effective Date: August 03, 2021, Expiration Date: August 03, 2026,
- (SWEREF-157) CMMI Development Team (2010). CMU/SEI-2010-TR-033, Software Engineering Institute.
- (SWEREF-197) Software Processes Across NASA (SPAN) web site in NEN SPAN is a compendium of Processes, Procedures, Job Aids, Examples and other recommended best practices.
- (SWEREF-289) NESC Academy Software Discipline. Topics include software requirements, design, implementation, architecture, assurance, testing, training, tools, process improvement, best practices, software release, models and simulations, and software research and technology innovation.
- (SWEREF-294) The Safety and Mission Assurance (SMA) Technical Excellence Program (STEP) is a career-oriented, professional development roadmap for SMA professionals.
- (SWEREF-491) Access the APPEL curriculum catalog from this URL.
5.2 Tools
NASA users find this in the Tools Library in the Software Processes Across NASA (SPAN) site of the Software Engineering Community in NEN.
The list is informational only and does not represent an “approved tool list”, nor does it represent an endorsement of any particular tool. The purpose is to provide examples of tools being used across the Agency and to help projects and centers decide what tools to consider.
6. Lessons Learned
6.1 NASA Lessons Learned
No Lessons Learned have currently been identified for this requirement.
6.2 Other Lessons Learned
No other Lessons Learned have currently been identified for this requirement.