What “Done” Means

The team never “finishes” growing the software it's growing, but they (or somebody else working with them) might decide to call it quits. When they stop, they should have working software, although it might not do very much if they stop early. If they want to keep growing it, they should be able to.

Software is always emergent. Thinking, planning, and documenting are good. Sometimes they're even necessary. The sticky thing is that the world changes when we start writing code, and what we thought was true turns out to be wrong more often than we imagine, or want to admit. The only way to see that new reality is to move toward it. At some point, we'll decide to stop moving and ship. Then we'll start moving toward the next release. ...

Get Managing Software for Growth: Without Fear, Control, and the Manufacturing Mindset now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.