Boston University
Fall 2009
Readings:
1) Brooks, Chapter 10 (The Documentary Hypothesis) and Chapter 11 (Plan to Throw One Away)
2) McConnell, Chapters 17-20.
Exercises:
(1) (30 pts): Explain briefly why Brooks advises, "Plan to throw one away; you will, anyhow". Also explain briefly how you would you use this advice in producing a schedule for a software project.
(2a) (30 pts) For ClassDiagrammer functional requirement (1), make a list of the sequence of tasks you imagine you would need to perform to get to the point where you submit code-reviewed code changes to the code repository. As in the previous homework assignment, assume that you have limited experience with Java graphics and mouse interactions, and you are still getting misleading Java advice from a fellow programmer. Also, assume you are new to the project, and you have no familiarity with the design or code of the ClassDiagrammer application.
(2b) (10 pts) Using your list of tasks, estimate the amount of time you think you will need to get to the point of code submission. Show how you arrive at this estimate.
(3) (30 pts) Explain briefly how design testing in software engineering differs from design testing in older, more established engineering disciplines such as civil engineering.