**Assignment Kits**

These assignment kits contain the forms students need to do the
assignments in the

textbook *A Discipline for Software Engineering* by Watts S. Humphrey.
In using them:

-   Provide each student with a copy of the kit for the current lecture.

-   Review the assignment kit instructions to ensure that the students
    understand them.

-   Review the chapter and exercise assignments for that kit.

-   Urge the students to read the process description, process scripts,
    and exercise specifications before starting the assignment.

-   Emphasize that the students should focus on doing just what is
    required in a simple and straightforward manner.

-   When time permits, walk the students through an example of how to
    use the new forms, practices, and methods.

The forms provided with each kit are shown on the front page of that kit
in ***bold italic***s.

Only the forms and templates are provided. The scripts and instructions
are in the

textbook.

**Summary Kit Contents**

Lecture 1: Kit cover sheet (page 2)

> Kit 1 Exercise 1A

Lecture 2: Kit 2 Exercise 2A

> Reports R1 and R2

Lecture 3: Kit 3 Exercise 3A

> Report R3

Lecture 4: Kit 4 Exercise 4A

Lecture 5: Kit 5 Exercise 5A

Lecture 6: Kit 6 Exercise 6A

Lecture 7: Kit 7 Report R4

Lecture 8: Kit 8 Exercise 7A

Lecture 9: Kit 9 Exercise 8A

Lecture 10: Kit 10 Exercise 9A

Lecture 11 Kit 11 Exercise 10A

Lecture 12 Kit 12 Continue working on exercise 10A

Lecture 13 Kit 13 Report R5

Lecture 14 Kit 14 Continue working on report R5

Lecture 15 No kit required No assignment

**Forms for the Personal Software Process**

**by**

**Watts S. Humphrey**

This document contains the forms for each version of the PSP processes
in the textbook *A Discipline for Software Engineering* by Watts S.
Humphrey. These forms are arranged in sets of 14 assignment kits. One
kit is provided for each lecture where a homework assignment is given.
As you do the programming exercises in the textbook, you will need
copies of the forms for recording and reporting on your results. To
obtain these forms, use the kits as follows:

-   Keep a master copy of each assignment kit.

-   For each programming exercise, make copies of all the forms
    specified on the front page of the kit for that assignment.

-   The new forms and templates provided with each kit are shown in
    ***bold italic***s. The other forms and templates must be obtained
    from the prior assignment kits.

-   The text references for the scripts and the form and template
    instructions are also provided in the table giving the contents for
    each kit.

-   You will likely find it convenient to keep a master set of all the
    forms and templates used in the latest process version and to add or
    to replace items in this master set with each new kit.

-   Review the instructions on the front page of the kit to ensure that
    you understand them.

-   Review the exercise specifications in Appendix D of the textbook and
    the process specifications in Appendix C of the textbook to ensure
    you understand them.

A summary of the standard assignments and process version contents are
given on the first page of each assignment kit.

**Assignment Kit \# 1**

**Process version: PSP0**

**Lecture Number: 1**

Assignment:

+---+------------+------------------------------------------------------+
|   | Text       | Read the preface and Chapters 1 and 2.               |
+---+------------+------------------------------------------------------+
|   | Program 1A | Use PSP0 to write program 1A to calculate the mean   |
|   |            | and standard                                         |
|   |            |                                                      |
|   |            | deviation from a linked list.                        |
+---+------------+------------------------------------------------------+

**Before writing program 1A, read the process and exercise
specifications in**

**Appendices C and D.**

  ---------------------------------- -------------- -------------------------
  Assignment Kit 1 Contents          Instructions   Order to submit
                                                    assignment

  PSP0 Process Scripts                              PSP0 Project Plan Summary

  C10 PSP0 Script                    n/a            Time Recording Log

  C11 PSP0 Planning Script           n/a            Defect Recording Log

  C12 PSP0 Development Script        n/a            Source program listing

  C13 PSP0 Postmortem Script         n/a            Other requested materials

  Forms, Templates, and Standards                   

  ***C14 PSP0 Project Plan           C15            
  Summary***                                        

  ***C16 Time Recording Log***       C17            

  ***C18 Defect Recording Log***     C19            

  C20 Defect Type Standard           n/a            
  ---------------------------------- -------------- -------------------------

**Table C14 PSP0 Project Plan Summary**

  ------------ ------------------------------------ ---------- -----------
  Student                                           Date       

  Program                                           Program \# 

  Instructor                                        Language   
  ------------ ------------------------------------ ---------- -----------

  -------------------------- --------- -- ------------ -- --------- -- ----------
  **Time in Phase (min.)**   Plan         **Actual**      **To         **To Date
                                                          Date**       %**

  Planning                                                             

  Design                                                               

  Code                                                                 

  Compile                                                              

  Test                                                                 

  Postmortem                                                           

  Total                                                                

                                                                       

  **Defects Injected**                    **Actual**      **To         **To Date
                                                          Date**       %**

  Planning                                                             

  Design                                                               

  Code                                                                 

  Compile                                                              

  Test                                                                 

  Total Development                                                    

                                                                       

  **Defects Removed**                     **Actual**      **To         **To Date
                                                          Date**       %**

  Planning                                                             

  Design                                                               

  Code                                                                 

  Compile                                                              

  Test                                                                 

  Total Development                                                    

  After Development                                                    
  -------------------------- --------- -- ------------ -- --------- -- ----------

**Table C16 Time Recording Log**

+----+------+----+-------------+------+------+---+---------+----------+
| S  |      |    |             |      |      |   | Date    |          |
| tu |      |    |             |      |      |   |         |          |
| de |      |    |             |      |      |   |         |          |
| nt |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
| In |      |    |             |      |      |   | Program |          |
| st |      |    |             |      |      |   | \#      |          |
| ru |      |    |             |      |      |   |         |          |
| ct |      |    |             |      |      |   |         |          |
| or |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
| ** | *    | ** | **Int       | *    | *    | * |         |          |
| Da | *Sta | St | erruption** | *Del | *Pha | * |         |          |
| te | rt** | op |             | ta** | se** | C |         |          |
| ** |      | ** | **Time**    |      |      | o |         |          |
|    |      |    |             | **Ti |      | m |         |          |
|    |      |    |             | me** |      | m |         |          |
|    |      |    |             |      |      | e |         |          |
|    |      |    |             |      |      | n |         |          |
|    |      |    |             |      |      | t |         |          |
|    |      |    |             |      |      | s |         |          |
|    |      |    |             |      |      | * |         |          |
|    |      |    |             |      |      | * |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+
|    |      |    |             |      |      |   |         |          |
+----+------+----+-------------+------+------+---+---------+----------+

**Table C18 Defect Recording Log**

  -------------- -- -------- -- ---- -- ------- -- -------- -- -------- -- --------- -------- -- ---------
  Student                                                                  Date                  

  Instructor                                                               Program               
                                                                           \#                    

  Date              Number              Type       Inject      Remove                Fix Time    Fix
                                                                                                 Defect

                                                                                                 

  Description:                                                                                   

                                                                                                 

                                                                                                 

  Date              Number              Type       Inject      Remove                Fix Time    Fix
                                                                                                 Defect

                                                                                                 

  Description:                                                                                   

                                                                                                 

                                                                                                 

  Date              Number              Type       Inject      Remove                Fix Time    Fix
                                                                                                 Defect

                                                                                                 

  Description:                                                                                   

                                                                                                 

                                                                                                 

  Date              Number              Type       Inject      Remove                Fix Time    Fix
                                                                                                 Defect

                                                                                                 

  Description:                                                                                   

                                                                                                 

                                                                                                 

  Date              Number              Type       Inject      Remove                Fix Time    Fix
                                                                                                 Defect

                                                                                                 

  Description:                                                                                   

                                                                                                 

                                                                                                 

  Date              Number              Type       Inject      Remove                Fix Time    Fix
                                                                                                 Defect

                                                                                                 

  Description:                                                                                   

                                                                                                 

                                                                                                 

  Date              Number              Type       Inject      Remove                Fix Time    Fix
                                                                                                 Defect

                                                                                                 

  Description:                                                                                   

                                                                                                 

                                                                                                 

  Date              Number              Type       Inject      Remove                Fix Time    Fix
                                                                                                 Defect

                                                                                                 

  Description:                                                                                   

                                                                                                 

                                                                                                 

  Date              Number              Type       Inject      Remove                Fix Time    Fix
                                                                                                 Defect

                                                                                                 

  Description:                                                                                   

                                                                                                 

                                                                                                 
  -------------- -- -------- -- ---- -- ------- -- -------- -- -------- -- --------- -------- -- ---------

**Assignment Kit \# 2**

**Process version: PSP0.1**

**Lecture Number: 2**

Assignment:

  --- ------------ ------------------------------------------------------
      Text         Read Chapters 3 and 4.

      Program 2A   Use PSP0.1 to write program 2A, an LOC counter.

      Report R1    LOC counting standard

      Report R2    Coding standard
  --- ------------ ------------------------------------------------------

**Before writing program 2A or the R1 and R2 reports, read the process
and exercise**

**specifications in Appendices C and D.**

  ---------------------------------- -------------- -------------------------
  Assignment Kit 2 Contents          Instructions   Order to submit
                                                    assignment

  PSP0.1 Process Scripts                            PSP0.1 Project Plan
                                                    Summary

  C21 PSP0.1 Script                  n/a            PIP form, including
                                                    lessons learned

  C22 PSP0.1 Planning Script         n/a            Time Recording Log

  C23 PSP0.1 Development Script      n/a            Defect Recording Log

  C24 PSP0.1 Postmortem Script       n/a            Source program listing

  Forms, Templates, and Standards                   Report R1

  ***C25 PSP0.1 Project Plan         C26            Report R2
  Summary***                                        

  ***C27 Process Improvement         C28            Other requested materials
  Proposal***                                       

  C29 Coding Standard                n/a            

  C16 Time Recording Log             C17            

  C18 Defect Recording Log           C19            

  C20 Defect Type Standard           n/a            
  ---------------------------------- -------------- -------------------------

