Working software is the primary measure of progress.
– Principles behind the Agile Manifesto
Pixel perfect design mockups, UML diagrams, detailed user stories, automated tests, thousands of lines of code and hours of discussions. These are just a few examples of the endless amount of stuff we can spend time creating, tweaking, editing, testing and reviewing. However, nothing shows progress quite like working software.
So what is working software? That’s going to be different for every team, but a good starting point might be “software that is deployed to and delivers value to the customer”. This means it might be ugly, imperfect, not-absolutely-intuitive and likely somewhat incorrect and that’s okay; you’re one step closer to making it meaningfully better.
This post is part of my series on the principles behind the agile manifesto. You can find the others here:
More in the Agile Principles Series
- Agile Principles: Progress Requires Working Software
- Agile Principles: Tear Down These Cubes
- Agile Principles: Self-Organizing Teams are Motivated Teams
- Agile Principles: Collaborate Everyday
- Agile Principles: Frequently Deliver Working Software
- Agile Principles: Iterate. Evaluate. Repeat.
- Agile Principles: Deliver Early and Often, but Always Deliver Value