# Presentation: 142810

## ISD Software Process Overview 

**May 26, 2005**
**Presented by: Ella Page**
***Software Process Improvement (SPI) Project***

## Agenda

**Purpose and Objectives**
**ISD Process Overview**
**Finding Assets in the Process Asset Library (PAL)**
**http://software.gsfc.nasa.gov/process.cfm**

## Purpose and Objectives

**Purpose: Provide a walkthrough of top-priority ISD Mission Software process assets**
**Objective: Help you understand:**
**What’s in a process description**
**How the ISD process library is organized**
**What tasks are required for selected processes**
**Where to find support assets for each process addressed**
**Where to find assets in the Process Asset Library (PAL)**

*http://software.gsfc.nasa.gov/process.cfm*

## Definitions for This Presentation

**Top Priority Processes – Refers to those processes that focus on the monitoring and controlling aspects of software project management**
**Mission Software – Refers to software directly associated with the operational support of flight projects, including network communications, planning and scheduling, flight system (spacecraft and instrument), flight dynamics, ground mission and science command and control, and science data capture software **
**Project – Refers to Software projects for the development or maintenance of mission support software**
**Data Management – Refers to the collection, control, and handling of all process, management, and project data **
**Project Manager – Refers to those who perform software project management functions, for example Development Team Lead, Product Development Lead, or Software Manager**

**Notes:**
Top priority – Most of CMMI maturity level 2 processes plus risk management.

## Process Description Content

**Purpose**
**Scope **
**Context**
**Roles and Responsibilities**
**Inputs**
**Entry Scenarios**
**Entry Criteria**
**Exit Criteria**

**Outputs**
***Major Task (list)***
***Major Task Description***
**Measures**
**Tools**
**Training**
**References**
**QMS Records**

**Notes:**
Most information is in:
	Task list 
	Task details 

## ISD Process Categories

## Process Categories, 1 of 2

*http://software.gsfc.nasa.gov/AboutPal.cfm*

## Process Categories, 2 of 2

*http://software.gsfc.nasa.gov/AboutPal.cfm*

**Notes:**
ORGANIZATIONAL processes support across full life cycle and across other process categories.
ACQUISITION processes won’t be talked about in this presentation since it won’t be included in the initial CMMI appraisal.

## Project Management Process Flow

## Project Planning Process

**Helps you formulate your approach for managing** **and** **conducting your software development or maintenance effort.**

***Replanning***

*http://software.gsfc.nasa.gov/isdpaindx.cfm  Asset 1.2*

## Project Planning Tasks

**Tasks performed sequentially, iteratively, or in parallel** *****

**** Be sure to plan for data management and stakeholder involvement. Review associated plans for consistency.***

*http://software.gsfc.nasa.gov/isdpaindx.cfm  Asset 1.2*

**Notes:**
During first 6 tasks you are building the WBS. Then document it.
Management data is all that process, management and project stuff.
Consistency must be across plans (Mission Project, your CM Plan, your Risk Plan, your schedules, etc.)

## Project Planning Tasks

**Project Planning Tasks**
**Identify deliverables and dependencies**
**Identify development/acquisition strategy **
**Estimate software project effort, schedule, and cost**
**Select and tailor the life-cycle model **
**Identify personnel and other resources**
**Project Planning Tasks (contd.)**
**Identify risks and mitigation strategies**
**Produce a Work Breakdown Structure (WBS) and build/release plan **
**Produce a Software Management Plan/Product Plan**
**Modify the Software Management Plan/Product Plan**

*http://software.gsfc.nasa.gov/isdpaindx.cfm  Asset 1.2*

## Project Planning – Related Assets

