1.1.1 Plan Software Development

Overview

This activity encompasses the efforts to effectively plan a software development effort, including determining the project’s scope, identifying the organization and resources for developing the software, defining the applicable software development phases, and planning for managing risks in the development. The activity’s results are documented in the project’s Software Development Plan (SDP).

Roles and Responsibilities

The project software manager plans the software development effort and develops the SDP.

The project manager reviews and approves the SDP.

The software engineering process group (SEPG) maintains the software metrics database.

Controls

The Project Plan defining the program-level requirements, management organization and responsibilities, and program resources and schedule. For a description of this plan, see NHB 7120.5 (pp. 2-A-13 - 2-A-17).

The SDP Data Item Description (DID) (see Appendix E) describing the SDP format.

Inputs

Preliminary Mission Needs Statement which establishes the justification for undertaking an agency objective or effectively pursuing an opportunity pertaining to an agency objective (as described in LHB 7122.1).

Any other available project documentation or plans (e.g., Pre-Phase A Work Plan, Phase A Study Plan) documenting the project’s purpose, schedule, budget, life cycle, and milestones. The availability, content, and format of these will vary between projects.

Procedures

The following subactivities are iteratively performed:

1) 1.1.1.1 Determine Software Project Scope. This activity breaks down the work to be performed (as defined in the Project Plan, Preliminary Mission Needs Statement, and any other available project documentation or plans) into manageable units, establishes size and cost estimates to successfully develop the software, and schedules the work to be performed.

2) 1.1.1.2 Identify Software Project Organization And Resources. In this activity, the software project organization is defined, personnel are selected and assigned, and the development platform and tools are selected.

3) 1.1.1.3 Define Software Development Process. The project software manager tailors the organization’s standard software process to meet the individual project’s needs. The project’s software engineering life cycle is determined, as well as software personnel’s roles in the system-level requirements, design, and testing activities.

4) 1.1.1.4 Plan Risk Management. This activity describes planning for the continuous process of managing technical, programmatic, supportability, cost, and schedule risks throughout a software project’s life time.

5) 1.1.1.5 Determine Metrics To Be Collected. In this activity, the software metrics to be collected, collection forms, and reports to be generated on the software project are identified in coordination with the SEPG, which maintains the software metrics database.

6) Upon completing the above activities, the major SDP sections have been completed. The project software manager then completes any remaining required SDP sections (e.g., Document Overview, Relationship To Other Plans), and submits the SDP to the project manager for review and approval.

7) Upon approval by the project manager, the project software manager submits the SDP to be placed under software configuration management (SCM) (see activity 2.1.1 Place A New Document Under SCM).

Outputs

The SDP which was completed, approved by the project manager, and placed under SCM.