Lean ?
- Trim the fat, validate and don't commit before action
- Don't spend any resource before you know it's needed
- Don't build app before you know there's a need for it
- Build smaller version of features, get feedback → build the rest
Waterfall ?
- Make a big and complex plan ahead
- This is not evil and good to be implemented in some scenario
- ex : high stake apps that cannot be developed incrementally
Agile ?
- Set of values to ensure lean development
- Individual and interaction over tools and process
- Working software over documentation
- Customer collaboration over contract negotiation
- Respond to change over follow plan