- Individuals and interactions over processes and tools
- Working software over comprehensive documentation
- Customer collaboration over contract negotiation
- Responding to change over following a plan
The trick, as with much of Agile, is knowing the proper level of detail for your given project.
This is one of the most powerful aspects of Agile. It is very common for developers to start working on one thing, get sidetracked, and begin working on something else that is cool. Using Agile, the team completes the features the Product Owner wants 100% in each Sprint.
By following the rule of doing only the right amount of something and no more, we can often save money by delivering only a portion of what we originally intended. Of course it is up to the Product Owner to make that call.