Software Out of the Box?

November 1, 2012

A look at how the term commercial off-the-shelf can be abused in marketing literature.

When an application is referred to as commercial off the shelf (COTS) software, what does this really mean? Do you appreciate what you are buying and can you manage the risks involved? Here, we look at how the term COTS can be used and abused.

Have you read the marketing literature of some companies selling laboratory software for spectrometers, electronic laboratory notebooks (ELN), and laboratory information management systems (LIMS)? Delve into the detail and the chances are that you will see the term "COTS" used in several places to justify that you buy the application. However, the chances are even higher that when you do, the term COTS will not be defined. The assumption being that you, dear reader, are a sophisticated, intelligent, erudite individual for whom the definition of this term is self evident and it is not worth the writer wasting brochure space to undertake such a lowly task. In reality, are you being taken for a ride?

The problem is that the term COTS is commonly used but there is no commonly accepted definition of what this really encompasses, certainly not when you read marketing literature. So, for the uninformed COTS stands for commercial off the shelf. We will start our discussion with the debate of do you make or buy software?

Make or Buy?

Let us start from the beginning with a simple question: Are you going to write your own software application for controlling a spectrometer and also acquiring and manipulating the data? Of course you won't. You'll purchase the instrument together with the controlling application as a complete package. One advantage is that the development, support, and enhancement costs of the software will be spread across the whole user base and it's a lot easier than doing it yourself. This means that some of the risk around the software is removed from the project. In addition, rather than having to specify and wait for the software to be written and tested and then rewritten and retested; you can start the roll-out process much sooner after being trained on the application. Ideally, this should give you the confidence that the application will do what it is supposed to do.

Today, there is little justification for writing your own software for use in an analytical laboratory unless there is nothing on the market that meets your specific needs and it is cost-justified to do so. If the case for a custom solution arises, it may be resolved by changing the way you work and using a more robust commercial solution. However, this topic is not the subject of today's column, which focuses on commercial software and the term COTS.

Figure 1: Options for the modification and use of commercial software.

Therefore, the first stage of the process is the decision to have a custom solution or a commercial one as we can see from the first part of Figure 1. Hence the rationale for the "C" in COTS is "commercial". This is the easy part of the discussion, but now we have to consider what is meant by "off the shelf" or the "OTS" in COTS.

Off the Shelf?

What does the phrase "off the shelf" mean to you? Taken literally, this is the purchase of an item — for instance let's say food in a supermarket or clothing in a retail outlet — that can be eaten or worn immediately. It is something that can be used as is with no modification.

So let us look at some dictionary definitions for "off the shelf":

  • Available from merchandise in stock; not custom-made (American Heritage Dictionary).

  • Made in standard sizes and available from merchandise in stock; (especially of clothing) for example, "a ready-made jacket"; "ready-to-wear clothes" (thefreedictionary.com).

In the world outside the laboratory, therefore, "off the shelf" is something that can be used as is, eaten, or worn straight way without any changes.

