CSc 301 Homework Assignments




Hwk #1

Obtain the textbooks and course materials listed in the syllabus. Customize this cover page (.odt) and insert it in your binder. Bring your binder to the next class meeting.



Hwk #2

Write a description of how you prepare your favorite breakfast meal.  (Your meal must be cooked - no cold cereal.  Examples: Pancakes, omelot, oatmeal, etc.)

Write a description of how you write a program.  Imagine you're in a conversation with a fellow student and you are explaining the steps you undertake when given a programming assignment.  Don't idealize it, just describe your actual work habits.

Submit each on a separate page following the writing guidelines in the syllabus.


Hwk 3

Complete the Time Log Training Exercises. Please note Dr. Dalbey's Time Log form has minor differences from the one in the textbook.  We will use Dr. Dalbey's form for all coursework.


Hwk 4

Complete the Defect Log Training Exercises and the PSP0 Script Training Exercises.


Hwk 5

Complete the design phase ONLY of Project 2.
Submit in class:
The Time Log and Design form for Project 2.
The PSP0 forms you completed for Lab 9.
Bring a calculator.


Hwk 6

Study the counting rule for our class LOC counting tool. Is the tool a Physical line counter or Logical line counter (Pg 49)?   Printout out this source code.  In the left hand margin, number every line that will be counted by our tool when used as specified by the PSP0 script.  At the bottom, write the total LOC. Write your name at the top of the page for submittal.


Hwk 7

Using the PSP0 process script, read this scenario for Mike and complete a Time Log and Defect Tally in pencil.  Bring the completed forms to class.

Read the PSP1 process script.  Open both the PSP0 and PSP1 scripts side by side, and create a list of what activities are new or changed in PSP1.  Type this list and submit in class.

Make a printed copy of the PSP1 Project Summary Form (pdf) and Directions (pdf).  Study the directions and bring questions about anything that is not clear.  Bring the printouts to class and be prepared to work an exercise completing the form.

Print at least two copies of the PSP1 Form Set (pdf) and put them in your binder.  From now on, you will be expected to bring your own blank forms to use in lecture and lab.


Hwk 8

Print out the second and third pages of this exercise using PSP1 forms. Complete the forms neatly in pencil following the directions on the first page. Write your name on the top and bring the forms to class for grading during lecture.


Hwk 9

Using the PSP1 script, complete ONLY THE PLANNING PHASE for solving the next lab programming problem ("Ln"). Since this is your first PSP1 lab, use your most recent lab historical data for making resource estimates. Follow the PSP1 script for the Planning Phase.

Staple together in this order:
  1. PSP1 Summary Form at the completion of the PLAN phase
  2. time log
  3. size estimating worksheet
  4. a COPY of your most recent lab Summary Form.
Bring to the next class meeting for grading during lecture.


Hwk 10


Self-improvement project


Hwk 11


Complete Project 6 through the Code Review phase.
Bring all your forms and work to class.
Bring a duplicate copy of your Defect Tally (for the Code Review phase) to submit at the start of class.




Hwk 12

The purpose of this assignment is to analyze your defect data to find the most common kinds of defects you make. Read "Updating the Checklist" on pp 177-179.

Study your historical Defect Tally forms for Projects 2-6 and extract the frequency of each type of defect. Create a pareto chart (decreasing order of relative frequency). You may create your chart by hand if it is neat, or use a spreadsheet.

Now review the defects in the top 20% of your chart. Create a new code review checklist item for each of the defects that are NOT contained in Dr. Dalbey's Java Code Review Checklist.

Type your new checklist items in a format consistent with the existing checklist. Submit printouts of your checklist and your pareto chart.



Hwk 13

Create an improvement to PSP2.  Follow the guidelines in Chapter 13.

Suggested improvements:

Create these process elements (see pg 292 and 300) for your improvement:

Create an example of what a completed form would look like.

Print your process elements (and example completed form) and staple them in the order above. Submit at start of class.  


Hwk 14

Prepare your binder for grading.  It should contain all your returned labs, projects, in-class exercises, and Self-Improvement Process Report.   Optionally, you may include homework and quizzes.  Bring your completed binder to class.

If you maintained a course journal, you may submit it at the last class meeting.


Final Report

The Final PSP report is worth 9% of your course grade.
Analyze and interpret the data from your projects 3 - 7. You should use the Project Summary History Spreadsheet (ver 1.3.1)
, including the analysis charts.

Study your results for:

Analyze and interpret the data referring to the guidelines in the texbook (Ch 8-9). Draw conclusions. 

In what areas do the data show you have improved?  

Do you feel there are improvements in your programming skill not captured by the quantitative data?    How might you try to measure them?

Create one or more specific improvement goals, based on the data.

Submit your spreadsheet containing all your project data to PolyLearn.

Follow the class writing guidelines. Print your report and submit it at the Final Exam meeting.