I feel like building a house and programming are the only kinds of engineering where the customer can change the project halfway through and not get laughed out the room
erh, the option with the house, sounds rather expensive?
my day-to-day work regards professional building cost estimation software, and I would claim people try to do a lot of work to avoid having to do that.
I'm not saying they don't sometimes end up doing it anyway, but in my perspective, the larger the scale, the more this is aggressively avoided as much as possible.
Similarly, I encounter a lot of comparisons where "we" software people are told to be either more or less like the building people.
What I do see though, is that building people perpetually tend to miss out on a lot of data optimisations / pipelines in the building project flow. They keep talking about wanting to do this, but in practice end up entering a lot of data from scratch multiple times. One of the culprits I see, is that the people who should have shaped the data for this, have no economic motive to do so - "why should we do that, it will only be a problem for X other people at a later stage we are not involved in".