| Articles Home |
Let's set the scene: A software vendor is engaged to produce a product or sells a product that does a specific task for your organization. Some pointy haired boss has signed a contract and a project has been set up to receive the software and implement it in your organization and will have internal administrators and internal support for users. You are now put on this project. What could possibly go wrong?
Well, a number of things. For example, what if the software as delivered is buggy and also the user interface makes it difficult for your users to complete tasks. Maybe the promised updates do not work and cannot be moved to production in time to meet your project deadlines. Maybe the install process takes weeks to set up and many hours to complete, if it is at all successful. Maybe the update never fixes the myriad of problems you emailed the vendor over the last 3 months. Your vendor is obviously a clown. So now what?
Any successful open source or commercial software vendor that makes software uses the following engineering practices, shouldn't your outsourced project do the same? It is time to check the software engineering processes in use at the vendor:
But let's say you are not in that unfortunate situation, your hair is kind of pointy and you are just a bit ignorant of managing a vendor contract. So just verify the above check list with your vendor (well, get someone who knows how to verify the above check list) and put these things in the contract BEFORE you buy the software. And then cut the points off your hair.
Oracle, IBM, Microsoft, Apache, Linux, FireFox, whatever successful software organization you choose from free to obscenely expensive, they all do the processes on the above list. They may call it something else but they do it. When managing a software vendor you and the vendor will have to do the same processes to have a successful project.