bannera

Book A.
Introduction

Book B.
7150 Requirements Guidance

Book C.
Topics

Tools,
References, & Terms

SPAN
(NASA Only)


SWE-046 - Supplier Software Schedule

1. Requirements

2.6.2.4 The project shall require the software supplier(s) to provide a software schedule for the project's review and schedule updates as requested.

1.1 Notes

NPR 7150.2, NASA Software Engineering Requirements, does not include any notes for this requirement.

1.2 Applicability Across Classes

Class G is labeled with "P (Center)." This means that an approved Center-defined process which meets a non-empty subset of the full requirement can be used to achieve this requirement.

Class

  A_SC 

A_NSC

  B_SC 

B_NSC

  C_SC 

C_NSC

  D_SC 

D_NSC

  E_SC 

E_NSC

     F      

     G      

     H      

Applicable?

   

   

   

   

   

   

   

   

   

   

   

    P(C)

   

Key:    A_SC = Class A Software, Safety-Critical | A_NSC = Class A Software, Not Safety-Critical | ... | - Applicable | - Not Applicable
X - Applicable with details, read above for more | P(C) - P(Center), follow center requirements or procedures

2. Rationale

Software supplier scheduling activities must be monitored to assure the software work products that are required by a project are produced when they are needed by the project. NASA's insight into a supplier's development schedule provides a view into the software developer's activities and plans. The supplier's schedule allows the software team to determine the expected state of development of the software product. It then serves as a benchmark for measuring supplier accomplishment during regular reviews or formal design reviews.  The purpose of this requirement and schedule management is to provide the framework for time-phasing, resource planning, coordination, and communicating the necessary tasks within a work effort. Sound schedule management requires the establishment, utilization, and control of a baseline master schedule and its derivative schedules (e.g., software schedules). An Integrated Master Schedule (IMS) provides the framework for time phasing and coordinating all project efforts into a master plan to ensure that objectives are accomplished within project or program commitments. Schedule management encompasses the development, maintenance, control, and archival of the project schedules. The software schedule constitutes the basis for time phasing and coordinating all program/project software efforts to ensure that objectives are accomplished within approved commitments. Integrated schedules are crucial for all levels of management oversight within NASA and its contractor community. Software schedules contain the necessary tasks and milestones that reflect the total integrated plans for each software component within the program. While it is true that all software work scope must be included within a program IMS, the levels of detail may vary to accommodate the specific management needs established at the program level. Software schedule management entails the creation of a software schedule that contains integrated tasks and milestones for both contractor effort and effort being worked by in-house NASA government personnel. Regardless of the type project being implemented it is critical that the software schedule contain data addressing the total scope of work at a consistent level of detail to allow for discrete progress measurement, management visibility, and critical path identification and control. This approach will allow Program and Project Managers greater visibility and capability to adequately plan the necessary resources, and to ensure adequate budget will be available to accomplish the planned work.

3. Guidance

Scheduling begins with project-level schedule objectives for delivering the products described in the upper levels of the WBS (Work Breakdown Structure) and evolves down to the software development level. The supplier includes software version descriptions and functionality of any deliverable software work products contained in the schedule of deliveries in the Software Version Description document SWE-116 and the Software Metrics Report SWE-117. The project team, through the contract Statement of Work (SOW) (see SWE-048), must require delivery of a software work product development schedule from the software supplier. Schedule content provided by the supplier to NASA includes networked activities evolved down to a level sufficient for the project team to obtain the necessary insight (see SWE-039) into the state of the supplier's activities.

Networked schedule data consist of: 273

  • Activities and associated tasks.
  • Dependencies among activities (e.g., where an activity depends upon another activity for a receivable).
  • Products or milestones that occur as a result of one or more activities.
  • Duration of each activity.

The technical requirements need to be sufficiently detailed to assure that firm schedule estimates can be established. The schedule needs to show the major development activities throughout the life cycle, the milestones, and a critical path. See SWE-016 Software Schedule for in-depth information on the general preparation of software development schedules.

To be effective, the software supplier schedule needs to have linkage to the project schedules, if the two are different. The suppler schedule can be analyzed for risk issues related to the schedule (long lead hardware needs, critical path, or lack of schedule slack). Good scheduling systems provide capabilities to show resource requirements over time and to make adjustments so that the schedule is feasible with respect to resource constraints over time. The schedule can be resource loaded, thus enabling close tracking of technical parameters, milestones, and budgets to ensure that the team recognizes undesirable trends (such as an unexpected growth in lines of code or increase in its cost) early enough to take corrective action.

Once the supplier establishes firm software schedule estimates, the schedule can be baselined and controlled in the project's configuration management system. The project team needs to review these baselined schedules to ensure they are consistent with the overall project schedule.

Managing schedule variance is one of the key responsibilities of the software development team in dealing with software suppliers. The difference between the budgeted cost of work performed and the budgeted cost of work scheduled is called the schedule variance at time t. A negative value indicates that the work is behind schedule. 273 Schedule management tools can be employed by the project team to assist in its evaluation of the software supplier schedules. Whenever the software development planning experiences major changes from a baseline, an update to the schedule can be requested from the software supplier by the project to allow additional and appropriate insight into the activities to be developed and scheduled.

Regular schedule submissions and periodic updates are typically scheduled as part of the software development SOW. Because NASA projects and their software development activities experience numerous changes in requirements, scope, and funding, an ability to request updates whenever needed is typically included in the contract clauses.

4. Small Projects

This requirement applies to all projects regardless of size. Smaller projects may get by with fewer levels of detail in the schedule for the life cycle.

5. Resources


5.1 Tools

Tools to aid in compliance with this SWE, if any, may be found in the Tools Library in the NASA Engineering Network (NEN).

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

No lessons learned have currently been identified for this requirement.