“We are uncovering better ways of developing software by doing it and helping others do it.”
Movement vs Progress
- Individuals and interactions over process and tools: More importance is placed on people and effectiveness of working together. Processes and tools are important but should be tools to help the people rather than dictate how they work.
- Working software over comprehensive documentation: In similar ways as above, documentation should be something that serves in delivering a working solution. Having too much documentation can be wasteful in time and effort. Having too little will impact future maintenance and hinder agility. How much documentation will vary from project to project depending on the road to working software.
- Customer collaboration over contract negotiation: A product’s users are the most important stakeholders. A product that does not deliver value is wasted time, effort, and money. As the work progresses, we frequently collaborate with customers to ensure we’re continuously building the right thing.
- Responding to changes over following a plan: Upfront plans can be incorrect as they cannot extend with any certainty beyond the first encounter with issues that cannot be predicted. Planning is still indispensable as it helps in starting intelligently but you should not be tied to any plan that does not help you achieve your goals.