**Table C25 PSP0.1 Project Plan Summary**

  ------------ ------------------------------------ ---------- -----------
  Student                                           Date       

  Program                                           Program \# 

  Instructor                                        Language   
  ------------ ------------------------------------ ---------- -----------

  -------------------------- ------------ -- ------------ -- ------------------ -- -------- -- --------- -- ----------
  ***Program Size (LOC)***   ***Plan***                      ***Actual***                      ***To        
                                                                                               Date***      

  ***Base(B)***                                                                                             

                                                             ***(Measured)***                               

  ***Deleted (D)***                                                                                         

                                                             ***(Counted)***                                

  ***Modified (M)***                                                                                        

                                                             ***(Counted)***                                

  ***Added (A)***                                                                                           

                                                             ***(T-B+D-R)***                                

  ***Reused (R)***                                                                                          

                                                             ***(Counted)***                                

  ***Total New & Changed                                                                                    
  (N)***                                                                                                    

                                                             ***(A+M)***                                    

  ***Total LOC (T)***                                                                                       

                                                             ***(Measured)***                               

  ***Total New Reused***                                                                                    

                                                                                                            

  **Time in Phase (min.)**   ***Plan***      **Actual**                            **To                     **To Date
                                                                                   Date**                   %**

  Planning                                                                                                  

  Design                                                                                                    

  Code                                                                                                      

  Compile                                                                                                   

  Test                                                                                                      

  Postmortem                                                                                                

  Total                                                                                                     

                                                                                                            

  **Defects Injected**                       **Actual**                            **To                     **To Date
                                                                                   Date**                   %**

  Planning                                                                                                  

  Design                                                                                                    

  Code                                                                                                      

  Compile                                                                                                   

  Test                                                                                                      

  Total Development                                                                                         

                                                                                                            

  **Defects Removed**                        **Actual**                            **To                     **To Date
                                                                                   Date**                   %**

  Planning                                                                                                  

  Design                                                                                                    

  Code                                                                                                      

  Compile                                                                                                   

  Test                                                                                                      

  Total Development                                                                                         

  After Development                                                                                         
  -------------------------- ------------ -- ------------ -- ------------------ -- -------- -- --------- -- ----------

**Table C27 Process Improvement Proposal (PIP)**

  ------------ ------------------------- ---------- ---------- -----------
  Student                                           Date       

  Instructor                                        Program \# 

  Process                                Elements              
  ------------ ------------------------- ---------- ---------- -----------

  -------------- -- --------------------- --------------------------------------
  **PIP Number**                          

                    **Problem             
                    Description:**        

                                          

                                          

                                          

                                          

                                          

                                          

                                          

                                          

                                          

                                          

  **PROPOSAL**                            

  **PIP \#**        **Proposal            
                    Description**         

                                          

                                          

                                          

                                          

                                          

                                          

                                          

                                          

                                          

  **Notes and                             
  Comments:**                             

                                          

                                          

                                          

                                          

                                          

                                          

                                          

                                          

                                          

                                          

                                          

                                          
  -------------- -- --------------------- --------------------------------------

**Assignment Kit \# 3**

**Process version: PSP0.1**

**Lecture Number: 3**

Assignment:

  --- ------------ ------------------------------------------------------
      Text         Read the first half of Chapter 5.

      Program 3A   Use PSP0.1 to write program 3A, an object LOC counter.

      Report R3    Defect analysis report on programs 1A, 2A, and 3A
  --- ------------ ------------------------------------------------------

**Before writing program 3A or report R3, read the process and
exercise**

**specifications in Appendices C and D.**

  ---------------------------------- -------------- -------------------------
  Assignment Kit 3 Contents          Instructions   Order to submit
                                                    assignment

  PSP0.1 Process Scripts                            PSP0.1 Project Plan
                                                    Summary

  C21 PSP0.1 Script                  n/a            PIP form, including
                                                    lessons learned

  C22 PSP0.1 Planning Script         n/a            Time Recording Log

  C23 PSP0.1 Development Script      n/a            Defect Recording Log

  C24 PSP0.1 Postmortem Script       n/a            Source program listing

  Forms, Templates, and Standards                   Report R1

  C25 PSP0.1 Project Plan Summary    C26            Report R2

  C27 Process Improvement Proposal   C28            Other requested materials

  C29 Coding Standard                n/a            

  C16 Time Recording Log             C17            

  C18 Defect Recording Log           C19            

  C20 Defect Type Standard           n/a            
  ---------------------------------- -------------- -------------------------

**Assignment Kit \# 4**

**Process version: PSP1**

**Lecture Number: 4**

Assignment:

  --- ------------ ------------------------------------------------------
      Text         Read the last half of Chapter 5.

      Program 4A   Use PSP1 to write program 4A to calculate the linear
                   regression parameters from a linked list.
  --- ------------ ------------------------------------------------------

**Before writing program 4A, read the process and exercise
specifications in**

**Appendices C and D.**

  ---------------------------------- -------------- -------------------------
  Assignment Kit 4 Contents          Instructions   Order to submit
                                                    assignment

  PSP1 Process Scripts                              PSP1 Project Plan Summary

  C30 PSP1 Script                    n/a            Test Report

  C31 PSP1 Planning Script           n/a            PIP form, including
                                                    lessons learned

  C32 PSP1 Development Script        n/a            Size Estimating Template

  C33 PSP1 Postmortem Script         n/a            Time Recording Log

  C36 PROBE Estimating Script        n/a            Defect Recording Log

  Forms, Templates, and Standards                   Source program listing

  ***C34 PSP1 Project Plan           C35            Other requested materials
  Summary***                                        

  ***C37 Test Report Template***     C38            

  ***C39 Size Estimating Template*** C40            

  C27 Process Improvement Proposal   C28            

  C29 Coding Standard                n/a            

  C16 Time Recording Log             C17            

  C18 Defect Recording Log           C19            

  C20 Defect Type Standard           n/a            
  ---------------------------------- -------------- -------------------------

**Table C34 PSP1 Project Plan Summary**

  ------------ ------------------------------------ ---------- -----------
  Student                                           Date       

  Program                                           Program \# 

  Instructor                                        Language   
  ------------ ------------------------------------ ---------- -----------

  -------------------------- ------------- -- ------------ -- -------------- -- -------- -- --------- -- ----------
  ***Summary***              ***Plan***                       ***Actual***                  ***To        
                                                                                            Date***      

  ***LOC/Hour***                                                                                         

                                                                                                         

  **Program Size (LOC):**    ***Plan***                       **Actual**                    **To         
                                                                                            Date**       

  Base(B)                                                                                                

                             (Measured)                       (Measured)                                 

  Deleted (D)                                                                                            

                             (Estimated)                      (Counted)                                  

  Modified (M)                                                                                           

                             (Estimated)                      (Counted)                                  

  Added (A)                                                                                              

                             (N-M)                            (T-B+D-R)                                  

  Reused (R)                                                                                             

                             (Estimated)                      (Counted)                                  

  Total New & Changed (N)                                                                                

                             (Estimated)                      (A+M)                                      

  Total LOC (T)                                                                                          

                             (N+B-M-D+R)                      (Measured)                                 

  Total New Reused                                                                                       

                                                                                                         

  **Time in Phase (min.)**   **Plan**         **Actual**                        **To                     **To Date
                                                                                Date**                   %**

  Planning                                                                                               

  Design                                                                                                 

  Code                                                                                                   

  Compile                                                                                                

  Test                                                                                                   

  Postmortem                                                                                             

  Total                                                                                                  

                                                                                                         

  **Defects Injected**                        **Actual**                        **To                     **To Date
                                                                                Date**                   %**

  Planning                                                                                               

  Design                                                                                                 

  Code                                                                                                   

  Compile                                                                                                

  Test                                                                                                   

  Total Development                                                                                      

                                                                                                         

  **Defects Removed**                         **Actual**                        **To                     **To Date
                                                                                Date**                   %**

  Planning                                                                                               

  Design                                                                                                 

  Code                                                                                                   

  Compile                                                                                                

  Test                                                                                                   

  Total Development                                                                                      

  After Development                                                                                      
  -------------------------- ------------- -- ------------ -- -------------- -- -------- -- --------- -- ----------

**Table C37 Test Report Template**

  ------------ ------------------------------------ ---------- -----------
  Student                                           Date       

  Instructor                                        Program \# 
  ------------ ------------------------------------ ---------- -----------

  -------------------- --------------------------------------------------
  **Test Name/Number** 

  **Test Objective**   

  **Test Description** 

                       

                       

                       

  **Test Conditions**  

                       

                       

                       

  **Expected Results** 

                       

                       

  **Actual Results**   

                       

                       

                       

                       

  **Test Name/Number** 

  **Test Objective**   

  **Test Description** 

                       

                       

                       

  **Test Conditions**  

                       

                       

                       

  **Expected Results** 

                       

                       

  **Actual Results**   

                       

                       

                       

                       
  -------------------- --------------------------------------------------

