|
Build, Buy, or Subscribe and the Pursuit
of Functionality
Exploring the economics of obtaining software functionality
By: Bruce Bahlmann - Contributing Author (your
feedback
is important to us!)
Created: August 3, 2003
There is an old adage that says if you want to do something well,
limit your focus to one thing and then do that one thing as best you
can. For software companies, that one thing is developing software
products and for service providers that one thing is providing services
to their customers. What about companies that try to do both? This
article will define the economics of the build versus buy scenario with
an added twist of describing yet another alternative (a subscription).
Can a single company focus on providing services to their customer also
economically develop their own software products? Find out in this
article.
The “Value” of Purchased Software
Developing custom software applications in-house have been labeled
for its associated risks, high costs, and lengthy development cycles
over commercial off-the-shelf (packaged or shrink wrapped) software.
However unless the packaged software meets nearly 100% of your
requirements and is priced affordably, the costs (and risks) of packaged
software can easily eclipse that of similar in-house development.
Research published by Forbes magazine showed that for every dollar spent
on packaged software an additional $4 to $10 was spent installing and
customizing. The amount of customization generally falls into the
category of what is called wrap-arounds that consist of one or more
applications that fill the gaps between packaged software functionality
and actual customer requirements.
There is also significant expense involved in evaluating packaged
software. Evaluation of packaged software includes gathering and
publishing operational requirements, researching and locating possible
software vendors, writing and issuing a request for proposal (RFP),
studying, comparing, and ranking multiple submitted solutions in detail,
testing of finalist vendor solutions in the lab, and potentially in the
field, and then contract negotiations with the vendor (or vendors). One
of many flaws associated with the evaluation process is that not all
packaged software vendors are truthful about what features their current
product has vs. those that are being considered for development or
currently being developed. As a result, you have some vendors moving
ahead in the evaluation process over other honest, legitimate vendors.
In the event that no single solution can provide the required
functionality, multiple vendor products may need to be assembled to
produce the desired requirements. The complexity of assembling products
from multiple vendors is typically more expensive and risky than
building a complete in-house solution. This is especially true over the
long haul as vendors may come and go and the ones that stay around may
change product emphasis or flexibility. There is also significant risk
in selecting packaged software from a startup vendor, especially if the
product/company is less than 7 years old. Non established or committed
software vendors offer no guarantees that they will continue building
products for your business or continue to cater to your company’s future
needs.
When all these costs are taken into account including personnel costs
of individuals charged with researching, evaluating, interviewing,
testing, trialing, and negotiating the software as well as developing
required wrap-arounds the cost of packaged software may well range
between 4-10 times that of similar in-house developed software. Typical
timelines for buying software that must integrate into multiple service
essential systems ranges from 6-18 months and may employ an average of
2-6 full time people.
The “Challenge” of Custom Software Development
In-house developers tend to be general-purpose programmers with a
variety of entry level to intermediate skills and intimate knowledge and
understanding of the company’s business and user community. In-house
developers tend not to be high priced talent and few companies staff an
experienced principle developer. However, what in-house development
staff gives up in quality they make up in quantity and business
experience. The combination of quantity and business experience is more
than capable of taking on fairly sophisticated development efforts that
is very competitive to packaged software price while meeting 100% of the
operational requirements. The sacrifice in using this kind of talent for
in-house development is that the resulting software may have a limited
useable shelf life and flexibility since it may not be designed for much
more than current and immediate functionality needs. However because the
total cost of ownership is generally less than purchased software it can
continuously evolve and remain within a controlled budget of the service
provider. Service providers who practice in-house development call this
“just in time development”, meaning they build the functionality they
need as they need it rather than paying a premium to obtain it elsewhere
prior to when they actually can use it.
Take something as simple as provisioning. Service providers know
there is not much to this software and many of the largest service
providers today either develop their own provisioning software or enlist
a handful of specialty vendors to provide some of the solution and then
make up the difference with their own (in-house) software. Those service
providers that have purchased a complete solution typically view their
decision as a interim (or temporary) solution until such time as they
can internally come up to speed and begin shedding some or all of their
existing solution in favor of internally developed products. Generally,
the more a service provider understands their requirements and the more
developers they have on staff, the less likely they will buy packaged
software.
Protecting Your Competitive Advantage
One of least discussed problems with purchased software is the fact
that often times to obtain desired functionality a service provider may
need to share key competitive information (service roadmap, strategy,
etc.), desired product operation details, and functionality/performance
requirements with the software vendor. When operational details such as
this are divulged it places the service provider at risk of loosing
their competitive advantage over other service providers. Few service
providers approve of their chosen vendors selling similar solutions to
their competitors. However most software vendors must diversify their
customer base so they often sell to competing service providers within
the same business sector, as one industry is unlikely to sustain any
vendor unless they maintain a majority market share. Any vendors that do
not make the minimum requirements to be considered a finalist at one
service provider can often use this valuable operational information
during the proposal process to land other competing accounts. As a
result, the service provider may unknowingly be helping their
competitors as they dismiss under performing vendors during the
selection process.
Enter the Subscription
With the costs of in-house development looking increasingly
attractive, one other option for outsourcing software is purchasing it
via a subscription. Subscription-based software generally resembles
standard packaged software with a couple noticeable differences: price
and service. With packaged software you pay a bulk of the cost up front
and then pay yearly maintenance fees there after. The problem with this
approach is that every couple years you basically need to purchase a
major upgrade to stay current – this amounts to yet another large amount
up front cost. Over the course of 3-5 years you generally pay 2 or more
times the original cost of the software to maintain support for your
previous purchase. Some vendors even discontinue support for releases as
little as 1 year old.
In purchasing a subscription, you will pay a small amount up front
and then the balance of the full purchase price over a 3-5 year period.
During this time, you generally receive all updates as part of
maintaining the subscription. Subscriptions also save you money as the
later payments allow you to conserve cash now in exchange for a
longer-term commitment with the software vendor. The subscriptions from
reputable companies give you an opportunity for an early out – generally
after 6 months to a year. In this way, the software vendor must
continually work hard to keep you and your business happy or you can
walk with only a minimal investment.
While a single subscription generally costs you the same as it would
if you purchased a single license to the software, you end up paying for
the cost of only a single purchased license. The problem with upfront
cost models is the service provider bears all the risk of the software
purchase where as in subscription based software business this risk is
shared between the vendor and the service provider. Subscription-based
software services increasingly build strong bonds between service
providers and software vendors as the two become dependent on one
another. Subscriptions also reduce the need for software vendors to
diversify their customer base as the reoccurring revenue stream allows
them to build a profitable business.
Rules of Thumb for Determining Build vs. Buy vs.
Subscription
Build in-house: If the functionality requirements are
essential to your business or requires you to divulge details of your
business that you consider to be confidential or could place your
company at risk of losing its competitive advantage it is generally
cheaper to build in-house over purchasing packaged software. Generally
if better than 10% of your requirements cannot be met by packaged
software its time to build in-house. Also, if the best software vendor
you can find has a product less than 7 years old, build it in-house.
Buy: If the expertise needed to construct such functionality
mostly or entirely reside outside your company’s product space or area
of expertise. For example, if the desired software must function on a
number of different platforms (PC, Machintosh, etc.) and operating
systems buy the software. Essentially the challenge of maintaining
interoperability across all these systems is very difficult to
accommodate with in-house developers. Multi-platform personal computer
software definitely requires serious buy consideration.
Subscribe: If the cost to buy is too much or the time to build
is too long for your business needs. If the actual requirements are
unknown, extremely complex, or the internal resources are limited. Also
if your looking to examine the value of a desired capability but don’t
want to risk a large investment – especially if your unsure of the
resulting benefit.
Deciding whether to build, buy, or subscribe also depends on the
individual(s) employed by the service provider that are responsible for
selecting and maintaining the required functionality. While some
individuals are hard-wired for outsourcing and some for keeping
everything in-house, the economics of obtaining software functionality
will ultimately determine which is paying off for the service provider.
Your challenge is to rigorously document all aspects of your investment
(time, money, resources) in whichever way you choose so as to legitimize
and substantiate your decision as few companies having made the
transition from one of these options to the other rarely can show
decisively the true benefit realized. Without complete documentation of
all expenses associated, you will never really know which track is more
economical for your company.
Can Birds-Eye.Net help you or your Company?
Receive your Birds-Eye.Net articles and white
papers hot off
the presses by adding our RSS feed to your reader.
|