bannerd

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

UNDER CONSTRUCTION

...

01. Introduction
12. Agency
23. Management
34. Engineering
45. Assurance
56. Support

...

idtabs-1

1. Introduction

Software Project activities are conducted in a predictable sequence. This sequence may be a once through / "waterfall" cycle. Or, it may be an iterative  or evolutionary series of cycles which build toward a final product. Regardless of the model chosen, individual activities in all these cycles are very similar. 

The major activity groupings here give you a quick way to find guidance in the SWEHB to help you satisfy the needs of the development project while also satisfying the requirements of NPR 7150.2. 

The activities associated with Software Engineering are listed in the tabs of this page. Each tab takes you to a list of links to pages where topics explain the activity in more detail. At the lowest level, there is a list of links to specific pages in the SWEHB where details of the activity are explained and more guidance is provided. These pages may be SWEs, Topics, or other Process Assets to help you in conducting the activity. 

1.1 Activity Groupings

The tabs in this page initially will contain all of the activities in Ch 2 through 5 of NPR 7150.2. This is done to ensure that all SWEs are accounted for. 

As the page matures, Topics, PATs, and other resources will be distributed to enrich the content of the activities. 

SWEs from NPR 7150.2 are reproduced in a floatbox on the right to ensure that all SWEHB content is accounted for somewhere in the view. 

...

idtabs-2

2. Agency Activities

Floatbox
width300px

2.1 Roles and Responsibilities

SWE-002 - Software Engineering Initiative - 2.1
SWE-004 - OCE Benchmarking - 2.2
SWE-152 - Review Requirements Mapping Matrices
SWE-129 - OCE NPR Appraisals
SWE-100 - Software Training Funding
SWE-098 - Agency Process Asset Library
SWE-208 - Advancing Software Assurance and Software Safety Practices
SWE-209 - Benchmarking Software Assurance and Software Safety Capabilities
SWE-212 - NASA-STD-8739 Mapping Matrices
SWE-221 - OSMA NPR Appraisals
SWE-222 - Software Assurance Training
SWE-223 - Tailoring IV&V project selections
SWE-003 - Center Improvement Plans - 2.1 
SWE-005 - Software Processes
SWE-140 - Comply with Requirements
SWE-095 - Report Engineering Discipline Status
SWE-006 - Center Software Inventory
SWE-091 - Establish and Maintain Measurement Repository

SWE-092 - Using Measurement Data
SWE-142 - Software Cost Repositories
SWE-144 - Software Engineering Process Assets
SWE-153 - ETA Define Document Content
SWE-215 - Software License Rights
SWE-216 - Internal Software Sharing List
SWE-217 - List of All Contributors and Disclaimer Notice
SWE-214 - Internal Software Sharing and Reuse
SWE-218 - Contracting Officers
SWE-126 - Tailoring Considerations

2.2 Principles Related to Tailoring Requirements

SWE-150 - Review Changes To Tailored Requirements 
SWE-021 - Transition to a Higher Class

The Management activities associated with Software Development Projects are listed as links below. 

Management activities are typically conducted by those in leadership roles. Supervisors, managers and team leads are involved to varying degrees. Some activities even involve Support, Assurance and Safety roles. Interactions are explained in the activities. 

2.1 OCE Roles in Software Process Improvement

The objective of the NASA Software Initiative is to support NASA programs and projects to accomplish their planned goals (e.g., mission success, safety, schedule, and budget) while satisfying their specified software requirements.  Software engineering is defined as the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software, i.e., the application of engineering to software.   The associated objective is to establish and maintain a workforce that possesses state-of-the-art technical competencies. One of these is software engineering, which is considered to be a core competency for the Agency.

Related SWEs

...

2.2 OCE Benchmarking and CMMI

Capability Maturity Model® Integration (CMMI®) for Development (CMMI®-DEV) appraisals are the preferred benchmarks for objectively measuring progress toward software engineering process improvement at NASA Centers. 

The Headquarters Office of the Chief Engineer (OCE) achieves this requirement by a number of methods including internal surveys and CMMI Appraisals. 

