The Open Source Primer: Part 2 - TCO Factors
Total Cost of Ownership (TCO) figures are often published by vendors but can be hard to relate to your own organization or a specific project. Often they involve an over-idealized model of the business. Small deviations between reality and the TCO model assumptions can easily overwhelm the supposed logic of the calculation. In addition too narrow a focus solely on costs (TCO) versus the subtle factors that affect the Return On Investment (ROI) can obscure the true goal.
For these reasons we’d like to begin our discussion of TCO by presenting some factors inherent to open source software that are hard to quantify in a TCO context but have significant impact on the long term outcome:
1. Unimpeded ability to experiment. With open source licensing, you can begin experimenting immediately – no need to obtain a software license, apply for a key to unlock the software, or wait for business hours somewhere to get permission. You can try – and even fail which is a critical part of any innovative environment – with little consequence in terms of time or money.
2. Flexibility. Open source code puts a significant emphasis on flexibility – a wide community representing many diverse interests and points of view naturally leads to software that is fully instrumented with extension points, caters to a wide variety of use cases, and allows faster iteration to accommodate changing requirements. The cost of a tool inflexible in the face of changing requirements or environments can be very steep – either in diminishing ROI or requiring a costly migration to an alternate solution.
3. Protection against lock-in. Software without an open source license by definition provides – by definition – a monopoly to the software vendor. Sometimes this monopoly position develops into tendencies towards arrogance and laziness, and customers have no choice but to put up with this situation because abandoning a vendor also means abandoning the software. With open source licensing, the vendor and the technology are not legally locked together. If you can find a better vendor to support the technology the open source license ensures that you are free to do so. You can support it yourself if you are willing to invest in developing that capability. Alternative vendors are free to spring up without the permission of the original vendor.
4. Keeping vendors honest. As just discussed, under open source licensing, alternatives will spring up or customers will develop the capability to self-support if the there is good technology but the vendor fails to provide value. Where there is a primary vendor, there is constant pressure to ensure that the services and relationship are so good that there is no need to consider an alternative. Ideally, so good that there is little room in the market for alternatives.
5. Developer satisfaction. Many developers are happier and more productive when using open source technologies. They know they can reuse their skills, build a personal relationship with the community, use the technology for DIY projects at home or for charity. They know they will not hit a stone wall where corporate sluggishness or misaligned interests can halt progress. With open source there are no limits to their ability to learn from, debug, commit fixes, and even develop new features for the code.
Let's look at the more traditional measures of TCO and how open source can contribute to them as well:
1. Acquisition cost. Typical software licensing involves a pre-paid license fee upon commencement of development, followed by annual maintenance and support fees. An open source license forgoes the initial license fee typically in favor of an annual subscription specifically designated for support and maintenance. The subscription cost coincides with successful deployment and doesn’t require a large lump sum.
Subscription fees also can be treated as operational expenses instead of capital expenses, which may have advantages in some organizations.
Open source software plays well with other open source software and ensures that the TCO and ROI of each level of the stack can be evaluated independently. Open source software will typically not have hard dependencies on proprietary operating systems, databases, or other technologies.
2. Operating costs. A key component of cost is maintaining “modern” software – upgrading regularly as improvements are made, obtaining service packs, and availability of patches to fix specific issues. Open source tends to provide a faster cadence of point releases, so any improvement or fix can be taken advantage of quickly. There are typically no charges for upgrading an open source product to a new version.
Comparing the cost of a commercial license to an open source support subscription isn't hard – determine a time frame, and estimate the initial license fees, licenses for major upgrades, and annual maintenance fees and compare them over the same period with an annual open source subscription cost.
3. Personnel costs. Personnel costs are related primarily to software quality and ease of use, not necessarily to the type of license. But open source software typically attracts talent, supports the availability of a wide set of third party services such as development and system integration.
WSO2's business model does not allow us to charge license fees for our products. Instead we provide subscription support services and development assistance. When performing a cost comparison, the following considerations may be helpful:
|License fees for production use||Requires one-time fees based on CPUs or PVU||No fees|
|License fees for upgrades||Major upgrades usually require new license fees||No fees|
|Annual support/ maintenance||Annual fee, typically a 15-25% of initial license fees||Annual per-JVM subscription fee.|
|License fees for passive standby use||Generally requires fees||Supported with no additional fees|
|License fees for development use||Generally requires fees, check the license to see what the non-production permitted uses of each license are||No fees Development Support available in hourly bundles|
|License fees for testing||Generally requires fees||No fees required – subscription only if SLA support is desired|
|License fees for staging||Generally requires fees||No fees required – subscription only if SLA support is desired|
|License fees for passive standby use||May require fees||No fees|