Because we aren't sure it will work.
Why aren't we sure it will work?
Because it is an invention.
Why is it an invention?
Because we don't save.
Why don't we save?
Because it is more fun to invent than to reuse.
That's it.
If we saved more of the stuff we build, and were motivated to reuse-assemble-deliver rather than design-build-assemble-deliver, then lots of problems become much smaller. In particular, the number of steps between problem (or opportunty) recognition and tangible value experienced by (not just delivered to) the targeted customers is dramatically reduced. And, everyone knows that reducing the number of steps required to do something is always better. Fewer opportunities for errors, lead to fewer actual errors, lead to fewer defects inserted into the software (yes, someone is putting them in), lead to shorter time-to-market (even your "internal" market of users within your company), etc. All of which accelerates benefit steam recognition---and, reduces waste, failure costs, and lost or dissatisfied customers, while simultaneously increases return on everyone's investment. Removing unneeded steps helps everybody.
So, why don't we save what we build? Why don't we naturally leverage our investment in time and energy and money, so the next time we just pick it up and reuse it?
The technology and the tools are there to do all this. They have been for years.
It would not be too much of a stretch to say that this bias, this tendency when faced with a challenge to view it as a completely new event, represents our single largest impediment to reliable, high-performance, low-cost, rapidly delivered technology solutions that work the first time, every time.
(By the way for those of you keeping track of such things, this is, in fact, the elusive silver bullet you have heard so much about in the past. You know, the "thing" that nothing ever is? At least, this is as close as we are likely ever to get.)
You can see this bias firsthand in the tools that the industry provides the technology community. These tools aren't being forced on developers. The tool companies are responding to demand. Accordingly, overwhelmingly the industry is dominated by tools (and practices) that focus on design-build, rather than reuse. This is because reuse is still considered an interesting, but ultimately second-tier, idea.
So, again, why don't we simply put to better and more comprehensive use the few reuse tools we have, or demand more reuse capabilities from our tool suppliers?
The answer may have something to do with a little thing called requirements.