Know What You NeedThere is an old saying that goes: "Be careful of what you want, because you might just get it." I have witnessed a recent demonstration of that principle. One of my clients took delivery of a software product and got some big surprises when the code did not match the original requirements and specifications.
There were several problems:
- The software was designed to provide a simple, "publish and subscribe" middleware mechanism. The software vendor interpreted the notion of "publish and subscribe" as "publish and distribute." Thus, the whole notion of "subscribing" to a transaction was missing from the software.
- The notion of distribution of a transaction cannot be implemented in the current software environment. The specifications originally called for the management of transaction queues. The software vendor decided that queue management should not be part of the core functionality but rather managed outside the software. Unfortunately the production environment cannot support queue management functionality.
- The initial specification required meta-data definition and management of transaction types. None of that functionality was implemented. The vendor told the client that this would be part of the next release.
- The client now believes that he needs to find a new software vendor. The vendor now wants to force
Please log in or sign up below to read the rest of the article.