Outline for May 11, 2009

Reading: §9.4–9.6


  1. Overview of bottom-up design
    1. Take existing pieces and combine them
    2. Keep building up until you have solved the problem
    3. Do the glue first, with the smaller parts being stubs
    4. Do the stubs
  2. Example: compute binomial coefficients
    1. Need to read user input (see bc-1.py)
    2. Need to compute factorials (see bc-2.py)
    3. Need to print polynomial with integer coefficients (see bc-3.py)
    4. Combine (see bc.py)
  3. Example: Monte Carlo method for approximating π
    1. Need to generate where dart toss winds up (see mc-1.py)
    2. Need to determine if it is in unit circle (see mc-2.py)
    3. Need to read user input (see mc-3.py)
    4. Combine (see mc.py)
  4. Other approaches
    1. Prototyping and spiral development