Table C39 Size Estimating Template

  ------------ ------------------------------------ ---------- -----------
  Student                                           Date       

  Instructor                                        Program \# 
  ------------ ------------------------------------ ---------- -----------

  ----------------------------------------------------- -- ---------- -------- -- --------- -------- -- ------ -------- ---------- ----------- -------- -- ----- -------- --
  **BASE PROGRAM LOC**                                                                                                  ESTIMATE                                 ACTUAL   

  BASE SIZE (B) =\> =\> =\> =\> =\> =\> =\> =\> =\> =\>                                                                                                                   

  LOC DELETED (D) =\> =\> =\> =\> =\> =\> =\> =\> =\>                                                                                                                     

  LOC MODIFIED (M) =\> =\> =\> =\> =\> =\> =\> =\> =\>                                                                                                                    

  **OBJECT LOC**                                                                                                                                                          

  BASE ADDITIONS                                           TYPE[^1]               METHODS               REL.                       LOC                     LOC            
                                                                                                        SIZE                                                              

                                                                                                                                                                          

                                                                                                                                                                          

                                                                                                                                                                          

                                                                                                                                                                          

  TOTAL BASE ADDITIONS (BA) =\> =\> =\> =\> =\> =\> =\>                                                                                                                   

  NEW OBJECTS                                              TYPE                   METHODS               REL.                       LOC (New                               
                                                                                                        SIZE                       Reused\*)                              

                                                                                                                                                                          

                                                                                                                                                                          

                                                                                                                                                                          

                                                                                                                                                                          

                                                                                                                                                                          

                                                                                                                                                                          

  TOTAL NEW OBJECTS (NO) =\> =\> =\> =\> =\> =\> =\>                                                                                                                      

  **REUSED OBJECTS**                                                                                                                                                      

                                                                                                                                                                          

                                                                                                                                                                          

                                                                                                                                                                          

                                                                                                                                                                          

  REUSED TOTAL (R) =\> =\> =\> =\> =\> =\> =\> =\> =\>                                                                                                                    

                                                                                                                                               SIZE              TIME     

  Estimated Object LOC (E): E = BA + NO + M                                                                                                                               

  Regression Parameters:                                                                                                                                                  
  ![](media/image1.wmf){width="0.16666666666666666in"                                                                                                                     
  height="0.19444444444444445in"} (size and time)                                                                                                                         

  Regression Parameters:                                                                                                                                                  
  ![](media/image2.wmf){width="0.1527777777777778in"                                                                                                                      
  height="0.19444444444444445in"} (size and time)                                                                                                                         

  Estimated New and Changed LOC (N): N =                                                                                                                                  
  ![](media/image1.wmf){width="0.16666666666666666in"                                                                                                                     
  height="0.19444444444444445in"} +                                                                                                                                       
  ![](media/image2.wmf){width="0.1527777777777778in"                                                                                                                      
  height="0.19444444444444445in"} \* E                                                                                                                                    

  Estimated Total LOC: T = N + B − D − M + R                                                                                                                              

  Estimated Total New Reuse (sum of \* LOC):                                                                                                                              

  Estimated Total Development Time: Time =                                                                                                                                
  ![](media/image1.wmf){width="0.16666666666666666in"                                                                                                                     
  height="0.19444444444444445in"} +                                                                                                                                       
  ![](media/image2.wmf){width="0.1527777777777778in"                                                                                                                      
  height="0.19444444444444445in"}\*E                                                                                                                                      

  Prediction Range: Range                                                                                                                                                 

  Upper Prediction Interval: UPI = N + Range                                                                                                                              

  Lower Prediction Interval: LPI = N − Range                                                                                                                              

  Prediction Interval Percent:                                                                                                                                            
  ----------------------------------------------------- -- ---------- -------- -- --------- -------- -- ------ -------- ---------- ----------- -------- -- ----- -------- --

**Assignment Kit \# 5**

**Process version: PSP1.1**

**Lecture Number: 5**

Assignment:

  --- ------------ ------------------------------------------------------
      Text         Read Chapter 6.

      Program 5A   Use PSP1.1 to write program 5A to do numerical
                   integration using Simpson\'s rule.
  --- ------------ ------------------------------------------------------

**Before writing program 5A, read the process and exercise
specifications in**

**Appendices C and D.**

  ---------------------------------- -------------- -------------------------
  Assignment Kit 5 Contents          Instructions   Order to submit
                                                    assignment

  PSP1.1 Process Scripts                            PSP1.1 Project Plan
                                                    Summary

  C41 PSP1.1 Script                  n/a            Test Report

  C42 PSP1.1 Planning Script         n/a            PIP form, including
                                                    lessons learned

  C43 PSP1.1 Development Script      n/a            Size Estimating Template

  C44 PSP1.1 Postmortem Script       n/a            Task Planning Template

  C36 PROBE Estimating Script        n/a            Schedule Planning
                                                    Template

  Forms, Templates, and Standards                   Time Recording Log

  ***C45 PSP1.1 Project Plan         C46            Defect Recording Log
  Summary***                                        

  ***C47 Task Planning Template***   C48            Source program listing

  ***C49 Schedule Planning           C50            Other requested materials
  Template***                                       

  C37 Test Report Template           C38            

  C39 Size Estimating Template       C40            

  C27 Process Improvement Proposal   C28            

  C29 Coding Standard                n/a            

  C16 Time Recording Log             C17            

  C18 Defect Recording Log           C19            

  C20 Defect Type Standard           n/a            
  ---------------------------------- -------------- -------------------------

**Table C45 PSP1.1 Project Plan Summary**

  ------------ ------------------------------------ ---------- -----------
  Student                                           Date       

  Program                                           Program \# 

  Instructor                                        Language   
  ------------ ------------------------------------ ---------- -----------

  -------------------------- ------------- -- ------------ -- ------------ -- -------- -- ------------------ -- ---------
  **Summary**                **Plan**                         **Actual**                  **To Date**           

  LOC/Hour                                                                                                      

  ***Actual Time***                                                                                             

  ***Planned Time***                                                                                            

  ***CPI(Cost-Performance                                                                                       
  Index)***                                                                                                     

                                                                                          (Actual/Planned)      

  ***% Reused***                                                                                                

  ***% New Reused***                                                                                            

                                                                                                                

  **Program Size (LOC):**    **Plan**                         **Actual**                  **To Date**           

  Base(B)                                                                                                       

                             (Measured)                       (Measured)                                        

  Deleted (D)                                                                                                   

                             (Estimated)                      (Counted)                                         

  Modified (M)                                                                                                  

                             (Estimated)                      (Counted)                                         

  Added (A)                                                                                                     

                             (N-M)                            (T-B+D-R)                                         

  Reused (R)                                                                                                    

                             (Estimated)                      (Counted)                                         

  Total New & Changed (N)                                                                                       

                             (Estimated)                      (A+M)                                             

  Total LOC (T)                                                                                                 

                             (N+B-M-D+R)                      (Measured)                                        

  Total New Reused                                                                                              

                                                                                                                

  **Time in Phase (min.)**   **Plan**         **Actual**                      **To                              **To Date
                                                                              Date**                            %**

  Planning                                                                                                      

  Design                                                                                                        

  Code                                                                                                          

  Compile                                                                                                       

  Test                                                                                                          

  Postmortem                                                                                                    

  Total                                                                                                         
  -------------------------- ------------- -- ------------ -- ------------ -- -------- -- ------------------ -- ---------

**(continued)**

**Table C45 PSP1.1 Project Plan Summary (continued)**

  ------------ ------------------------------------ ---------- -----------
  Student                                           Date       

  Program                                           Program \# 

  Instructor                                        Language   
  ------------ ------------------------------------ ---------- -----------

  -------------------------- --------- -- ------------ -- --------- -- ----------
  **Defects Injected**                    **Actual**      **To         **To Date
                                                          Date**       %**

  Planning                                                             

  Design                                                               

  Code                                                                 

  Compile                                                              

  Test                                                                 

  Total Development                                                    

                                                                       

  **Defects Removed**                     **Actual**      **To         **To Date
                                                          Date**       %**

  Planning                                                             

  Design                                                               

  Code                                                                 

  Compile                                                              

  Test                                                                 

  Total Development                                                    

  After Development                                                    
  -------------------------- --------- -- ------------ -- --------- -- ----------

**Table C47 Task Planning Template**

  ------------ ------------------------------------ ------------ -----------
  Student                                           Date         

  Project                                           Instructor   
  ------------ ------------------------------------ ------------ -----------

<table>
<colgroup>
<col style="width: 4%" />
<col style="width: 16%" />
<col style="width: 8%" />
<col style="width: 9%" />
<col style="width: 12%" />
<col style="width: 12%" />
<col style="width: 8%" />
<col style="width: 7%" />
<col style="width: 8%" />
<col style="width: 12%" />
</colgroup>
<tbody>
<tr class="odd">
<td colspan="2"><strong>Task</strong></td>
<td colspan="5"><strong>Plan</strong></td>
<td colspan="3"><strong>Actual</strong></td>
</tr>
<tr class="even">
<td><strong>#</strong></td>
<td><strong>Name</strong></td>
<td><strong>Hours</strong></td>
<td><strong>Planned Value</strong></td>
<td><p><strong>Cumulative</strong></p>
<p><strong>Hours</strong></p></td>
<td><p><strong>Cumulative Planned</strong></p>
<p><strong>Value</strong></p></td>
<td><p><strong>Date</strong></p>
<p><strong>Monday</strong></p></td>
<td><strong>Date</strong></td>
<td><strong>Earned Value</strong></td>
<td><strong>Cumulative Earned Value</strong></td>
</tr>
<tr class="odd">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="even">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="odd">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="even">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="odd">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="even">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="odd">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="even">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="odd">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="even">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="odd">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="even">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="odd">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="even">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="odd">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="even">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="odd">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="even">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="odd">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="even">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="odd">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="even">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="odd">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="even">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="odd">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="even">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="odd">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="even">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="odd">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="even">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="odd">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="even">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="odd">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr class="even">
<td colspan="2">Totals</td>
<td></td>
<td></td>
<td colspan="6"></td>
</tr>
</tbody>
</table>

**Table C49 Schedule Planning Template**

  ------------ ------------------------------------- ------------ -----------
  Student                                            Date         

  Project                                            Instructor   
  ------------ ------------------------------------- ------------ -----------

  ---------- ---------- ------------ ---------------- ---------------- ------------ ---------------- ---------------- --------------
                        **Plan**                                       **Actual**                                     

  **Week**   **Date**   **Direct**   **Cumulative**   **Cumulative**   **Direct**   **Cumulative**   **Cumulative**   **Adjusted**

  **No.**    Monday     **Hours**    **Hours**        **Planned        **Hours**    **Hours**        **Earned Value** **Earned
                                                      Value**                                                         Value**

                                                                                                                      

                                                                                                                      

                                                                                                                      

                                                                                                                      

                                                                                                                      

                                                                                                                      

                                                                                                                      

                                                                                                                      

                                                                                                                      

                                                                                                                      

                                                                                                                      

                                                                                                                      

                                                                                                                      

                                                                                                                      

                                                                                                                      

                                                                                                                      

                                                                                                                      

                                                                                                                      

                                                                                                                      

                                                                                                                      

                                                                                                                      

                                                                                                                      

                                                                                                                      

                                                                                                                      

                                                                                                                      

                                                                                                                      

                                                                                                                      

                                                                                                                      

                                                                                                                      

                                                                                                                      

                                                                                                                      

                                                                                                                      

                                                                                                                      
  ---------- ---------- ------------ ---------------- ---------------- ------------ ---------------- ---------------- --------------