Related SWEs

...

idtabs-3

3. Management

The Management activities associated with Software Development Projects are listed as links below. 

Management activities are typically conducted by those in leadership roles. Supervisors, managers and team leads are involved to varying degrees. Some activities even involve Support, Assurance and Safety roles. Interactions are explained in the activities. 

Note

This tab includes SWEs from ch 2 and 3. 

3.1 SE-Initiation and Planning

Floatbox
width300px

3.1 Software Life Cycle Planning

SWE-033 - Acquisition vs. Development
                   Assessment
 
SWE-013 - Software Plans

SWE-024 - Plan Tracking 
SWE-034 - Acceptance Criteria
SWE-036 - Software Process Determination
SWE-037 - Software Milestones
SWE-039 - Software Supplier Insight
SWE-040 - Access to Software Products
SWE-042 - Source Code Electronic Access
SWE-139 - Shall Statements
SWE-121 - Document Tailored Requirements
SWE-125 - Requirements Compliance Matrix
SWE-027 - Use of Commercial, Government,
                   and Legacy Software

3.9 Software Development Processes and Practices

SWE-032 - CMMI Levels for Class A and B Software - 2.2

3.2 SE-Estimation

Floatbox
width300px

3.2 Software Cost Estimation

SWE-015 - Cost Estimation
SWE-151 - Cost Estimate Conditions
SWE-174 - Software Planning Parameters

3.3 SE-Schedules

Floatbox
width300px

3.3 Software Schedules

SWE-016 - Software Schedule
SWE-018 - Software Activities Review
SWE-046 - Supplier Software Schedule

3.4 SE-Training

Floatbox
width300px

3.4 Software Training

SWE-017 - Project and Software Training

3.5 SE-Classification

Floatbox
width300px

3.5 Software Classification Assessments

SWE-020 - Software Classification 
SWE-176 - Software Records 

3.6 Cybersecurity

Floatbox
width300px

3.11 Software Cybersecurity

SWE-156 - Evaluate Systems for
                   Security Risks
SWE-154 - Identify Security Risks
SWE-157 - Protect Against
                   Unauthorized Access
SWE-159 - Verify and Validate Risk
                   Mitigations 
SWE-207 - Secure Coding Standard
SWE-185 - Verification of Software Code
                   to Coding Standards
SWE-210 - Detection of Adversarial Actions

...

idtabs-4

4. Engineering

Note

This tab includes SWEs from ch 3 and 4. 

4.1 SE-Scope Management

Floatbox
width300px

3.12 Software Bi-Directional Traceability

SWE-052 - Bidirectional Traceability 

4.1 Software Requirements

SWE-050 - Software Requirements
SWE-051 - Software Requirements Analysis
SWE-184 - Software-related Constraints and
                  Assumptions
SWE-053 - Manage Requirements Changes
SWE-054 - Corrective Action for
                   Inconsistencies
SWE-055 - Requirements Validation

4.2 SE-Architecture

Floatbox
width300px

4.2 Software Architecture

SWE-057 - Software Architecture
SWE-143 - Software Architecture Review

4.3 SE-Design

Floatbox
width300px

4.3 Software Design

SWE-058 - Detailed Design

4.4 SE-Coding

...

width300px

3.8 Automatic Generation of Software Source Code

SWE-146 - Auto-generated Source Code 
SWE-206 - Auto-Generation Software Inputs

3.10 Software Reuse

SWE-147 - Specify Reusability Requirements
SWE-148 - Contribute to Agency
                   Software Catalog

4.4 Software Implementation

...

4.5 SE-Testing

Floatbox
width300px

4.5 Software Testing

SWE-065 - Test Plan, Procedures, Reports
SWE-066 - Perform Testing
SWE-187 - Control of Software Items

SWE-068 - Evaluate Test Results
SWE-070 - Models, Simulations, Tools
SWE-071 - Update Test Plans and 
                   Procedures
SWE-073 - Platform or Hi-Fidelity
                   Simulations
