A lot of expensive software I worked with turned out to be of not that great value. Always, that software was supposed to solve some domain-specific problem: setting up a adsl-network, classifying products for webshops, etc. What was promised to the customer, was software that is supposed to work out-of-the box, with only some simple configuration. However, as always that turned out not to be the case. Besides often complicated configuration, a lot of extra custom development was needed.
In the end we (the team I was part of) always got a working solution. More often, that software was more a hindrance then a help. Often I wished we used software that didn’t try to solve a problem, but just was general purpose, like Spring, Hibernate, MySQL, JBoss, etc. Also software as expensive as that of Oracle (Bea), Microsoft, IBM can be of value.
The main difference between supposedly configure-and-be-ready-software: that software doesn’t give customers the idea that he only has to configure the software and have it running.
Often better, as a customer: hire good people (or a good company), have them choose the best tools and have them create the solution.
This entry is inspired by why a PoC is better than a RFP Process, which in turn was based on the article Don’t RFP, Just DIY . Stated was, a RFP very often does not result in an end-result the customer envisioned. I can’t agree more. In the end, good software is created by good people, not by good tools. Good people can create good solutions even with mediocre tools, but better solution are built by great (at least better) tools.