**Assignment Kit \# 6**

**Process version: PSP1.1**

**Lecture Number: 6**

**Assignment:**

  --- ------------ ------------------------------------------------------
      Text         Read Chapter 7.

      Program 6A   Use PSP1.1 to write program 6A to calculate the linear
                   regression prediction interval.
  --- ------------ ------------------------------------------------------

**Before writing program 6A, read the process and exercise
specifications in**

**Appendices C and D.**

  ---------------------------------- -------------- -------------------------
  Assignment Kit 6 Contents          Instructions   Order to submit
                                                    assignment

  PSP1.1 Process Scripts                            PSP1.1 Project Plan
                                                    Summary

  C41 PSP1.1 Script                  n/a            Test Report

  C42 PSP1.1 Planning Script         n/a            PIP form, including
                                                    lessons learned

  C43 PSP1.1 Development Script      n/a            Size Estimating Template

  C44 PSP1.1 Postmortem Script       n/a            Task Planning Template

  C36 PROBE Estimating Script        n/a            Schedule Planning
                                                    Template

  Forms, Templates, and Standards                   Time Recording Log

  C45 PSP1.1 Project Plan Summary    C46            Defect Recording Log

  C47 Task Planning Template         C48            Source program listing

  C49 Schedule Planning Template     C50            Other requested materials

  C37 Test Report Template           C38            

  C39 Size Estimating Template       C40            

  C27 Process Improvement Proposal   C28            

  C29 Coding Standard                n/a            

  C16 Time Recording Log             C17            

  C18 Defect Recording Log           C19            

  C20 Defect Type Standard           n/a            
  ---------------------------------- -------------- -------------------------

**Assignment Kit \# 7**

**Lecture Number: 7**

Assignment:

  --- ------------ ------------------------------------------------------
      Text         Read Chapter 8.

      Report R4    Write report R4, the midterm analysis report.
  --- ------------ ------------------------------------------------------

**Before writing report R4, read the process and exercise specifications
in Appendices**

**C and D.**

  ---------------------------------- -------------- -------------------------
  Assignment Kit 7 Contents          Instructions   Order to submit
                                                    assignment

                                                    Report R4

                                                    PIP form, including
                                                    lessons learned
  ---------------------------------- -------------- -------------------------

**Assignment Kit \# 8**

**Process version: PSP2**

**Lecture Number: 8**

**Assignment:**

  --- ------------ ------------------------------------------------------
      Text         Read Chapter 9

      Program 7A   Use PSP2 to write program 7A to determine the
                   correlation of two sets of data, using a linked list.
  --- ------------ ------------------------------------------------------

**Before writing program 7A, read the process and exercise
specifications in**

**Appendices C and D.**

  ---------------------------------- -------------- -------------------------
  Assignment Kit 8 Contents          Instructions   Order to submit
                                                    assignment

  PSP2 Process Scripts                              PSP2 Project Plan Summary

  C51 PSP2 Script                    n/a            Test Report

  C52 PSP2 Planning Script           n/a            PSP2 Design Review
                                                    Checklist

  C53 PSP2 Development Script        n/a            Code Review Checklist

  C54 PSP2 Postmortem Script         n/a            PIP form, including
                                                    lessons learned

  C36 PROBE Estimating Script        n/a            Size Estimating Template

  Forms, Templates, and Standards                   Task Planning Template

  ***C55 PSP2 Project Plan           C56            Schedule Planning
  Summary***                                        Template

  ***C57 PSP2 Design Review          n/a            Time Recording Log
  Checklist***                                      

  ***C58 Code Review Checklist***    n/a            Defect Recording Log

  C47 Task Planning Template         C48            Source program listing

  C49 Schedule Planning Template     C50            Other requested materials

  C37 Test Report Template           C38            

  C39 Size Estimating Template       C40            

  C27 Process Improvement Proposal   C28            

  C29 Coding Standard                n/a            

  C16 Time Recording Log             C17            

  C18 Defect Recording Log           C19            

  C20 Defect Type Standard           n/a            
  ---------------------------------- -------------- -------------------------

**Table C55 PSP2 Project Plan Summary**

  ------------ ------------------------------------ ---------- -----------
  Student                                           Date       

  Program                                           Program \# 

  Instructor                                        Language   
  ------------ ------------------------------------ ---------- -----------

  -------------------------- ------------- -- ------------ -- ------------ -- -------- -- ------------------ -- ---------
  **Summary**                **Plan**                         **Actual**                  **To Date**           

  LOC/Hour                                                                                                      

  Actual Time                                                                                                   

  Planned Time                                                                                                  

  CPI(Cost-Performance                                                                                          
  Index)                                                                                                        

                                                                                          (Actual/Planned)      

  \% Reused                                                                                                     

  \% New Reused                                                                                                 

  ***Test Defects/KLOC***                                                                                       

  ***Total Defects/KLOC***                                                                                      

  ***Yield %***                                                                                                 

                                                                                                                

  **Program Size (LOC):**    **Plan**                         **Actual**                  **To Date**           

  Base(B)                                                                                                       

                             (Measured)                       (Measured)                                        

  Deleted (D)                                                                                                   

                             (Estimated)                      (Counted)                                         

  Modified (M)                                                                                                  

                             (Estimated)                      (Counted)                                         

  Added (A)                                                                                                     

                             (N-M)                            (T-B+D-R)                                         

  Reused (R)                                                                                                    

                             (Estimated)                      (Counted)                                         

  Total New & Changed (N)                                                                                       

                             (Estimated)                      (A+M)                                             

  Total LOC (T)                                                                                                 

                             (N+B-M-D+R)                      (Measured)                                        

  Total New Reused                                                                                              

  ***Upper Prediction                                                                                           
  Interval (70%)***                                                                                             

  ***Lower Prediction                                                                                           
  Interval (70%)***                                                                                             

                                                                                                                

  **Time in Phase (min.)**   **Plan**         **Actual**                      **To                              **To Date
                                                                              Date**                            %**

  Planning                                                                                                      

  Design                                                                                                        

  ***Design review***                                                                                           

  Code                                                                                                          

  ***Code review***                                                                                             

  Compile                                                                                                       

  Test                                                                                                          

  Postmortem                                                                                                    

  Total                                                                                                         

  ***Total Time UPI (70%)***                                                                                    

  ***Total Time LPI (70%)***                                                                                    
  -------------------------- ------------- -- ------------ -- ------------ -- -------- -- ------------------ -- ---------

**(continued)**

**Table C55 PSP2 Project Plan Summary (continued)**

  ------------ ------------------------------------ ---------- -----------
  Student                                           Date       

  Program                                           Program \# 

  Instructor                                        Language   
  ------------ ------------------------------------ ---------- -----------

  -------------------------- ------------ -- ------------ -- -------------- -- -------- -- --------- -- ----------
  **Defects Injected**       ***Plan***      **Actual**                        **To                     **To Date
                                                                               Date**                   %**

  Planning                                                                                              

  Design                                                                                                

  ***Design review***                                                                                   

  Code                                                                                                  

  ***Code review***                                                                                     

  Compile                                                                                               

  Test                                                                                                  

  Total Development                                                                                     

                                                                                                        

  **Defects Removed**        ***Plan***      **Actual**                        **To                     **To Date
                                                                               Date**                   %**

  Planning                                                                                              

  Design                                                                                                

  ***Design review***                                                                                   

  Code                                                                                                  

  ***Code review***                                                                                     

  Compile                                                                                               

  Test                                                                                                  

  Total Development                                                                                     

  After Development                                                                                     

                                                                                                        

  ***Defect Removal          ***Plan***                      ***Actual***                  ***To        
  Efficiency***                                                                            Date***      

  ***Defects/Hour - Design                                                                              
  review***                                                                                             

  ***Defects/Hour - Code                                                                                
  review***                                                                                             

  ***Defects/Hour -                                                                                     
  Compile***                                                                                            

  ***Defects/Hour - Test***                                                                             

  ***DRL(DLDR/UT)***                                                                                    

  ***DRL(CodeReview/UT)***                                                                              

  ***DRL(Compile/UT)***                                                                                 
  -------------------------- ------------ -- ------------ -- -------------- -- -------- -- --------- -- ----------

**Table C57 C++ PSP2 Design Review Checklist**

PROGRAM NAME AND #:

+------------+-----------------------------------------------+---+---+---+---+
| Purpose    | To guide you in conducting an effective       |   |   |   |   |
|            | design review                                 |   |   |   |   |
+------------+-----------------------------------------------+---+---+---+---+
| General    | As you complete each review step, check that  |   |   |   |   |
|            | item in the box to the right.                 |   |   |   |   |
|            |                                               |   |   |   |   |
|            | Complete the checklist for one program unit   |   |   |   |   |
|            | before you start to review the next.          |   |   |   |   |
+------------+-----------------------------------------------+---+---+---+---+
| Complete   | Ensure that the requirements, specifications, |   |   |   |   |
|            | and high-level design are completely covered  |   |   |   |   |
|            | by the design:                                |   |   |   |   |
|            |                                               |   |   |   |   |
|            | \- all specified outputs are produced         |   |   |   |   |
|            |                                               |   |   |   |   |
|            | \- all needed inputs are furnished            |   |   |   |   |
|            |                                               |   |   |   |   |
|            | \- all required includes are stated           |   |   |   |   |
+------------+-----------------------------------------------+---+---+---+---+
| Logic      | Verify that program sequencing is proper:     |   |   |   |   |
|            |                                               |   |   |   |   |
|            | \- that stacks, lists, etc. are in the proper |   |   |   |   |
|            | order                                         |   |   |   |   |
|            |                                               |   |   |   |   |
|            | \- that recursion unwinds properly            |   |   |   |   |
|            |                                               |   |   |   |   |
|            | Verify that all loops are properly initiated, |   |   |   |   |
|            | incremented, and terminated                   |   |   |   |   |
+------------+-----------------------------------------------+---+---+---+---+
| Special    | Check all special cases:                      |   |   |   |   |
| Cases      |                                               |   |   |   |   |
|            | \- empty, full, minimum, maximum, negative,   |   |   |   |   |
|            | zero                                          |   |   |   |   |
|            |                                               |   |   |   |   |
|            | \- out of limits, overflow, underflow         |   |   |   |   |
|            |                                               |   |   |   |   |
|            | \- ensure \"impossible\" conditions are       |   |   |   |   |
|            | absolutely impossible                         |   |   |   |   |
|            |                                               |   |   |   |   |
|            | \- handle all incorrect input conditions      |   |   |   |   |
+------------+-----------------------------------------------+---+---+---+---+
| Functional | Verify that all functions, procedures, or     |   |   |   |   |
| use        | objects are fully understood and properly     |   |   |   |   |
|            | used                                          |   |   |   |   |
|            |                                               |   |   |   |   |
|            | Verify that all externally referenced         |   |   |   |   |
|            | abstractions are precisely defined            |   |   |   |   |
+------------+-----------------------------------------------+---+---+---+---+
| Names      | Verify that:                                  |   |   |   |   |
|            |                                               |   |   |   |   |
|            | \- all special names and types are clear or   |   |   |   |   |
|            | specifically defined                          |   |   |   |   |
|            |                                               |   |   |   |   |
|            | \- the scopes of all variables and parameters |   |   |   |   |
|            | are self-evident or defined                   |   |   |   |   |
|            |                                               |   |   |   |   |
|            | \- all named objects are used within their    |   |   |   |   |
|            | declared scopes                               |   |   |   |   |
+------------+-----------------------------------------------+---+---+---+---+
| Standards  | Review the design for conformance to all      |   |   |   |   |
|            | applicable design standards                   |   |   |   |   |
+------------+-----------------------------------------------+---+---+---+---+

