See edit history of this section
Post feedback on this section
- 1. The Requirement
- 2. Rationale
- 3. Guidance
- 4. Small Projects
- 5. Resources
- 6. Lessons Learned
- 7. Software Assurance
1. Requirements
3.2.3 The project manager shall submit software planning parameters, including size and effort estimates, milestones, and characteristics, to the Center measurement repository at the conclusion of major milestones.
1.1 Notes
NPR 7150.2, NASA Software Engineering Requirements, does not include any notes for this requirement.
1.2 History
1.3 Applicability Across Classes
Class A B C D E F Applicable?
Key: - Applicable | - Not Applicable
2. Rationale
NASA software measurement programs are designed to provide specific information necessary to manage software products, projects, and services. For these programs to be current and accurate, certain center measurements (such as size and effort estimates, milestones, and characteristics) are provided to the Center repository at the end of the major project milestones. Defined software measurements are used to make effective management decisions by Center Management. Historical measurement data can also be used to improve aspects of future projects such as cost estimation.
3. Guidance
3.1 Software Planning Parameters
Refer to 5.08 - SDP-SMP - Software Development - Management Plan for more information on software planning parameters. At a minimum the following software planning data is defined and submitted at major milestones for the project:
- Software size: planned and the actual number of units, lines of code, or other size measurements over time.
- Effort: planned and actual workforce and hours.
- Milestones: planned and actual schedule dates (Start and Completion).
- Characteristic: uniquely identify the project and its work products and major features
- Software characteristics are sometimes called software attributes. These basic characteristics are necessary for developing cost models, planning aids, and general management principles. Software characteristics are used to help uniquely identify the project and its work products, along with its major features.
- Software characteristics are sometimes called software attributes. These basic characteristics are necessary for developing cost models, planning aids, and general management principles. Software characteristics are used to help uniquely identify the project and its work products, along with its major features.
- Examples of software cost parameters are:
- Required Software Reliability
- Database Size
- Product Complexity
- Developed for Reusability
- Documentation Match to Life Cycle Needs
- Execution Time Constraint
- Analyst Capability
- Programmer Capability
- Personnel Continuity
- Applications Experience
- Platform Experience
- Language and Tool Experience
- Multisite Development
- Required Development Schedule
- Development Flexibility
- Architecture / Risk Resolution
- Team Cohesion
- Process Maturity
- Main Storage Constraint
- Platform Volatility
- Use of Software Tools
- Precedentedness
These software planning parameters are also be submitted to the repository at the end of each major milestone defined in the 5.08 - SDP-SMP - Software Development - Management Plan. Actual cost and effort estimates are also captured at the end of the project.
The software planning parameters can be documented in the 5.08 - SDP-SMP - Software Development - Management Plan. As stated in topic 7.18 - Documentation Guidance, “The Software Development or Management Plan provides insight into, and a tool for monitoring, the processes to be followed for software development, the methods to be used, the approach to be followed for each activity, and project schedules, organization, and resources. This plan details the system software, project documentation, project schedules, resources requirements and constraints, and general and detailed software development activities.” It is important to keep the plan up to date throughout the project life cycle. Refer to Topic 7.08 - Maturity of Life Cycle Products at Milestone Reviews for expected plan maturity and updates at various life cycle milestones.
3.2 Additional Guidance
Additional guidance may be found in the following related requirements in this Handbook:
Related Links |
---|
3.3 Center Process Asset Libraries
SPAN - Software Processes Across NASA
SPAN contains links to Center managed Process Asset Libraries. Consult these Process Asset Libraries (PALs) for Center-specific guidance including processes, forms, checklists, training, and templates related to Software Development. See SPAN in the Software Engineering Community of NEN. Available to NASA only. https://nen.nasa.gov/web/software/wiki 197
See the following link(s) in SPAN for process assets from contributing Centers (NASA Only).
SPAN Links |
---|
4. Small Projects
Small Projects should consider the value of capturing and tracking of these elements (each center should define what is a small project). The value and benefit need to be determined for the project and organization. If an organization only does small projects then the value of collecting data may be important to future business and process improvement.
5. Resources
5.1 References
- (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.
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.
7. Software Assurance
7.1 Tasking for Software Assurance
1. Confirm that all the software planning parameters, including size and effort estimates, milestones, and characteristics, are submitted to a Center repository.
2. Confirm that all software assurance and software safety software estimates and planning parameters are submitted to an organizational repository.
7.2 Software Assurance Products
- Issues and risks discovered are brought to the attention of management.
Objective Evidence
- Evidence that the software planning parameters, including size and effort estimates, milestones, and characteristics, have been submitted to a Center repository.
Evidence that the software assurance and software safety software estimates and planning parameters have been submitted to an organizational repository.
7.3 Metrics
- Comparison of initial SA cost estimates vs. final cost (capturing assumptions and differences)
- Trend SA cost estimates throughout life-cycle.
- Planned SA resource allocation versus actual SA resource allocation.
- # of detailed software requirements vs. # of estimated SLOC to be developed by the project
See also Topic 8.18 - SA Suggested Metrics.
7.4 Guidance
Confirm that the project has submitted the software planning parameters, including size and effort estimates, milestones, and characteristics, to the Center measurement repository at the conclusion of each major milestone. The actual cost and effort should also be captured at the end of the project.
Examples of software cost parameters are:
- Required Software Reliability
- Database Size
- Product Complexity
- Developed for Reusability
- Documentation Match to Life Cycle Needs
- Execution Time Constraint
- Analyst Capability
- Programmer Capability
- Personnel Continuity
- Applications Experience
- Platform Experience
- Language and Tool Experience
- Multisite Development
- Required Development Schedule
- Development Flexibility
- Architecture / Risk Resolution
- Team Cohesion
- Process Maturity
- Main Storage Constraint
- Platform Volatility
- Use of Software Tools
- Precedentedness
Set up an SA organization repository. After each major milestone, review the repository contents to confirm that all SA software estimates and planning parameters exist. If any information is missing, update the repository content with the required information. At the end of the project, submit actual SA cost and effort estimates to the repository. Annually or on some other periodic schedule, audit or assess the SA organization repository for the previously completed project to ensure all estimate and planning information exists in the repository.
Confirm the software planning documentation includes the metrics and measurements to be collected and assessed for the software project. Including, but not limited to the project size and estimate of effort, software project milestone (s) planned and actual dates, specific software characteristics which may include requirement volatility, software risk management, software performance, or software usability.
7.5 Additional Guidance
Additional guidance may be found in the following related requirements in this Handbook:
0 Comments