The Big Release Downward Spiral

The riskiness of a release is proportionate to the number of potentially untested paths in the new code.

If there are a thousand new possible paths and we've only tested 4, then it's a significant risk to the installed base.

If there are two, and we've tested both, then it's not risky at all.

The larger a release (the more stockpiled functionality) and the less complete the characterisation via tests (automatic and manual), the more a company must grow bureaucracy and processes around releasing.

The harder it becomes to push a release through all the bureaucratic gates, the more work gets stockpiled before release.

This is the self-eating mechanism that CD dismantles. When a release may be only a couple of lines of code, the risk comes down. When it's one function, reached in only one way, then it's a limited set of paths.

Saving up for a big release stockpiles pain and risk.

Comments

Popular posts from this blog

Programming Is Mostly Thinking

Is It My Fault You Can't Handle The Truth?

Preplanning Poker: Is This Story Even Possible?