**Table C58 C++ Code Review Checklist**

PROGRAM NAME AND #:

+-----------+--------------------------------------------+---+---+---+---+
| Purpose   | To guide you in conducting an effective    |   |   |   |   |
|           | code review.                               |   |   |   |   |
+-----------+--------------------------------------------+---+---+---+---+
| General   | As you complete each review step, check    |   |   |   |   |
|           | that item in the box to the right.         |   |   |   |   |
|           |                                            |   |   |   |   |
|           | Complete the checklist for one program     |   |   |   |   |
|           | unit before you start to review the next.  |   |   |   |   |
+-----------+--------------------------------------------+---+---+---+---+
| Complete  | Verify that the code covers all the        |   |   |   |   |
|           | design.                                    |   |   |   |   |
+-----------+--------------------------------------------+---+---+---+---+
| Includes  | Verify that includes are complete          |   |   |   |   |
+-----------+--------------------------------------------+---+---+---+---+
| Initi     | Check variable and parameter               |   |   |   |   |
| alization | initialization:                            |   |   |   |   |
|           |                                            |   |   |   |   |
|           | \- at program initiation                   |   |   |   |   |
|           |                                            |   |   |   |   |
|           | \- at start of every loop                  |   |   |   |   |
|           |                                            |   |   |   |   |
|           | \- at function/procedure entry             |   |   |   |   |
+-----------+--------------------------------------------+---+---+---+---+
| Calls     | Check function call formats:               |   |   |   |   |
|           |                                            |   |   |   |   |
|           | \- pointers                                |   |   |   |   |
|           |                                            |   |   |   |   |
|           | \- parameters                              |   |   |   |   |
|           |                                            |   |   |   |   |
|           | \- use of \'&\'                            |   |   |   |   |
+-----------+--------------------------------------------+---+---+---+---+
| Names     | Check name spelling and use:               |   |   |   |   |
|           |                                            |   |   |   |   |
|           | \- is it consistent?                       |   |   |   |   |
|           |                                            |   |   |   |   |
|           | \- is it within declared scope?            |   |   |   |   |
|           |                                            |   |   |   |   |
|           | \- do all structures and classes use \'.\' |   |   |   |   |
|           | reference?                                 |   |   |   |   |
+-----------+--------------------------------------------+---+---+---+---+
| Strings   | Check that all strings are                 |   |   |   |   |
|           |                                            |   |   |   |   |
|           | \- identified by pointers and              |   |   |   |   |
|           |                                            |   |   |   |   |
|           | \- terminated in NULL.                     |   |   |   |   |
+-----------+--------------------------------------------+---+---+---+---+
| Pointers  | Check that                                 |   |   |   |   |
|           |                                            |   |   |   |   |
|           | \- pointers are initialized NULL           |   |   |   |   |
|           |                                            |   |   |   |   |
|           | \- pointers are deleted only after new,    |   |   |   |   |
|           | and                                        |   |   |   |   |
|           |                                            |   |   |   |   |
|           | \- new pointers are always deleted after   |   |   |   |   |
|           | use.                                       |   |   |   |   |
+-----------+--------------------------------------------+---+---+---+---+
| Output    | Check the output format:                   |   |   |   |   |
| Format    |                                            |   |   |   |   |
|           | \- line stepping is proper                 |   |   |   |   |
|           |                                            |   |   |   |   |
|           | \- spacing is proper                       |   |   |   |   |
+-----------+--------------------------------------------+---+---+---+---+
| {} Pairs  | Insure that the {} are proper and matched  |   |   |   |   |
+-----------+--------------------------------------------+---+---+---+---+
| Logic     | Verify the proper use of ==, =, \|\|, and  |   |   |   |   |
| Operators | so on.                                     |   |   |   |   |
|           |                                            |   |   |   |   |
|           | Check every logic function for proper ().  |   |   |   |   |
+-----------+--------------------------------------------+---+---+---+---+
| Line by   | Check every LOC for                        |   |   |   |   |
| Line      |                                            |   |   |   |   |
| Check     | \- instruction syntax and                  |   |   |   |   |
|           |                                            |   |   |   |   |
|           | \- proper punctuation.                     |   |   |   |   |
+-----------+--------------------------------------------+---+---+---+---+
| Standards | Ensure that the code conforms to the       |   |   |   |   |
|           | coding standards.                          |   |   |   |   |
+-----------+--------------------------------------------+---+---+---+---+
| File Open | Verify that all files are                  |   |   |   |   |
| and Close |                                            |   |   |   |   |
|           | \- properly declared,                      |   |   |   |   |
|           |                                            |   |   |   |   |
|           | \- opened, and                             |   |   |   |   |
|           |                                            |   |   |   |   |
|           | \- closed.                                 |   |   |   |   |
+-----------+--------------------------------------------+---+---+---+---+

**Assignment Kit \# 9**

**Process version: PSP2**

**Lecture Number: 9**

Assignment:

  --- ------------ ------------------------------------------------------
      Text         Read appendix B and do the examples.

      Program 8A   Use PSP2 to write program 8A to sort a linked list.
  --- ------------ ------------------------------------------------------

**Before writing program 8A, read the process and exercise
specifications in**

**Appendices C and D.**

  ---------------------------------- -------------- -------------------------
  Assignment Kit 9 Contents          Instructions   Order to submit
                                                    assignment

  PSP2 Process Scripts                              PSP2 Project Plan Summary

  C51 PSP2 Script                    n/a            Test Report

  C52 PSP2 Planning Script           n/a            PSP2 Design Review
                                                    Checklist

  C53 PSP2 Development Script        n/a            Code Review Checklist

  C54 PSP2 Postmortem Script         n/a            PIP form, including
                                                    lessons learned

  C36 PROBE Estimating Script        n/a            Size Estimating Template

  Forms, Templates, and Standards                   Task Planning Template

  C55 PSP2 Project Plan Summary      C56            Schedule Planning
                                                    Template

  C57 PSP2 Design Review Checklist   n/a            Time Recording Log

  C58 Code Review Checklist          n/a            Defect Recording Log

  C47 Task Planning Template         C48            Source program listing

  C49 Schedule Planning Template     C50            Other requested materials

  C37 Test Report Template           C38            

  C39 Size Estimating Template       C40            

  C27 Process Improvement Proposal   C28            

  C29 Coding Standard                n/a            

  C16 Time Recording Log             C17            

  C18 Defect Recording Log           C19            

  C20 Defect Type Standard           n/a            
  ---------------------------------- -------------- -------------------------

**Assignment Kit \# 10**

**Process version: PSP2.1**

**Lecture Number: 10**

Assignment:

  --- ------------ ------------------------------------------------------
      Text         Read Chapter 10.

      Program 9A   Use PSP2.1 to write program 9A to do a Chi-squared
                   test for a normal distribution.
  --- ------------ ------------------------------------------------------

**Before writing program 9A, read the process and exercise
specifications in**

**Appendices C and D.**

+---------------------------------+----------+------------------------+
| Assignment Kit 10 Contents      | Inst     | Order to submit        |
|                                 | ructions | assignment             |
+---------------------------------+----------+------------------------+
| PSP2.1 Process Scripts          |          | PSP2.1 Project Plan    |
|                                 |          | Summary                |
+---------------------------------+----------+------------------------+
| C59 PSP2.1 Script               | n/a      | Test Report            |
+---------------------------------+----------+------------------------+
| C60 PSP2.1 Planning Script      | n/a      | PSP2.1 Design Review   |
|                                 |          | Checklist              |
+---------------------------------+----------+------------------------+
| C61 PSP2.1 Development Script   | n/a      | Code Review Checklist  |
+---------------------------------+----------+------------------------+
| C62 PSP2.1 Postmortem Script    | n/a      | PIP form, including    |
|                                 |          | lessons learned        |
+---------------------------------+----------+------------------------+
| C36 PROBE Estimating Script     | n/a      | Size Estimating        |
|                                 |          | Template               |
+---------------------------------+----------+------------------------+
| Forms, Templates, and Standards |          | Task Planning Template |
+---------------------------------+----------+------------------------+
| ***C63 PSP2.1 Project Plan      | C64      | Schedule Planning      |
| Summary***                      |          | Template               |
+---------------------------------+----------+------------------------+
| ***C65 PSP2.1 Design Review     | n/a      | Operational Scenario   |
| Checklist***                    |          | Template               |
+---------------------------------+----------+------------------------+
| ***C66 Operational Scenario     | C67      | Functional             |
| Template***                     |          | Specification Template |
+---------------------------------+----------+------------------------+
| ***C68 Functional               | C69      | State Specification    |
| Specification***                |          | Template               |
|                                 |          |                        |
| ***Template***                  |          |                        |
+---------------------------------+----------+------------------------+
| ***C70 State Specification      | C71      | Logic Specification    |
| Template***                     |          | Template               |
+---------------------------------+----------+------------------------+
| ***C72 Logic Specification      | C73      | Time Recording Log     |
| Template***                     |          |                        |
+---------------------------------+----------+------------------------+
| C58 Code Review Checklist       | n/a      | Defect Recording Log   |
+---------------------------------+----------+------------------------+
| C47 Task Planning Template      | C48      | Source program listing |
+---------------------------------+----------+------------------------+
| C49 Schedule Planning Template  | C50      | Other requested        |
|                                 |          | materials              |
+---------------------------------+----------+------------------------+
| C37 Test Report Template        | C38      |                        |
+---------------------------------+----------+------------------------+
| C39 Size Estimating Template    | C40      |                        |
+---------------------------------+----------+------------------------+
| C27 Process Improvement         | C28      |                        |
| Proposal                        |          |                        |
+---------------------------------+----------+------------------------+
| C29 Coding Standard             | n/a      |                        |
+---------------------------------+----------+------------------------+
| C16 Time Recording Log          | C17      |                        |
+---------------------------------+----------+------------------------+
| C18 Defect Recording Log        | C19      |                        |
+---------------------------------+----------+------------------------+
| C20 Defect Type Standard        | n/a      |                        |
+---------------------------------+----------+------------------------+

