"finished" as in "totally free from bugs" is one thing, "finished" as in "feature complete and passes all known test cases, artificial and real world, known at the time" is another. As an industry we need to push the second notion as something someone can build and then set down. building a bridge instead of a steam engine locomotive. a bridge needs some maintenance and upkeep, yes, but after it's built, the team that built it moves on to another project. To contrast, a steam engine locomotor is an ongoing engineering project, which requires constant upkeep to keep the train moving. A SaaS company's backend is a steam engine. The Unix util "ls" is a bridge.