We are at an age where businesses must transform and adapt
fast. As a result, organizations, especially the ones in the service sector,
must find a way to introduce products and services rapidly. So, increasing
number of technology executives, architects and developers are facing a newer
challenge – build custom software or purchase commercial of-the-shelf (COTS)
software.
Some developers may not care much for this issue as long as
they get to work on newer technologies. Architects, on the other hand, may have
to evaluate the value of custom software as opposed to COTS when it comes to
assessing the current and future state of corporate systems. I must emphasize
that the roles of an architect can vary from one organization to another;
however, many architects, regardless of their roles, always have to consider
flexibility, agility, extensibility and timely delivery of products when
designing large scale systems. Consequently, they may have to constantly
evaluate whether to buy software (or software components) or to build something
in-house. Technology executives may focus more on the bottom lines – expenses,
project deliverables, resource management, and fulfill short and long term
corporate goals; but, any decisions taken by architects and developers usually
have direct impact to executive decisions.
Whenever we attempt to evaluate of-the-shelf software
products against the option of building in-house, we have to consider many
things. Both these options have their advantages and disadvantages. Let’s look
at the followings:
COTS
|
|
Advantages
|
Disadvantages
|
No need to reinvent the wheel
|
Recurring license/support cost; can be costly
|
Minimizes work for quicker product implementation
|
Customizations may be limited and/or costly
|
Resources not needed for continuous product improvements
|
Some features of the product may not be relevant
|
Home-Grown
Software
|
|
Advantages
|
Disadvantages
|
Complete control over features and functionalities
|
Dedicated resources may be necessary to support the product
|
No recurring license/support cost
|
Products and services to customers may get delayed due to the
development/enhancement time
|
Despite the advantages or the disadvantages of both the
options, the price plays a major role in our decisions. If the cost is
relatively low, then organizations may very quickly decide to buy instead of
building a product. If the price tags for off-the-shelf products are pretty
high then the decision gets a little harder.
I feel there are three different categories of off-the-shelf
products:
1)
General purpose– These products don’t target any
specific industry or business operation. They can be utilized in many different
types of applications. Such products can
be inexpensive.
2)
Operations specific – These products can target
specific operations within a business organization and can be quite expensive.
For example, accounting and customer relationship management.
3)
Industry specific – Industry specific (or line
of business specific) products target certain industries (e.g. insurance,
healthcare) possibly with features such as workflows, business rules, security
and governance. These products can sometimes be quite expensive.
There are off course open source alternatives to many
expensive products these days. We can always pick some of those; but support
and constant improvement might get challenging.
There are plenty of commercial of-the-shelf software
products in the market. It is difficult to fully understand available features,
customization options and ongoing maintenance costs associated to these
products. In addition, we may face a difficult challenge should the producer
decides to abandon the product. Home-grown products are no different in this
regard. Life span for in-house products is gradually shrinking, and (in some
cases) the cost is gradually increasing. It is for sure that the competitive
market is demanding us to come up with robust and flexible systems at a faster
pace. As a result, we are being forced to increasingly evaluate between COTS
and home-grown software products.
Some developers may not care much for this issue as long as they get to work on newer technologies.
ReplyDeletecustmized purchase software