**Table C63 PSP2.1 Project Plan Summary**

  ------------ ------------------------------------ ---------- -----------
  Student                                           Date       

  Program                                           Program \# 

  Instructor                                        Language   
  ------------ ------------------------------------ ---------- -----------

  -------------------------- ------------- -- ------------ -- ------------ -- -------- -- ------------------ -- ---------
  **Summary**                **Plan**                         **Actual**                  **To Date**           

  LOC/Hour                                                                                                      

  Actual Time                                                                                                   

  Planned Time                                                                                                  

  CPI(Cost-Performance                                                                                          
  Index)                                                                                                        

                                                                                          (Actual/Planned)      

  \% Reused                                                                                                     

  \% New Reused                                                                                                 

  Test Defects/KLOC                                                                                             

  Total Defects/KLOC                                                                                            

  Yield %                                                                                                       

  ***% Appraisal COQ***                                                                                         

  ***% Failure COQ***                                                                                           

  ***COQ A/F Ratio***                                                                                           

                                                                                                                

  **Program Size (LOC):**    **Plan**                         **Actual**                  **To Date**           

  Base(B)                                                                                                       

                             (Measured)                       (Measured)                                        

  Deleted (D)                                                                                                   

                             (Estimated)                      (Counted)                                         

  Modified (M)                                                                                                  

                             (Estimated)                      (Counted)                                         

  Added (A)                                                                                                     

                             (N-M)                            (T-B+D-R)                                         

  Reused (R)                                                                                                    

                             (Estimated)                      (Counted)                                         

  Total New & Changed (N)                                                                                       

                             (Estimated)                      (A+M)                                             

  Total LOC (T)                                                                                                 

                             (N+B-M-D+R)                      (Measured)                                        

  Total New Reused                                                                                              

  Upper Prediction Interval                                                                                     
  (70%)                                                                                                         

  Lower Prediction Interval                                                                                     
  (70%)                                                                                                         

                                                                                                                

  **Time in Phase (min.)**   **Plan**         **Actual**                      **To                              **To Date
                                                                              Date**                            %**

  Planning                                                                                                      

  Design                                                                                                        

  Design review                                                                                                 

  Code                                                                                                          

  Code review                                                                                                   

  Compile                                                                                                       

  Test                                                                                                          

  Postmortem                                                                                                    

  Total                                                                                                         

  Total Time UPI (70%)                                                                                          

  Total Time LPI (70%)                                                                                          
  -------------------------- ------------- -- ------------ -- ------------ -- -------- -- ------------------ -- ---------

**(continued)**

**Table C63 PSP2.1 Project Plan Summary (continued)**

  ------------ ------------------------------------ ---------- -----------
  Student                                           Date       

  Program                                           Program \# 

  Instructor                                        Language   
  ------------ ------------------------------------ ---------- -----------

  -------------------------- ---------- -- ------------ -- ------------ -- -------- -- -------- -- ----------
  **Defects Injected**       **Plan**      **Actual**                      **To                    **To Date
                                                                           Date**                  %**

  Planning                                                                                         

  Design                                                                                           

  Design review                                                                                    

  Code                                                                                             

  Code review                                                                                      

  Compile                                                                                          

  Test                                                                                             

  Total Development                                                                                

                                                                                                   

  **Defects Removed**        **Plan**      **Actual**                      **To                    **To Date
                                                                           Date**                  %**

  Planning                                                                                         

  Design                                                                                           

  Design review                                                                                    

  Code                                                                                             

  Code review                                                                                      

  Compile                                                                                          

  Test                                                                                             

  Total Development                                                                                

  After Development                                                                                

                                                                                                   

  **Defect Removal           **Plan**                      **Actual**                  **To        
  Efficiency**                                                                         Date**      

  Defects/Hour - Design                                                                            
  review                                                                                           

  Defects/Hour - Code review                                                                       

  Defects/Hour - Compile                                                                           

  Defects/Hour - Test                                                                              

  DRL(DLDR/UT)                                                                                     

  DRL(CodeReview/UT)                                                                               

  DRL(Compile/UT)                                                                                  
  -------------------------- ---------- -- ------------ -- ------------ -- -------- -- -------- -- ----------

**Table C65 C++ PSP2.1 Design Review Checklist**

PROGRAM NAME AND #:

+------------+-----------------------------------------------+---+---+---+---+
| Purpose    | To guide you in conducting an effective       |   |   |   |   |
|            | design review                                 |   |   |   |   |
+------------+-----------------------------------------------+---+---+---+---+
| General    | As you complete each review step, check that  |   |   |   |   |
|            | item in the box to the right.                 |   |   |   |   |
|            |                                               |   |   |   |   |
|            | Complete the checklist for one program unit   |   |   |   |   |
|            | before you start to review the next.          |   |   |   |   |
+------------+-----------------------------------------------+---+---+---+---+
| Complete   | Ensure that the requirements, specifications, |   |   |   |   |
|            | and high-level design are completely covered  |   |   |   |   |
|            | by the design:                                |   |   |   |   |
|            |                                               |   |   |   |   |
|            | \- all specified outputs are produced         |   |   |   |   |
|            |                                               |   |   |   |   |
|            | \- all needed inputs are furnished            |   |   |   |   |
|            |                                               |   |   |   |   |
|            | \- all required includes are stated           |   |   |   |   |
+------------+-----------------------------------------------+---+---+---+---+
| ***State   | ***Verify the state machine design:***        |   |   |   |   |
| machine*** |                                               |   |   |   |   |
|            | ***- The structure has no hidden traps or     |   |   |   |   |
|            | loops.***                                     |   |   |   |   |
|            |                                               |   |   |   |   |
|            | ***- It is complete - that is, all possible   |   |   |   |   |
|            | states have been identified.***               |   |   |   |   |
|            |                                               |   |   |   |   |
|            | ***- It is orthogonal - that is, for every    |   |   |   |   |
|            | set of conditions there is one and only one   |   |   |   |   |
|            | possible next state.***                       |   |   |   |   |
|            |                                               |   |   |   |   |
|            | ***- The transitions from each state are      |   |   |   |   |
|            | complete and orthogonal. That is, from every  |   |   |   |   |
|            | state, a unique next state is defined for     |   |   |   |   |
|            | every possible combination of state machine   |   |   |   |   |
|            | input values.***                              |   |   |   |   |
+------------+-----------------------------------------------+---+---+---+---+
| Logic      | Verify that program sequencing is proper:     |   |   |   |   |
|            |                                               |   |   |   |   |
|            | \- that stacks, lists, etc. are in the proper |   |   |   |   |
|            | order                                         |   |   |   |   |
|            |                                               |   |   |   |   |
|            | \- that recursion unwinds properly            |   |   |   |   |
|            |                                               |   |   |   |   |
|            | Verify that all loops are properly initiated, |   |   |   |   |
|            | incremented, and terminated                   |   |   |   |   |
+------------+-----------------------------------------------+---+---+---+---+
| Special    | Check all special cases:                      |   |   |   |   |
| Cases      |                                               |   |   |   |   |
|            | \- empty, full, minimum, maximum, negative,   |   |   |   |   |
|            | zero                                          |   |   |   |   |
|            |                                               |   |   |   |   |
|            | \- out of limits, overflow, underflow         |   |   |   |   |
|            |                                               |   |   |   |   |
|            | \- ensure \"impossible\" conditions are       |   |   |   |   |
|            | absolutely impossible                         |   |   |   |   |
|            |                                               |   |   |   |   |
|            | \- handle all incorrect input conditions      |   |   |   |   |
+------------+-----------------------------------------------+---+---+---+---+
| Functional | Verify that all functions, procedures, or     |   |   |   |   |
| use        | objects are fully understood and properly     |   |   |   |   |
|            | used                                          |   |   |   |   |
|            |                                               |   |   |   |   |
|            | Verify that all externally referenced         |   |   |   |   |
|            | abstractions are precisely defined            |   |   |   |   |
+------------+-----------------------------------------------+---+---+---+---+
| Names      | Verify that:                                  |   |   |   |   |
|            |                                               |   |   |   |   |
|            | \- all special names and types are clear or   |   |   |   |   |
|            | specifically defined                          |   |   |   |   |
|            |                                               |   |   |   |   |
|            | \- the scopes of all variables and parameters |   |   |   |   |
|            | are self-evident or defined                   |   |   |   |   |
|            |                                               |   |   |   |   |
|            | \- all named objects are used within their    |   |   |   |   |
|            | declared scopes                               |   |   |   |   |
+------------+-----------------------------------------------+---+---+---+---+
| Standards  | Review the design for conformance to all      |   |   |   |   |
|            | applicable design standards                   |   |   |   |   |
+------------+-----------------------------------------------+---+---+---+---+