**Policies **
**ISD Software Policies (1.0.0.1)**
**Processes and Sub-processes **
**ISD Project Planning Process (1.2)**
**Estimating the Software Process (1.2.1)**
**ISD Software Risk Identification (1.2.3)**
**Standards, Procedures, Guidelines, Templates, and Checklists **
**Wide Band Delphi Procedure (1.2.1.2)**
**ISD Guidelines for the WBS (1.2.4.1) – *****coming soon***
**Estimating the Software Project (1.2.1) – *****coming soon***
**Guidance on Data Management and Process Configuration Management (3.1.1.2) – *****coming soon***
**ISD Software Management Plan/Product Plan templates (1.2.6.1 and 1.2.6.3) – *****coming soon***
**FSW In-house Life-Cycle (1.2.2.1.1)**
**FSW Product Plan Template (1.2.6.1.1)**
**Tools **
**Point Counting Spreadsheets (1.4.2.1)**
**FSW Cost Estimation Spreadsheets/Guideline (1.2.1.1.1) – *****coming soon***
**FSW Staff Planning/Actuals Process (and Spreadsheet) (1.2.2.2.1) – *****coming soon***

*http://software.gsfc.nasa.gov/isdpaindx.cfm*

## Project Monitoring and Control Process

***Replanning***

*http://software.gsfc.nasa.gov/isdpaindx.cfm  Asset 1.4*

**Shows you how to assess your project's progress so you can take corrective actions when performance deviates from your plan.**

## Project Monitoring and Control Tasks

**Tasks performed as needed**

**Tasks performed continuously*******

**** Monitor data management, stakeholder involvement, and risk elements of the software project as you go.***

*http://software.gsfc.nasa.gov/isdpaindx.cfm  Asset 1.4*

**Notes:**
In managing corrective actions, ask
	Why?  Impact?  Actions?  Get better?
Manage corrective actions until no issues remain
In management reporting, refer to Branch Bimonthly Status Report
This is a good source of lessons learned

## Project Monitoring and Control Tasks

**Project Monitoring and Control Tasks**
**Performed continuously:**
- Monitor software project activities and resources
- Monitor work products and software project data
- Monitor software acquisition
- Monitor commitments
**Performed as needed:**
- Manage corrective actions
- Generate management reports and reviews
- Conduct milestone reviews
- Document lessons learned

*http://software.gsfc.nasa.gov/isdpaindx.cfm  Asset 1.4*

## Project Monitoring and Control – Related Assets

**Policies**
**ISD Software Policies (1.0.0.1)**
**Processes and Sub-processes **
**ISD Project Monitoring and Control (1.4)**
**Risk Monitoring and Control (1.4.4)**
**Standards, Procedures, Guidelines, Templates, and Checklists **
**Action Item Tracking Guideline (1.4.3.5)**
**Contents of the Software Requirements Review (2.2.1.6)**
**Software Contents of the Mission-Level Preliminary Design Review (2.3.1.5)**
**Contents of the Software Preliminary Design Review (2.3.1.6)**
**Software Contents of the Mission-Level Critical Design Review (2.3.2.4)**
**Contents of the Software Critical Design Review (2.3.2.5)**
**ISD Branch Status Review Template (1.4.3.4)**
**FSW Status Reporting Templates  (1.4.3.2.1, 1.4.3.2.2, 1.4.3.2.3)**
**FSW PDR Standard (2.3.1.6.1)**
**FSW Preliminary Design Review Standard (2.3.1.6.1)**
**FSW Critical Design Review Standard (2.3.2.4.1)**
**Tools **
**Point Counting Spreadsheets (1.4.2.1)**

*http://software.gsfc.nasa.gov/isdpaindx.cfm*

## Risk Management Process

**Helps you minimize the impact of risks on cost, schedule, and quality of your software project products.**

***Replanning***

**Project Monitoring & Control**

*http://software.gsfc.nasa.gov/isdpaindx.cfm  Assets 1.2.3 and 1.4.4*

## Risk Identification Tasks

****As you begin risk identification, establish a risk strategy and identify risk sources and categories.***

**Tasks performed sequentially and iteratively***

*http://software.gsfc.nasa.gov/isdpaindx.cfm  Asset 1.2.3*

**Notes:**
Risk Strategy – How you’ll manage risk ... frequency of review, who is responsible, how you’ll categorize risks, etc
Example risk categories:  Application, Management, Technology, Process, Productivity
Example risk sources:   cost and schedule constraints, staffing, complexity, interfaces, vendors and subcontractors
Classify risks  – Estimate impact and likelihood. Use those to compute exposure
In last box, Project-level risk tool is Mission Project tool, if applicable

