Outline for October 17, 2012

Reading: § 7
Assignment Due: October 24, 2012 at 5:00PM


  1. How to write a program
    1. Problem statement: be explicit, specify exactly what the program needs to do
      1. Goal
      2. Specification
    2. Design: state how the program will work in high-level terms
      1. High-level design: what does the program actually do?
      2. Data: how do you represent the data?
      3. Functions: What functions do you need?
      4. Refinement: refine until the design can be translated into code
    3. Implementation: translate the statement into Python code
  2. Example: Cæsar cipher
    1. How it works
    2. Encipher [caesarenc.py]
    3. Decipher [caesardec.py]

A PDF version is available here.
ECS 10, Basic Concepts of Computing
Fall Quarter 2012