Corollary: if software requires constant revisions it didn't actually cover the initial problem scope, and degenerated into a high-latency service state-machine powered by coders. =3
Spiraling complexity often eventually implodes out-of-band ecosystems sooner or later. =3
https://en.wikipedia.org/wiki/Technology_readiness_level
One way to enforce implementation convergence is to define core unit tests before coding even begins. If people just ignored communication, the results are rather predictable.
https://en.wikipedia.org/wiki/Conway's_law
Building something that doesn't need patched every week is impossible for some. =3