## Risk Identification Tasks

**Risk Identification Tasks**
**Identify risks**
**Estimate impact, likelihood and risk  exposure**
**Classify risks**
**Develop mitigation/contingency strategy for high-exposure risks**
**Create Risk Management Plan**
**Record risks in Risk Management Database**
**Get Risk Management Plan approval**
**Report risks or enter into Project-level risk tool**

*http://software.gsfc.nasa.gov/isdpaindx.cfm  Asset 1.2.3*

## Risk Monitoring & Control Tasks

**Tasks performed sequentially and iteratively**

*http://software.gsfc.nasa.gov/isdpaindx.cfm  Asset 1.4.4*

**Notes:**
Analyze on a REGULAR basis. Ask about the risk ...
	Is it about to occur?
	Can it be retired?
	Has the likelihood changed?
	 Has the impact changed?
Use answers for the rest of the process.
Another good source of lessons learned

## Risk Monitoring and Control Tasks

**Risk Monitoring and Control Tasks**
**Analyze risks**
**Analyze, update, document risk mitigation/contingency strategies**
**Implement risk mitigation/contingency strategies **
**Report updated risks and enter into Risk Management Database**

*http://software.gsfc.nasa.gov/isdpaindx.cfm  Asset 1.4.4*

## Risk Management – Related Assets

**Policies**
**ISD Software Policies (1.0.0.1)**
**FSW Risk Management Policy (1.2.3.1.0)**
**Processes and Sub-processes **
**ISD Software Risk Identification (1.2.3)**
**ISD Software Risk Monitoring and Control (1.4.4)**
**FSB Risk Management Process (1.2.3.1.1) – *****coming soon***
**Tools **
**FSB Risk Management Tool (1.2.3.3.1)**

*http://software.gsfc.nasa.gov/isdpaindx.cfm*

## Product Development Process Flow

## Requirements Management Process

**Requirements**
**Engineering**

**Keeps software project requirements change under control and lets you avoid unintended scope growth.**

*http://software.gsfc.nasa.gov/isdpaindx.cfm  Asset 2.2.2*

## Requirements Management Tasks

**Tasks performed sequentially and iteratively**

*http://software.gsfc.nasa.gov/isdpaindx.cfm  Asset 2.2.2*

**Notes:**
Impact goes beyond requirements: 
Design
Dev
Test
Interfaces
Users
Impact may differ depending on where you are in life cycle.
Need stakeholder review for approval

## Requirements Management Tasks

**Analyze change request**
**Prepare impact statement **
**Obtain change request approval**
**Generate changed requirements, specification, and change requests for other work products**
**Verify changed requirements and specifications**
**Validate changed requirements and specifications**
**Obtain approval to proceed**

*http://software.gsfc.nasa.gov/isdpaindx.cfm  Asset 2.2.2*

## Requirements Management – Related Assets

