Today a fellow engineer bemoaned late design changes to the spec, pulling out the old architect's analogy of changes "after the roof is on."
I decided why I don't love that analogy. In the architect's world, he typically has a meeting with the people who are going to, you know, live in the house. Software guys almost never get that option. The closest we come would be more analogous to the architect going up to the carpenter and saying, "Hey, what kind of windows do you think the homeowner wants? I like 3x4 pane, myself." And then the carpenter says, "I dunno, I have 2x2 in mine, and all the houses in my neighborhood seem to have those. They're much easier to clean." They then have a discussion of the relative pros and cons of each, and finally pick one that they're both happy with - which has nothing to do with what the user might have wanted.
So yeah, it's quite possible that "after the roof is on", in our situation, the homeowner shows up and says "Wow, I hate those windows."
The best part is then when the carpenter and the architect, who picked the windows through mutual agreement, go away grumbling that the homeowner doesn't know what she's talking about, because obviously their decision was the better one.