At the risk of coming across as a smart aleck, 40 years of experience building software.
What experienced software engineers have is a sense of taste - this looks like good code and/or design, that doesn't. But they don't have data; they have, at best, a couple of anecdotes. It's more a sense of "that was harder to work with than it should have been; that approach seems to have drawbacks". But you only get a few examples of that in a career.
And there are very few outfits compiling usable data that could shape the approaches that software engineers use.
So I don't think how humans got there was primarily data.