**Table C66 Operational Scenario Template**

  ------------ ------------------------------------ ---------- -----------
  Student                                           Date       

  Program                                           Program \# 

  Instructor                                        Language   
  ------------ ------------------------------------ ---------- -----------

Construct operational scenarios to cover the normal and abnormal program
uses, including user errors:

  ------------ ------ --------- ---------------------------------- ------------------
  Scenario \#                   User Objective:                    

  Scenario                                                         
  Objective:                                                       

  Source:      Step   Action:                                      Comments

                                                                   

                                                                   

                                                                   

                                                                   

                                                                   

                                                                   

                                                                   

                                                                   

                                                                   

                                                                   

                                                                   

                                                                   

                                                                   

                                                                   

                                                                   

                                                                   

                                                                   

                                                                   

                                                                   

                                                                   

                                                                   

                                                                   

                                                                   

                                                                   
  ------------ ------ --------- ---------------------------------- ------------------

**Table C68 Functional Specification Template**

  ------------ ------------------------------------ ---------- -----------
  Student                                           Date       

  Program                                           Program \# 

  Instructor                                        Language   
  ------------ ------------------------------------ ---------- -----------

  -------------- ----------------------- --------------------- -----------------------
  Object/class                           Parent Classes        Attributes
  name                                                         

                 Method declaration      Method external       
                                         specification         

                                                               

                                                               

                                                               

                                                               

                                                               

                                                               

                                                               
  -------------- ----------------------- --------------------- -----------------------

**Table C70 State Specification Template**

  ------------ -------------------------- ---------- ---------- -----------
  Student                                            Date       

  Program                                            Program \# 

  Instructor                                         Language   

  Object                                  Routine               
  ------------ -------------------------- ---------- ---------- -----------

  ------- ----------------------- ----------------------- -----------------------
  State                           description             attributes
  #1                                                      

          next state #1           transition conditions   

          next state #2                                   

          . . .                                           

          . . .                                           

          next state \# n                                 

  State                           description             attributes
  #2                                                      

          next state #1           transition conditions   

          next state #2                                   

          . . .                                           

          . . .                                           

          next state \# n                                 
  ------- ----------------------- ----------------------- -----------------------

\...

  ------- ----------------------- ----------------------- -----------------------
  State                           description             attributes
  #n                                                      

          next state #1           transition conditions   

          next state #2                                   

          . . .                                           

          . . .                                           

          next state \# n                                 
  ------- ----------------------- ----------------------- -----------------------

**Table C72 Logic Specification Template**

  ------------ -------------------------- ---------- ---------- -----------
  Student                                            Date       

  Program                                            Program \# 

  Instructor                                         Language   

  Object                                  Function              
  ------------ -------------------------- ---------- ---------- -----------

INCLUDES:

TYPE DEFINITIONS:

  ------------------ ------------------------------------------------------
  **Declaration:**   

  **Reference:**     

                     

  **logic reference  **Program logic, in pseudocode**
  numbers**          

                     

                     

                     

                     

                     

                     

                     

                     

                     

                     

                     

                     

                     

                     

                     

                     
  ------------------ ------------------------------------------------------

**Assignment Kit \# 11**

**Process version: PSP3**

**Lecture Number: 11**

Assignment:

  --- ------------ ------------------------------------------------------
      Text         Read Chapter 11.

      Program 10A  Use PSP3 to write program 10A to calculate the
                   multiple regression parameters and prediction
                   intervals, using a linked list.
  --- ------------ ------------------------------------------------------

**Before writing program 10A, read the process and exercise
specifications in**

**Appendices C and D.**

  ---------------------------------- -------------- -------------------------
  Assignment Kit 11 Contents         Instructions   Order to submit
                                                    assignment

  PSP3 Process Scripts                              PSP3 Project Plan Summary

  C74 PSP3 Script                    n/a            Cycle Summary Forms

  C75 PSP3 Planning Script           n/a            Test Report

  C76 High Level Design Script       n/a            PSP3 Design Review
                                                    Checklist

  C77 High Level Design Review       n/a            Code Review Checklist
  Script                                            

  C78 PSP3 Development Script        n/a            Issue Tracking Log

  C79 PSP3 Postmortem Script         n/a            PIP form, including
                                                    lessons learned

  C36 PROBE Estimating Script        n/a            Size Estimating Template

  Forms, Templates, and Standards                   Task Planning Template

  ***C80 PSP3 Project Plan           C81            Schedule Planning
  Summary***                                        Template

  ***C82 Cycle Summary***            C83            Operational Scenario
                                                    Template

  ***C84 PSP3 Design Review          n/a            Functional Specification
  Checklist***                                      Template

  ***C85 Issue Tracking Log***       C86            State Specification
                                                    Template
  ---------------------------------- -------------- -------------------------

**(continued)**

**Assignment Kit \# 11 (continued)**

+---------------------------------+----------+------------------------+
| Assignment Kit 11 Contents      | Inst     | Order to submit        |
|                                 | ructions | assignment             |
+---------------------------------+----------+------------------------+
| C66 Operational Scenario        | C67      | Logic Specification    |
| Template                        |          | Template               |
+---------------------------------+----------+------------------------+
| C68 Functional Specification    | C69      | Time Recording Log     |
|                                 |          |                        |
| Template                        |          |                        |
+---------------------------------+----------+------------------------+
| C70 State Specification         | C71      | Defect Recording Log   |
| Template                        |          |                        |
+---------------------------------+----------+------------------------+
| C72 Logic Specification         | C73      | Source program listing |
| Template                        |          |                        |
+---------------------------------+----------+------------------------+
| C58 Code Review Checklist       | n/a      | Other requested        |
|                                 |          | materials              |
+---------------------------------+----------+------------------------+
| C47 Task Planning Template      | C48      |                        |
+---------------------------------+----------+------------------------+
| C49 Schedule Planning Template  | C50      |                        |
+---------------------------------+----------+------------------------+
| C37 Test Report Template        | C38      |                        |
+---------------------------------+----------+------------------------+
| C39 Size Estimating Template    | C40      |                        |
+---------------------------------+----------+------------------------+
| C27 Process Improvement         | C28      |                        |
| Proposal                        |          |                        |
+---------------------------------+----------+------------------------+
| C29 Coding Standard             | n/a      |                        |
+---------------------------------+----------+------------------------+
| C16 Time Recording Log          | C17      |                        |
+---------------------------------+----------+------------------------+
| C18 Defect Recording Log        | C19      |                        |
+---------------------------------+----------+------------------------+
| C20 Defect Type Standard        | n/a      |                        |
+---------------------------------+----------+------------------------+

**Table C80 PSP3 Project Plan Summary**

  ------------ ------------------------------------ ---------- -----------
  Student                                           Date       

  Program                                           Program \# 

  Instructor                                        Language   
  ------------ ------------------------------------ ---------- -----------

  -------------------------- ------------- -- ------------ -- ------------ -- -------- -- ------------------ -- ---------
  **Summary**                **Plan**                         **Actual**                  **To Date**           

  LOC/Hour                                                                                                      

  Actual Time                                                                                                   

  Planned Time                                                                                                  

  CPI(Cost-Performance                                                                                          
  Index)                                                                                                        

                                                                                          (Actual/Planned)      

  \% Reused                                                                                                     

  \% New Reused                                                                                                 

  Test Defects/KLOC                                                                                             

  Total Defects/KLOC                                                                                            

  Yield                                                                                                         

  \% Appraisal COQ                                                                                              

  \% Failure COQ                                                                                                

  COQ A/F Ratio                                                                                                 

  **Program Size (LOC):**    **Plan**                         **Actual**                  **To Date**           

  Base(B)                                                                                                       

                             (Measured)                       (Measured)                                        

  Deleted (D)                                                                                                   

                             (Estimated)                      (Counted)                                         

  Modified (M)                                                                                                  

                             (Estimated)                      (Counted)                                         

  Added (A)                                                                                                     

                             (N-M)                            (T-B+D-R)                                         

  Reused (R)                                                                                                    

                             (Estimated)                      (Counted)                                         

  Total New & Changed (N)                                                                                       

                             (Estimated)                      (A+M)                                             

  Total LOC (T)                                                                                                 

                             (N+B-M-D+R)                      (Measured)                                        

  Total New Reused                                                                                              

  Upper Prediction Interval                                                                                     
  (70%)                                                                                                         

  Lower Prediction Interval                                                                                     
  (70%)                                                                                                         

  **Time in Phase (min.)**   **Plan**         **Actual**                      **To                              **To Date
                                                                              Date**                            %**

  Planning                                                                                                      

  ***High-level design***                                                                                       

  ***High-level design                                                                                          
  review***                                                                                                     

  Detailed design                                                                                               

  Detailed design review                                                                                        

  Code                                                                                                          

  Code review                                                                                                   

  Compile                                                                                                       

  Test                                                                                                          

  Postmortem                                                                                                    

  Total                                                                                                         

  Total Time UPI (70%)                                                                                          

  Total Time LPI (70%)                                                                                          
  -------------------------- ------------- -- ------------ -- ------------ -- -------- -- ------------------ -- ---------

**(continued)**

**Table C80 PSP3 Project Plan Summary (continued)**

  ------------ ------------------------------------ ---------- -----------
  Student                                           Date       

  Program                                           Program \# 

  Instructor                                        Language   
  ------------ ------------------------------------ ---------- -----------

  -------------------------- ---------- -- ------------ -- ------------ -- -------- -- -------- -- ----------
  **Defects Injected**       **Plan**      **Actual**                      **To                    **To Date
                                                                           Date**                  %**

  Planning                                                                                         

  ***High-level design***                                                                          

  ***High-level design                                                                             
  review***                                                                                        

  Detailed design                                                                                  

  Detailed design review                                                                           

  Code                                                                                             

  Code review                                                                                      

  Compile                                                                                          

  Test                                                                                             

  Total Development                                                                                

                                                                                                   

  **Defects Removed**        **Plan**      **Actual**                      **To                    **To Date
                                                                           Date**                  %**

  Planning                                                                                         

  ***High-level design***                                                                          

  ***High-level design                                                                             
  review***                                                                                        

  Detailed design                                                                                  

  Detailed design review                                                                           

  Code                                                                                             

  Code review                                                                                      

  Compile                                                                                          

  Test                                                                                             

  Total Development                                                                                

  After Development                                                                                

                                                                                                   

  **Defect Removal           **Plan**                      **Actual**                  **To        
  Efficiency**                                                                         Date**      

  Defects/Hour - Design                                                                            
  review                                                                                           

  Defects/Hour - Code review                                                                       

  Defects/Hour - Compile                                                                           

  Defects/Hour - Test                                                                              

  DRL(DLDR/UT)                                                                                     

  DRL(CodeReview/UT)                                                                               

  DRL(Compile/UT)                                                                                  
  -------------------------- ---------- -- ------------ -- ------------ -- -------- -- -------- -- ----------

