In contrast they're still the standard in the hardware design world.
In contrast they're still the standard in the hardware design world.
If you don't have explicit specifications (which don't have to be complete before starting to develop code), you still have specs, but they're unarticulated. They exist in the minds of the developers, managers, customers, and what you end up with is a confused mess. You have specs, but you don't necessarily know what they are, or you know something about them but you've failed to communicate them to others and they've failed to communicate with you.
Most people call this "not having specs".
If you define it as a description of what needs to be built then by definition you can’t build what is not described.
User stories are a type of specification. “Build me a Facebook clone” is a type of specification. A well-refined Figma doc is a type of specification. They all specify what needs to be built at various levels of fidelity.
You need specifications.
And most software projects are complete mess that waste unfathomable amounts of resources. But yeah, you “can” develop like that.