**Policies**
**ISD Software Policies (1.0.0.1)**
**Processes and Sub-processes**
**ISD Requirements Management Process (2.2.2)**
**Standards, Procedures, Guidelines, Templates, and Checklists **
**Contents of the Software Requirements Review (2.2.1.6)**
**FSW Requirements Review Standard (2.2.1.6.1)**
**FSW Requirements for Maintainability (2.2.1.1.2) – *****coming soon***
**FSW Requirements Document Template (2.2.1.2.1)**
**Tools **
**Rational RequisitePro – FSW standard requirements management aid (http://www-306.ibm.com/software/awdtools/reqpro/)**
**DOORs - Requirements tracing aid (http://www.telelogic.com/products/doorsers/doors/)**
**SLATE - Requirements tracing aid (http://www.sdrc.com/**

*http://software.gsfc.nasa.gov/isdpaindx.cfm*

## Organizational Support Process Flow

## Configuration Management Process

**Helps you maintain the integrity of work products.**

*Work products; change requests*

*Controlled work products; approved change requests*

*Status reports; audit results*

*CM Plan*

- Project Management Processes

- Project Planning

- Project Monitoring & Control

- Project Startup

- Project Closeout

- Project Formulation

- Product Development Processes

- Requirements Engineering

- Product Release

- Sustaining Engineering & Maintenance

- Design

- Implementation

- Testing

- Systems Engineering

**Configuration Management Process**

*Planning Data*

*http://software.gsfc.nasa.gov/isdpaindx.cfm  Asset 3.1*

**Notes:**
Uses
Configuration Identification 
Configuration control 
Status acting 
Configuration Audits 

## Configuration Management Tasks

*http://software.gsfc.nasa.gov/isdpaindx.cfm  Asset 3.1*

**Notes:**
Define controls:  
recording records 
approving & changing baselines 
process for baseline authorization and change 
Identify Configuration Items:  
What will be under CM control 
what’s in each baseline 
name/label conventions
Define CM procedures:  
establish 
control 
deliver
update and maintain

## Configuration Management Tasks

**Tasks performed during planning and startup**
**Define levels of control, responsibilities, and methods for change authorization**
**Identify configuration items**
**Define CM procedures**
**Prepare the CM Plan**
**Establish the software project CCB**
**Setup CM tools and libraries**
**Tasks performed iteratively**
**Establish baselines **
**Perform configuration control**
**Perform configuration status accounting **
**Perform configuration audits**

*http://software.gsfc.nasa.gov/isdpaindx.cfm  Asset 3.1*

## Configuration Management – Related Assets

**Policies**
**ISD Software Policies (1.0.0.1)**
**Processes and Sub-processes **
**ISD Software Configuration Management (3.1)**
**FSB Standards CCB Process (3.5.3.1.1)**
**Standards, Procedures, Guidelines, Templates, and Checklists **
**Functional Configuration Audit Checklist (3.1.1.3) – *****coming soon***
**Physical Configuration Audit Checklist (3.1.1.4) – *****coming soon***
**FSW Configuration Management Recommended Practice (3.1.1.2.2) – *****coming soon***
**FSW Configuration Management Plan Template (3.1.1.1.1)**

*http://software.gsfc.nasa.gov/isdpaindx.cfm*

## Software Assurance Process

**Software Assurance Process**

**Helps you ensure that software life cycle processes and products conform to requirements, standards, and procedures.**

**Software Assurance begins during mission formulation**
**The Office of Systems Safety and Mission Assurance (OSSMA), Code 300, nominally supports class B and class C software**
**Software Quality (SQ) support is responsible for objective *****evaluation of adherence***** to all Process and Product Quality Assurance (PPQA) requirements**
**Software Assurance is also supported by the Independent Verification and Validation Facility (IV&V) **
**Software projects work in concert with these organizations**

## Software Quality Tasks – Code 300

**Software Quality support – sequential and iterative**

**IV&V support (if funded) – sequential and iterative**

*http://software.gsfc.nasa.gov/isdpaindx.cfm  Asset 3.2.1.1*

## Software Quality Tasks – Code 300

**Software Quality support**
**Develop a Software Quality Plan to document quality program goals, processes, and responsibilities**
**Provide independent, objective evaluations of software processes and products throughout software life cycle **
**Communicate software assurance status with Software Management, project personnel, and IV&V (when assigned)**
**IV&V support**
**Conduct an IV&V start-up assessment**
**Develop the IV&V Plan**
**Conduct reviews and evaluations of high risk software**
**Communicate software assurance status**

*http://software.gsfc.nasa.gov/isdpaindx.cfm  Asset 3.2.1.1*

## If Not Supported By Code 300 ...

**Tasks performed sequentially and iteratively**

## If Not Supported By Code 300 ...

**Identify an objective person to perform SQ activities for the software project**
**Develop an SQ Plan to document quality program goals, processes, and responsibilities**
**Provide independent, objective evaluations of software processes and products throughout software life cycle **
**Communicate software quality status with Software Management and software project personnel**

## Software Assurance – Related Assets

**Policies **
**ISD Software Policies (1.0.0.1)**
**Processes and Sub-processes **
**Procedure for Developing and Implementing Software Quality Programs: ****http://sw-assurance.gsfc.nasa.gov/ disciplines/quality/index.php**
**Standards, Procedures, Guidelines, Templates, and Checklists **
**Software Quality Assurance Plan template: ****http://sw-assurance.gsfc.nasa.gov/disciplines/quality/index.php**
**ISD Software Assurance Planning Guidelines (3.2.1.1) – *****coming soon***
**Code 300 Assets: ****http://sw-assurance.gsfc.nasa.gov/ disciplines/quality/index.php**

*http://software.gsfc.nasa.gov/isdpaindx.cfm*

## Measurement and Analysis Process

*http://software.gsfc.nasa.gov/metrics.htm*

**Helps you collect and analyze metric data to support both software project management and process improvement.**

*Metric Data*

*Metrics Analysis*

- Product Development Processes

- Requirements Engineering

- Product Release

- Sustaining Engineering & Maintenance

- Project Management Processes

- Project Planning

- Project Monitoring & Control

- Project Startup

- Project Closeout

*Measurement Plan*

- Project Formulation

- Design

- Implementation

- Testing

- SW Systems Engineering

*Metric Data*

**Measurement **
**& Analysis Process**

**Notes:**
Implemented at 2 levels
	Project
	ISD
Related awareness sessions :
	Metrics for Projects
	ISD Metrics Program

## Measurement and Analysis Tasks

**Tasks performed sequentially and iteratively**

*http://software.gsfc.nasa.gov/metrics.htm*

**Notes:**
Plan - 	
	What do you need to measure progress, quality, and process?
	What does mgmt need from you? ... Consider status reports.
	What does ISD need for their program?
	How will you collect the data?
	Where will you store the data?
Collect and store – Measures collected may change over life cycle.
See the ISD Software Management Plan/Product Plan for Class B & C Software for guidance on what you need.

## Measurement and Analysis Tasks

**Plan software project measures**
**Collect and store measures**
**Analyze measures**
**Report measures**

*http://software.gsfc.nasa.gov/metrics.htm*

## Measurement and Analysis – Related Assets

**Policies**
**ISD Software Policies (1.0.0.1)**
**Processes and Sub-processes **
**ISD Measurement and Analysis (3.4) – *****coming soon***
**ISD Measurement Plan (3.4.11) – *****coming soon***
**Standards, Procedures, Guidelines, Templates, and Checklists **
**ISD Branch Status Review Template (1.4.3.4)**
**ISD Software Management Plan/Product Plan for Class B & C Software, ****measurement section**** (1.2.6.1) – *****coming soon***
**FSW Status Reporting Templates  (1.4.3.2.1, 1.4.3.2.2, 1.4.3.2.3)**
**Tools**
**Point Counting Spreadsheet (1.4.2.1)**
**ISD Measurement Collection Spreadsheet – *****coming soon***
**Web Site **
**(http://software.gsfc.nasa.gov/metrics.htm)**

*http://software.gsfc.nasa.gov/isdpaindx.cfm*

## Using the ISD Software Process Website 

**Attend the ISD Software Process Website Overview coming soon**
**Look for ISD and FSW assets in the PAL**

## Viewing Assets in the PAL

**View assets by *****Index*****, *****All Approved*****, *****Asset Type*****, or *****Role***
**View assets by process category**
***Project Management***
***Product Development***
***Organizational Support***
***Acquisition***
**Click *****Tailored***** for FSW policy, process guidelines, templates, roles, etc.**

## Searching for Assets in the PAL

**Use the Search option from any asset list view**

## Feedback and Help

**Provide feedback on assets or the PAL**
**Go to *****http://software.gsfc.nasa.gov/index.cfm***** **
**Highlight process name and click for a *****Feedback Form***
**Get help when you need it**
**Sally Godfrey – Software Process Improvement Manager**
***Sara.H.Godfrey@nasa.gov ***
**Sanjeev Sharma – Software Process Improvement**
***Sanjeev.K.Sharma@nasa.gov***

## For Information on Presentations

**For Slides, look under Training**
**Then Training Program**
**Then SE Discussion Slides Archive**

**For Presentation schedule, look under Training**
**Then Training Program**
**Then SW Engineering Discussions**

## Questions