However, what is the situation with software?

  • In the tech industry, off-the-shelf programs would be the opposite of custom software (PC Magazine) — a really useful definition!

  • Short for commercial off-the-shelf, an adjective that describes software or hardware products that are ready-made and available for sale to the general public. For example, Microsoft Office is a COTS product that is a packaged software solution for businesses. COTS products are designed to be implemented easily into existing systems without the need for customization (www.webopedia.com).

  • Commercially available specialized software designed for specific applications (such as legal or medical billing, chemical analysis, statistical analysis) that can be used with little or no modification (www.businessdirectory.com

  • COTS software: Item that is commercially available, leased, licensed, or sold to the general public and that requires no special modification or maintenance over its life cycle. (www.businessdictionary.com)

  • A COTS (commercial off-the-shelf) product is one that is used "as-is." COTS products are designed to be easily installed and to interoperate with existing system components. Almost all software bought by the average computer user fits into the COTS category: operating systems, office product suites, word processing, and e-mail programs are among the myriad examples. One of the major advantages of COTS software, which is mass-produced, is its relatively low cost. (http://searchenterpriselinux.techtarget.com/definition/COTS-MOTS-GOTS-and-NOTS).

So, we have a few problems with consistency of definitions when we look at the key elements of the software definitions above as we have

  • Opposite of custom software

  • Implemented easily . . . without the need for customization

  • Used with little or no modification

  • No special modification

  • Used "as is"

Are these really illuminating and highly informative definitions? No, because the reader does not know if there is no customization, little or no modification, or no special modification (whatever is meant by the latter) but implying there could be normal modification. If we can't get definitions right, what hope is there for a consistent understanding?

However, let us start from a basic premise that "off the shelf " means no changes to the software to enable it to automate your business process, that is, using the last definition above as the basis. So you now have the software equivalent of a Henry Ford marketing approach — any color you want as long as it is black. This means it is a one-size-fits-all product and you have to take it or leave it. There is usually the ability to add user types and associated access privileges to enable the package to run in your laboratory but this does not change the business process automated by the application. This is an important distinction to remember with COTS software as shown in Figure 1 as the first box on the right hand side.

COTS software in which a user cannot change the business process is relatively low risk because it works quite literally out of the box, off the CD, or from the download. Simplicity itself to get the application running — a user or administrator needs to do virtually nothing.

This is in contrast to some marketing of more complex laboratory software such as ELNs and LIMS. These applications need to be configured or customized before they can operate effectively in your laboratory. Before we look in more detail at how COTS can be abused let us define the terms configuration and customizing in the context of software.

Configure or Customize?

You would be surprised how many people, even software sales persons with many years of experience, confuse the two terms configure and customize. Therefore, it is appropriate to define the two terms in the context of the COTS debate:

  • Configure: modification using the tools provided by the vendor of the software. Care needs to be taken to differentiate configuration by selecting from options and using a vendor supplied language. The latter should be considered customization as this is writing code within the application.

  • Customize: writing modules of software code that integrate with a commercial configurable application. This can be achieved by using a recognized language such as visual basic or C++ or a vendor supplied language that can only be used within their own product.

One Size Fits All?

One compromise that you make is that if the process to be automated by the COTS software does not match your process you may need to change your process to match and get the best from your purchase. However, we are analytical scientists and we love to play and tinker with instruments, methods, and, of course, software. There are many occasions where an application does not do exactly what we want it to do and hence we would like to modify the operation to match exactly what we consider to be our optimum process (in many instances, this can be interpreted as this is what we do at the moment but we are too lazy to change).

Let us examine the two options:

  • Change the software to match the laboratory. Modification will be undertaken either by configuring the software using the mechanism provided by the supplier or by writing custom code and linking with the commercial package. This requires a more complex software application that will not be COTS as there is no ability to change the way the software automates the business process (see our definition of COTS above). This approach assumes that your laboratory process is more efficient than that offered by the basic software application. And you have verified this fact by comparing your process with the default process of the software, right? Of course you have! Or perhaps you have not; this last option is usually the case. At this point you need to consider if are you opening Pandora's box? The work you will be doing is much greater and more expensive than changing your process to match a COTS package. However, if there is a good business case for configuring or customizing the package you can go ahead, but be aware of the downside.

  • Change the laboratory to match the software. Do you like the simple life? Changing the process in the laboratory may seem like a labor of Hercules as some people do not want to change their ways of working but this is the better option. It means that by changing the way you work to match a standard product you avoid the need for extensive configuration or software customization. In turn, this reduces the time for the roll-out of the system to the users and potentially it could also improve your business process. Set against this is the need to train people to use the software and the new process, but this would also be a factor with the configured or customized option above as well.

Which option would you prefer? These two options are shown in the last two boxes on the right of Figure 1.

COTS and Marketing Literature

In the introduction I made a point that when the term COTS was used in marketing literature associated with laboratory software the term was usually not defined. The reason for this is that COTS can mean whatever the writer wants it to be, which can be misleading for a reader.

For a true COTS package, the software can be used as is with no changes to the business process. However, the majority of laboratory software is not COTS but rather configurable commercial software or configurable commercial software that is capable of integrating with custom software modules to change the business process being automated. As such, these applications do not come with "on" buttons and will take time and effort to configure or customize. You need to be aware of this problem and press each vendor when considering the purchase to define what they mean by COTS if it is used. Does it mean that the software can be used as is? Probably not. Guess who then has to pick up the pieces if you purchase such an application? You.

Summary

In this column I have looked at the definition of commercial off the shelf software (COTS) and some of the issues surrounding its definition and use. True COTS software is used as is with no modification. The key issue is to identify and verify that any software application you are considering buying that is presented as COTS is the real McCoy. Or is it configurable software in disguise?

R.D. McDowall is the principal of McDowall Consulting and the director of R.D. McDowall Limited, and the editor of the "Questions of Quality" column for LCGC Europe, Spectroscopy's sister magazine. Direct correspondence to: spectroscopyedit@advanstar.com

R.D. McDowall