Every organization has either thought about having a custom app written for them, or already has one that is deployed and operational. This fact in itself is a “trigger” for someone at some point to ask a question: “Who’s the owner of this app?”
Many companies maintain an in-house team of support personnel that “keeps the train running”, while others outsource this task to onsite/offsite contractors or a consulting firm. Both approaches have pros and cons. Let us take the first one, an in-house team.
Pros – the resources are always available, they possess the necessary knowledge about the application and the business, thus the implementation of modifications can be very quick with minimal downtime.
Cons – the cost of keeping such resources in house while development is needed on occasion may not be easily justifiable, which means that either those resources have to have additional workload, or the business will be facing the need to start cutting down the number of those resources.
The other approach, – fully outsourcing the task of application maintenance, also has its pros and cons.
Pros – No need to maintain a technical staff at all times, the bid for the contract can expand the spectrum of resources available for the project, and the winning contract is legally binding the consulting firm to complete the work on budget and on time.
Cons – the tendency to go with the cheaper bidder may result in poor quality and/or extend the period for delivery. In the end, it may cost more, and in many cases will cost a lot more than the original budgetary estimate; going this route is definitely more expensive, even when using the cheapest bidder, than the cost of in-house resources for the period of time required to complete the work.
So how can we find this fine line and perfect condition that would be beneficial for the business in terms of availability of support, without breaking the bank, while not having to carry the liability for the idle resources?
First, let’s have a look at a typical scenario of how an application ends up as a business system. 2 to 5 years ago a business had a semi-full staff of IT professionals, that were eventually tasked to provide a computerized solution to a specific business problem. As it’s usually the case, it started small, with an Access database and a couple of forms. Eventually it grew and passed the limitations of MS Access platform. The original developer long left, the documentation is sparse if present at all. Now the company’s management is facing a dilemma, – to hire a new developer in hope of re-creating development environment for the application, or to outsource the effort all together.
What is frequently overlooked when considering an in-house resource, is liquidity of the presence of such resource, as well as the cost associated with finding and training it to fit the organizational needs. This means that the company will periodically find itself in the same situation, and the cost will be unavoidable.
However, as we determined earlier, going with option 2, – outsourcing the entire effort, also has negative aspects. Does this mean that the solution is to go with the “lesser of the two evils”?
The answer probably lies in approach that the company chooses to structure the relationship with a consulting firm. And there are different such approaches that traditionally dominated the decision-making process. One way to go about it would be to follow the trend that developed in the past 20 years, where the company contracts a consulting firm to support organizational needs on a long-term basis. This virtually means to fully outsource all aspects of IT functions, including support, maintenance, new development, and even help desk.
No comments:
Post a Comment