SWE-189 - Code Coverage Measurements
SWE-190 - Verify Code Coverage
SWE-191 - Software Regression Testing
SWE-192 - Software Hazardous
                  Requirements
SWE-193 - Acceptance Testing for Affected
                  Behavior
SWE-211 - Testing Levels of Non-Custom
                  Developed Software

4.5.1 Unit Testing

(from 4.4 Software Implementation)

SWE-062 - Unit Test
SWE-186 - Unit Test Repeatability

4.5.2 Integration Testing

4.6 Operation Maintenance and Retirement

Floatbox
width300px

4.6 Software Operations, Maintenance,
and Retirement

SWE-075 - Plan Operations, Maintenance,
                   Retirement

SWE-077 - Deliver Software Products 
SWE-194 - Delivery Requirements
                  Verification
SWE-195 - Software Maintenance Phase
SWE-196 - Software Retirement Archival

SWE-075 - Plan Operations, Maintenance,
                   Retirement

4.6.1 Release of Software

This means "for use" by other mission teams to integrate into larger systems. 

SWE-063 - Release Version Description
SWE-136 - Software Tool Accreditation 

SWE-077 - Deliver Software Products 
SWE-194 - Delivery Requirements
                  Verification

4.6.2 Use of Software in Operations

4.6.3 Maintenance of Software

SWE-195 - Software Maintenance Phase

4.6.4 Retirement of Software

...

idtabs-5

5. Assurance

Note

This tab includes SWEs from ch 3. 

5.1 SA-Assurance

Floatbox
width300px

3.6 Software Assurance and Software
Independent Verification & Validation

SWE-022 - Software Assurance
SWE-141 - Software Independent Verification
                   and Validation
SWE-131 - Independent Verification and
                   Validation Project Execution Plan
SWE-178 - IV&V Artifacts
SWE-179 - IV&V Submitted Issues and Risks

5.2 Safety 

Floatbox
width300px

3.7 Safety-Critical Software

SWE-205 - Determination of Safety-
                  Critical Software 
SWE-023 - Software Safety-Critical
                   Requirements 
SWE-134 - Safety Critical Software
                   Design Requirements
SWE-219 - Test Coverage for Safety
                   Critical Software Components

SWE-220 - Cyclomatic Complexity Values
                   for Safety Critical Software

...

idtabs-6

6. Support

Note

This tab includes SWEs from ch 5. 

6.1 Configuration Management

Floatbox
width300px

5.1 Software Configuration Management (SCM)

SWE-079 - Develop CM Plan
SWE-080 - Track and Evaluate Changes
SWE-081 - Identify Software CM Items
SWE-082 - Authorizing Changes
SWE-083 - Status Accounting
SWE-084 - Configuration Audits
SWE-085 - Release Management
SWE-045 - Project Participation in Audits

6.2 Risk Management

Floatbox
width300px

5.2 Software Risk Management

SWE-086 - Continuous Risk Management 

6.3 Peer Reviews and Inspections

Floatbox
width300px

5.3 Software Peer Reviews and Inspections

SWE-087 - Software Peer Reviews and
                   Inspections for Requirements,
                   Plans, Design, Code, and
                   Test Procedures

SWE-088 - Software Peer Reviews and
                   Inspections - Checklist 
                   Criteria and Tracking

SWE-089 - Software Peer Reviews and
                   Inspections -
                   Basic Measurements

6.4 Performance Measurements 

Floatbox
width300px

5.4 Software Measurements

SWE-090 - Management and Technical
                   Measurements

SWE-093 - Analysis of Measurement Data
SWE-094 - Reporting of Measurement
                   Analysis
SWE-199 - Performance Measures
SWE-200 - Software Requirements
                  Volatility Metrics

6.5 Non-Conformance and Defect Management

...

width300px

5.5 Software Non-conformance or Defect Management

SWE-201 - Software Non-Conformances
SWE-202 - Software Severity Levels
SWE-203 - Mandatory Assessments for
                  Non-Conformances
SWE-204 - Process Assessments