Although not limited to software, open source is dominated by this particular technology and by the open source software community. Open source software does not just mean access to the source code. The distribution terms of open-source software must comply with the following criteria:
- There must be free redistribution.
- The program must include source code, and must allow distribution of the source code along with the compiled form.
- The license must allow modifications and derived works, and must allow them to be distributed under the same terms as the license of the original software.
- The license may restrict source-code from being distributed in modified form only if the license allows the distribution of “patch files” with the source code for the purpose of modifying the program at build time.
- The license must not discriminate against any person or group of persons.
- The license must not restrict anyone from making use of the program in a specific field of endeavour.
- The rights attached to the program must apply to all to whom the program is redistributed without the need for execution of an additional license by those parties.
- The license must not be specific to a product.
- The license must not place restrictions on other software that is distributed along with the licensed software.
- The license must be technology-neutral.
There are many different variants of open source licenses (Apache, GPL, Lesser GPL, Eclipse, etc.) with some subtle and not so subtle differences between all of these variants.
It’s free:
Open source software is software that is freely licensed to use, copy, study, and change the software in any way, and the source code is openly shared so that people are encouraged to voluntarily improve the design of the software.
This is in contrast to proprietary software, where the software is under restrictive copyright and the source code is usually hidden.
This has made open source software very attractive to many companies.
Open source software is free, which is good. But is it really free?
Total cost ownership:
Total cost of ownership is a financial estimate intended to help buyers and owners determine the direct and indirect costs of a product or system. It is a management accounting concept that can be used in full cost accounting.
The average price of a new car in the USA tops $33,000, according to car-buying site Kelley Blue Book, so buying a vehicle is a major financial move. While many consumers may focus on the sticker price or the monthly payments, that overlooks many other costs. You have license fees, registration fees and taxes. You need to buy insurance, fill the gas /petrol tank, have regular maintenance, etc. And your car loses value from depreciation every day you own it. The total cost of ownership of a new car is not the same as the sticker price.
The same applies for a software product. The total cost of ownership is the purchase price of the software product plus all of the additional direct and indirect costs associated with taking the software product into use.
When choosing among alternatives in a purchasing decision, one should look not just at the software product’s short-term price, which is its purchase price, but also at its long-term price, which is its total cost of ownership.
The software product with the lower total cost of ownership is the better value in the long run.
The purchase price of the open source software product is zero, but what is its long-term price or total cost of ownership?
The components:
In order to calculate the long-term price or total cost of ownership of a software product, one needs to identify all of the different components associated with taking a software product into use.
I suggest that these include at least the following:
- The initial license fee for the software product (zero in the case of an open source software product).
- Any costs associated with hardware or software tools to develop or test the software product.
- Any costs involved with customising or configuring the product.
- Any associated hardware costs to deploy the software product.
- Any hosting costs.
- Any maintenance costs.
- Any support costs.
- Any additional software license costs.
- Any costs associated with feature or functionality updates.
- Any license costs to access other 3rd party software.
- Any insurance costs.
- Any direct or indirect costs associated with future updates / upgrades.
- Any training costs.
- Any warranty costs.
- Any direct/indirect liability costs.
This list is not exhaustive and there may be other components to consider.
Costs associated with open source software risks:
Of course, total cost of ownership is an issue for both proprietary software products as well as open source software products.
However, some additional components may need to be consider when trying to calculate the total cost of ownership of an open source software product, namely the costs associated with managing the risks involved, which divide out into the following categories
- Legal issues
- IP issues
- Operational issues
- Security issues
- Business issues
(These additional components are explored in more detail in another paper already published).
The bottom line:
When you are comparing cars you like, you should go beyond sticker price. You should research the ongoing costs of driving and maintaining each model, so that you get a true understanding of affordability. A realistic estimate of a vehicle’s total cost of ownership is crucial in helping you choose a car that fits your budget. The same applies to purchasing a software product, regardless of whether it is an open source software product or a proprietary one.
Donal O’Connell