Build or Buy?
It's an interesting question. When is it better to build systems internally than it is to buy them on the market? Where is the balance line between cost to buy and cost to build, time to implement, control over functionality, and so on?
At my company, we are evaluating whether to build or buy a new lab management system. If we buy, we have narrowed it down to the best of breed solution on the market. The base product won't suit our very specific needs, and we would need the product extensively customized to allow us to get the results that make us stand out from our competition. The base product is very expensive, coming in at more than $100k more than our calculations on what it would cost to build ourselves, and we figure the customizations to be at least that much on top. However, the rollout projection would be about 6-8 months, and assuming the best, we would have a fully functional system ready to roll. In addition, the company would work with me to allow me to develop all of the extra "bolt-ons" that we would want for the system that would be outside of their scope, which means that we could have effectively twice the system inside of a year. Then again, we're in this jam because our current system vendor...<BiteYourTongue>is less than perfect</BiteYourTongue>...and what happens when we get 2 years into a new relationship and all of a sudden it's back to square one?
On the other hand, if we develop it ourselves, we calculate that it will be much cheaper. We would have full control over design and functionality. Extensibility into perpetuity would be no problem, and given the company management, that's important. We don't know going into a relationship like this with a vendor how amenable they are going to be to working with us and being flexible to our needs. The cons to building it, however, are numerous. We're starting from nothing. Ground up. That's good and bad. We would have to bring on more staff. A system like that is a big responsibility from a legal standpoint. You never know when something will come along during development and completely derail the project. The additional, non-clinical, functionality will have to wait.
And here's the dilemma. Which one is it? On the one hand, I want the control, I want the comfort of knowing that it's all in our hands, and we can mold it to our hearts' content. On the other, it's a lot of system, and a lot of pressure, and what if it goes very very badly? Ultimately I'm not the decision maker, although I will factor into it. But I wanted to know, how many of you have faced this sort of decision? How do you do the cost/benefit analysis of either choice? What's the way to go? Build or Buy?
(since I know I have like...4 total readers...If you think this is a worthy topic of discussion, get the word out)
Tags:
Software Writing