What Is Software End of Life?

Blog

Software Product End of Life and Why It Is Good for Your Business

Blog What Is Software Product End Of Life

What is "End of Life" for software? You may have heard the term "End of Life" or EOL used with some of your favorite business or personal software. Let's talk a little bit about what that means.

From our friends at Wikipedia: "End-of-life" (EOL) is a term used with respect to a product supplied to customers, indicating that the product is in the end of its useful life (from the vendor's point of view), and a vendor stops marketing, selling, or rework sustaining it."

More simply put, the software vendor has made a decision not to continue to sell or maintain the product past a specific date that they have published. Software vendors take a variety of criteria into account when deciding to EOL a product, and we will discuss a few of them and why they are good for you and your business."

The underlying technology has been "end of lifed" or is no longer supported

Software products build on other software and hardware technology. Software is produced using specific programming languages, software development toolkits, and delivered on specific operating systems and database servers.

The manufacturers of these underlying tools also make decisions on EOL timeframes for them. For example, Microsoft recently EOL'd Windows XP, SQL Server 2008, and Windows Server 2008. Some of these manufacturers may also go out of business and stop offering the tool altogether.

Some technologies and tools may still be viable, but it may be hard or impossible to find developers that know and are willing to work on it.

Your software product vendor may not be able to efficiently or reasonably make the product work well on the latest versions of the tools, if there are new versions and decide to EOL the product.

Why is this good? Underlying tools must be maintained to continue to work and be secure. When these tools are EOLed, they rapidly become security and stability liabilities in your enterprise. Without critical security updates, hackers may take advantage of the unpatched vulnerabilities to attack your business.

Technical Debt

The moment we are born, we being to age. The same is true of a software product. As it ages, it accumulates "technical debt." Technical debt is a collection of maintenance tasks to keep the product up to date. Examples include updating tools, upgrading the programming language tools/version, updates to software development kits, applying code patches. It also may consist of the need to rewrite (refactor) code in the product that has become complex or inefficient as new features are added to the product.

Technical debt is often unseen by users, and the effort to "pay down" often brings little value to users as well. Technical debt has a way of growing in favor of applying resources to features and functionality that users want to see in the product. Technical debt does slow programmers, increase effort to maintain and enhance software, and sometimes block the ability to advance the software to meet the current needs of customers.

Why is this good? Software with high technical debt is hard to maintain and enhance. Developers either work around the limitations of the debt or invest significantly in paying it down. Your subscription or maintenance fees will maintain the software and not enhance it. Over time, it may be more advantageous and viable to rewrite the product or to migrate customers to a newer one in the portfolio that can deliver greater value and be enhanced more quickly.

Financial Viability

When a product is past the prime of its life, and new generations are available in a vendor's portfolio, the customer base migrates away from the product over time. At certain "tipping points," the number of paying customers dwindles to below the level where it supports the costs of maintaining the product.

At this tipping point, the vendor may elect to set an EOL date for the product and incentivize customers to migrate to a new offering before that date.

Why is this good? Your business benefits from having a current, well maintained, and supported software running your operations.

Newer Version/Next Generation Product

Software vendors often create a new "Next Generation" product to replace older products in their portfolios. These products make use of the latest technology, tools, and innovations. These new products do not carry as much technical debt and often make use of technologies that allow developers to build enhancements faster for customers.

Why is this good? Software vendors want you to take advantage of this investment and invest less in "yesterday's" product. You'll get more modern software, functionality, and integrations than you had previously.

So, what do you do when faced with an EOL date for your software product?

  • Talk with your software vendor about their recommended migration path.
  • Consider Cloud subscription versions of your business software with upgrades, maintenance, operating systems, databases, and hardware included in the subscription.
  • Start creating a migration plan that backdates from the End Of Life date. Make sure your plan will complete at least six months before the EOL date in case your project slips.

About the Author

Grant Howe joined ECI as Chief Technology Officer in April of 2015. Howe brings more than 21 years of product development and management experience to ECI.

g2 tracking pixel