dialectic view of software engineering
- starts out ad hoc/informal (thesis)
- everyone gets burned
- react by moving to extreme formalism, waterfall model (antithesis)
- result is slow and cumbersome, inflexible
- move to agile processes where flexibility is formalized (synthesis)
ideas