For the longest time now, I've held the belief that best words to describe highly-specialized control software are "ridiculously expensive" and "marginally functioning." Maybe I'm wrong, but this story from Brandon Jones certainly doesn't help change my mind.
Brandon spent some time in the mechanical and maintenance department of a large manufacturing company, working primarily with folks whose job it was to ensure that water processing systems were running. Apparently, in the twenty-five years since the original computer systems were originally installed, some advancements have made in the field of water processing software, and Plant Management wanted to capitalize on these. And who better to setup and install an entirely new control, database, and tracking system than a Fortune 500 company that prides itself on the highly-specialized systems it develops for the military?
The manufacturing company bought the 1.3 Million Dollar software package, which required the following:
- several Windows 2000 monitoring servers that received and translated data from field sensors
- a SQL Server database server that stored the filtered field data
- a Windows 2000 application server that hosted applications to monitor the filtered data
- any number of Windows 2000 workstations that ran the thin-client to connect to the server
The consulting company recommended a local company to do the installation and, a few weeks later, the manufacturing company had a completely non-functioning system installed. Because that didn't meet the "marginally functioning" requirement, the consulting company was called to help.
"Oh, no, no, no, no," the tech rep said, "our software will not work on a Hewlett Packard server! It *must* be installed on a Dell PowerEdge 4208 Server and the clients *must* be all Dell Optiplex GX150's."
That didn't make too much sense from a technical perspective (their software ran on Windows), but the higher-ups eventually agreed and all of the computers throughout the department were to be changed out. It wouldn't be that expensive, after all: only like half a million or so.
By the time the purchase orders went through and the computers were set up, the consulting company had a new version of their software out. Since the manufacturing company had the non-functioning version, the consulting company gave them a break and offered the new software for only a hundred or so (thousand) more. The installation company set things up and the software system finally ran enough to be put into production.
Shortly after, however, complaints began to roll in about system instability, missing features, and annoying bugs. As an example: the system didn't have the ability to generate a basic report about cooling system statistics over a given amount of time. This was absolutely mission critical to the water processing.
The manufacturing company complained and complained, and eventually threatened to cancel the contract. The consulting company provided a few "free patches" to resolve these "bugs" and eventually sent out a representative to do some on-site troubleshooting. After arriving and examining the systems for a while, he returned with a relatively simple answer to all of the problems that were being experienced...
"Well, the problem appears to be that your system is using Ethernet. Our product was designed to be used with Token Rings.
The consultant said that they could modify their software to work on Ethernet, but that it would cost a little more. The higher-ups agreed, and a few hundred thousand dollars later ($2.5M total, if you're keeping count), the plant finally had a marginally-working control system.