Homework 10
CSSE 221 – Fundamentals of Software Development Honors
Fall 2008–2009

Recall the Due Dates and (from the syllabus) the Late (and early) Assignment Policy and guidelines for maintaining Academic Integrity.

Also recall that you can get help on any of these problems during the CSSE lab assistant hours, and you can use the Assignments Discussion Forum on Angel to discuss, clarify, or get help on these problems.

Things to do

  1. Complete your UML class diagram for Fifteen, if you have not already done so.
  2. Complete your Project Plan for Fifteen, if you have not already done so.
  3. Do NOT do any programming on Fifteen unless BOTH partners are present and doing pair programming.
  4. Read/skim Chapter 8, Designing Classes, of Big Java.
  5. Do the written problems below.

Written problems

Write your answers to these questions. Turn your answers in via the appropriate Homework Drop Box on Angel.

  1. (This problem counts for seven points, where the remaining problems count as one point each.) There are 22 Self-Check problems in Chapter 8 (part of your reading for this homework). How many of these 22 Self-Check problems did you read, think about briefly, and check your answer against the answer at the back of the chapter?
  2. Do Review Exercise R8.1 on page 376 (end of Chapter 8) of Big Java.
  3. Do Review Exercise R8.4 on page 376 (end of Chapter 8) of Big Java.
  4. Do Review Exercise R8.11 on page 377 (end of Chapter 8) of Big Java.
  5. Do Review Exercise R8.15 on page 378 (end of Chapter 8) of Big Java.
  6. Do Review Exercise R8.20 on page 378 (end of Chapter 8) of Big Java.
  7. The following code snippet uses poor style:
    	public void deposit(double amount) {
    		amount = this.balance + amount;
    		...
    	}
    

    1. What, exactly, is poor style in the above? That is, what is the mistake?
    2. Why is the poor style in the above risky? That is, what can go wrong?
  8. Follow the link to overtime on the page that you read previously about The Rules and Practices of Extreme Programming. According to the page on overtime:

    1. Is overtime a good idea or a bad idea when a project is running late?
    2. Is it a good idea or a bad idea to add people to a team when a project is running late?
    3. What should you do to deal with a project that is running late?