**Table C82 Cycle Summary**

**Plan \_\_\_ Actual \_\_\_**

  ------------ ----- -------- ----- -- ------- -- ------- -- ------- -- ---------- ------- -- ------- --- ----------- ----- --
  Student                                                               Date                                                

  Program                                                               Program \#                                          

  Instructor                                                            Language                                            

                                                                                                                            

  **Cycles**         **To              **1**      **2**      **3**                 **4**      **5**       **Total**         
                     Date**                                                                                                 

  **Program                                                                                                                 
  Size                                                                                                                      
  (LOC):**                                                                                                                  

  Base(B)                                                                                                                   

  Deleted (D)                                                                                                               

  Modified (M)                                                                                                              

  Added (A)                                                                                                                 

  Reused (R)                                                                                                                

  Total New &                                                                                                               
  Changed (N)                                                                                                               

  Total LOC                                                                                                                 
  (T)                                                                                                                       

  Total New                                                                                                                 
  Reused                                                                                                                    

  **Time in                                                                                                                 
  Phase                                                                                                                     
  (min.)**                                                                                                                  

  Design                                                                                                                    

  Design                                                                                                                    
  Review                                                                                                                    

  Code                                                                                                                      

  Code Review                                                                                                               

  Compile                                                                                                                   

  Test                                                                                                                      

  Total                                                                                                                     

  **Defects                                                                                                                 
  Injected**                                                                                                                

  Design                                                                                                                    

  Design                                                                                                                    
  Review                                                                                                                    

  Code                                                                                                                      

  Code Review                                                                                                               

  Compile                                                                                                                   

  Test                                                                                                                      

  Total                                                                                                                     

  **Defects                                                                                                                 
  Removed**                                                                                                                 

  Design                                                                                                                    

  Design                                                                                                                    
  Review                                                                                                                    

  Code                                                                                                                      

  Code Review                                                                                                               

  Compile                                                                                                                   

  Test                                                                                                                      

  Total                                                                                                                     
  ------------ ----- -------- ----- -- ------- -- ------- -- ------- -- ---------- ------- -- ------- --- ----------- ----- --

**Table C84 C++ PSP3 Design Review Checklist**

PROGRAM NAME AND #:

+------------+-----------------------------------------------+---+---+---+---+
| Purpose    | To guide you in conducting an effective       |   |   |   |   |
|            | design review                                 |   |   |   |   |
+------------+-----------------------------------------------+---+---+---+---+
| General    | As you complete each review step, check that  |   |   |   |   |
|            | item in the box to the right.                 |   |   |   |   |
|            |                                               |   |   |   |   |
|            | Complete the checklist for one program unit   |   |   |   |   |
|            | before you start to review the next.          |   |   |   |   |
|            |                                               |   |   |   |   |
|            | ***As you encounter issues that must be       |   |   |   |   |
|            | deferred, record them in the issue tracking   |   |   |   |   |
|            | log.***                                       |   |   |   |   |
+------------+-----------------------------------------------+---+---+---+---+
| Complete   | Ensure that the requirements, specifications, |   |   |   |   |
|            | and high-level design are completely covered  |   |   |   |   |
|            | by the design:                                |   |   |   |   |
|            |                                               |   |   |   |   |
|            | \- all specified outputs are produced         |   |   |   |   |
|            |                                               |   |   |   |   |
|            | \- all needed inputs are furnished            |   |   |   |   |
|            |                                               |   |   |   |   |
|            | \- all required includes are stated           |   |   |   |   |
+------------+-----------------------------------------------+---+---+---+---+
| State      | Verify the state machine design:              |   |   |   |   |
| machine    |                                               |   |   |   |   |
|            | \- The structure has no hidden traps or       |   |   |   |   |
|            | loops.                                        |   |   |   |   |
|            |                                               |   |   |   |   |
|            | \- It is complete - that is, all possible     |   |   |   |   |
|            | states have been identified.                  |   |   |   |   |
|            |                                               |   |   |   |   |
|            | \- It is orthogonal - that is, for every set  |   |   |   |   |
|            | of conditions there is one and only one       |   |   |   |   |
|            | possible next state.                          |   |   |   |   |
|            |                                               |   |   |   |   |
|            | \- The transitions from each state are        |   |   |   |   |
|            | complete and orthogonal. That is, from every  |   |   |   |   |
|            | state, a unique next state is defined for     |   |   |   |   |
|            | every possible combination of state machine   |   |   |   |   |
|            | input values.                                 |   |   |   |   |
+------------+-----------------------------------------------+---+---+---+---+
| Logic      | Verify that program sequencing is proper:     |   |   |   |   |
|            |                                               |   |   |   |   |
|            | \- that stacks, lists, etc. are in the proper |   |   |   |   |
|            | order                                         |   |   |   |   |
|            |                                               |   |   |   |   |
|            | \- that recursion unwinds properly            |   |   |   |   |
|            |                                               |   |   |   |   |
|            | Verify that all loops are properly initiated, |   |   |   |   |
|            | incremented, and terminated                   |   |   |   |   |
|            |                                               |   |   |   |   |
|            | ***Use defined methods such as: execution     |   |   |   |   |
|            | tables, trace tables, or mathematical         |   |   |   |   |
|            | verification***                               |   |   |   |   |
+------------+-----------------------------------------------+---+---+---+---+
| Special    | Check all special cases:                      |   |   |   |   |
| Cases      |                                               |   |   |   |   |
|            | \- empty, full, minimum, maximum, negative,   |   |   |   |   |
|            | zero                                          |   |   |   |   |
|            |                                               |   |   |   |   |
|            | \- out of limits, overflow, underflow         |   |   |   |   |
|            |                                               |   |   |   |   |
|            | \- ensure \"impossible\" conditions are       |   |   |   |   |
|            | absolutely impossible                         |   |   |   |   |
|            |                                               |   |   |   |   |
|            | \- handle all incorrect input conditions      |   |   |   |   |
+------------+-----------------------------------------------+---+---+---+---+
| Functional | Verify that all functions, procedures, or     |   |   |   |   |
| use        | objects are fully understood and properly     |   |   |   |   |
|            | used                                          |   |   |   |   |
|            |                                               |   |   |   |   |
|            | Verify that all externally referenced         |   |   |   |   |
|            | abstractions are precisely defined            |   |   |   |   |
+------------+-----------------------------------------------+---+---+---+---+
| Names      | Verify that:                                  |   |   |   |   |
|            |                                               |   |   |   |   |
|            | \- all special names and types are clear or   |   |   |   |   |
|            | specifically defined                          |   |   |   |   |
|            |                                               |   |   |   |   |
|            | \- the scopes of all variables and parameters |   |   |   |   |
|            | are self-evident or defined                   |   |   |   |   |
|            |                                               |   |   |   |   |
|            | \- all named objects are used within their    |   |   |   |   |
|            | declared scopes                               |   |   |   |   |
+------------+-----------------------------------------------+---+---+---+---+
| Standards  | Review the design for conformance to all      |   |   |   |   |
|            | applicable design standards                   |   |   |   |   |
+------------+-----------------------------------------------+---+---+---+---+

**Table C85 PSP Issue Tracking Log**

  ------------- ----------------------------------- ---------- -----------
  Student                                           Date       

  Program                                           Program \# 

  Instructor                                        Language   
  ------------- ----------------------------------- ---------- -----------

  -------------- ----------- ----------- ----------- ----------- -----------
  Issue #:                   Date:                   Phase:      

  Description:                                                   

                                                                 

                                                                 

  Resolution:                                                    

  Date:                                                          

  Issue #:                   Date:                   Phase:      

  Description:                                                   

                                                                 

                                                                 

  Resolution:                                                    

  Date:                                                          

  Issue #:                   Date:                   Phase:      

  Description:                                                   

                                                                 

                                                                 

  Resolution:                                                    

  Date:                                                          

  Issue #:                   Date:                   Phase:      

  Description:                                                   

                                                                 

                                                                 

  Resolution:                                                    

  Date:                                                          

  Issue #:                   Date:                   Phase:      

  Description:                                                   

                                                                 

                                                                 

  Resolution:                                                    

  Date:                                                          

  Issue #:                   Date:                   Phase:      

  Description:                                                   

                                                                 

                                                                 

  Resolution:                                                    

  Date:                                                          
  -------------- ----------- ----------- ----------- ----------- -----------

**Assignment Kit \# 12**

**Lecture Number: 12**

Assignment:

  --- ------------ ------------------------------------------------------
      Text         Read Chapter 12.

      Program 10A  Finish developing program 10A.
  --- ------------ ------------------------------------------------------

**Assignment Kit \# 13**

**Lecture Number: 13**

Assignment:

  --- ------------ ------------------------------------------------------
      Text         Read Chapter 13.

      Report R5    Write report R5, the final report.
  --- ------------ ------------------------------------------------------

**Before writing report R5, read the exercise specifications in Appendix
D.**

  ---------------------------------- -------------- -------------------------
  Assignment Kit 13 Contents         Instructions   Order to submit
                                                    assignment

                                                    Report R5

                                                    PIP form, including
                                                    lessons learned
  ---------------------------------- -------------- -------------------------

**Assignment Kit \# 14**

**Lecture Number: 14**

Assignment:

  --- ------------ ------------------------------------------------------
      Text         Read Chapter 14.

      Report R5    Finish writing report R5.
  --- ------------ ------------------------------------------------------

[^1]: ^1^ L=Logic, I=I/O, C=Calculation, T=Text, D=Data, S=Set-up