Continuous & iterative
High-level (“architectural”) design
- What pieces?
- How connected?
Low-level design
- Should I use a hash table or binary search tree?
Very low-level design
- Variable naming, specific control constructs, etc.
- About 1000 design decisions at various levels are made in producing a single page of code