Software literally runs the world. Over the last 25 years, software has crept into every corner of the world’s economy. But how much of that software is running the most current version? In today’s technology, both innovation and security challenges are running at a rapid pace, so keeping software at the proper currency has become paramount to running an efficient, optimized, and secure enterprise.
Software currency is critically important to an enterprise. However, oftentimes, perceived risk factors and escalated software costs prevent the vitally important update process from occurring regularly within the enterprise.
Every enterprise will outline a litany of reasons as to the timing and rationale behind their software update schedule. This decision-making can be illustrated through four software currency and adoption profiles, which categorize enterprises on the market today.
4 Profiles of Software Currency and Adoption: Which Are You?
- Early adopters: Also known as the “bleeding edge” group, they are typically the first to experiment with the latest technology, oftentimes even before the update is fully developed and tested. This approach carries high risk but plays a key role in driving new improvements and innovations. Enterprises categorized here also gain a competitive advantage by adopting faster and leveraging the software update before the market.
- Mainstream adopters: This cautious group adopts new software releases after they begin to be accepted by other customers. They want to see a proven track record before committing to the update. As a result, they prefer to delay their software upgrade, which allows for relatively lower risk factors, while allowing for incremental adoption of new improvements and innovations.
- Late adopters: This conservative group adopts a software update when the current installation is approaching end-of-life, and the software provider is ready to pull the product from availability and support. Similar to the “mainstream adopters,” this group wants to see a proven track record that the software update is stable enough for adoption. As a result, this group often does not upgrade to the most current update. Rather, the enterprises categorized here choose a back-level software update that has been available for a considerable amount of time and appears to be stable. This approach carries a higher risk compared to mainstream adopters, as these enterprises typically miss incremental improvements and innovations over an extended period, which erodes competitiveness and increases the potential for security incidents.
- Laggards: These enterprises are the last to adopt new technology. They typically do not upgrade until the software begins to underperform, the software is no longer compatible, or a major security incident occurs. This approach appears to carry a decreased operational risk but can lead to decades of missed opportunities for innovation. When this group decides to upgrade, the cost and risk increases due to having to complete a large software update in a short period of time.
Each enterprise prioritizes their software currency and update process based on a litany of reasons.
6 Benefits of Getting Ahead of the Curve
1. Security
Security drives just about every facet of the industry, and software currency plays a significant role. Software providers consistently roll out updates to combat the constant threats that can disable an entire enterprise. As a result, keeping current and adopting the security updates become vitally important to avoid operational and financial consequences associated with security breaches. According to ITIC findings, “IT downtime costs a North American business at least $300,000 for every working hour.” This is even more important if an enterprise uses open-source packages, as bad actors have an easier path through this means, as they have access to the deployed source code.
2. Stability
Every enterprise consistently strives for a stable operating model but, in reality, software providers do release defects into products and have to mitigate the issue as quickly as possible. Any defect introduced into a product could compromise the stability of the software system and open security holes, so adopting the latest updates from software providers is critical to avoiding these breaches.
3. Competitive Edge
Adopting the latest software introduces innovation and performance gains that enterprises would otherwise miss, lagging behind competition. This is especially pertinent, as artificial intelligence (AI) rapidly matures beyond just the hype. As the software industry continues to be increasingly competitive, providers are increasing their competitive edge, and the enterprises are benefiting from this innovation. Enterprises can gain a competitive edge through a stronger software performance, which typically comes from a software update.
4. Speed
As software packages mature and interact with the underlying hardware, internal processing can experience varying speeds, which can introduce race conditions and timing challenges in older software packages. By not maintaining currency, older software running on today’s powerful processors may potentially behave in a different manner. This could surface conflicts and timing issues within the software and enterprises may incur unseen challenges over time.
5. Application Savings
Clearly the cost to operate any software package includes more than just the license and usage fees. However, as currency wanes on any software package, the cost may continue to rise in unexpected areas as well. Software often depends on a specific hardware level to run efficiently, and may run into issues with newer hardware. Regularly updating software helps manage operating costs by minimizing the need for outdated hardware for testing purposes. In addition, any upgrade of the software package that is multiple versions or levels behind can incur cost as oftentimes enterprise grade software has to be upgraded in sequential order which will incur time and elevated operating cost to perform the upgrade.
5. Personnel Savings
Software packages that are not maintained sometimes require specific scarce skillsets that are costly to the enterprise. Maintaining currency and leveraging the modern practices and processes manages cost as skilled professionals with specific enterprise software knowledge can increase the operating cost.
Whether an enterprise is an “early adopter” or a “laggard,” these reasons should be considered when planning regular software maintenance and updates.
Ultimately, every enterprise profile has inherent risk involved in the approach to software currency, but by looking at each of these reasons and internalizing how these reasons are applied to your specific situations, every enterprise can mitigate the risk involved if they operate within the proper currency profile that applies to their organization.
If you enjoyed this article, learn more about SHARE education resources and membership options.
Mario Perotti is the program director of Product for IMS and Hybrid Cloud Foundation and has over 25 years of experience working in technology as both a product and engineering leader having built both products and companies from the ground up. Ranging from small startups to large enterprises, Mario has led the product direction for both internal IT and consumer driven products including co-leading a startup's product portfolio to a successful exit. At IBM Mario looks to continually broaden the vision for what the IMS, Ansible for IBM Z and ZOAU products can accomplish in the hybrid cloud landscape. Mario is a graduate of Cal Poly-San Luis Obispo and lives in San Jose, California with his wife and young son.
Roland Koo is the program director and leads the product management team for Compilation Technologies and Enterprise Products on IBM z/OS, overseeing a diverse portfolio that includes COBOL, PL/I, C/C++, Automatic Binary Optimizer, Java, Python, Node.js, Go programming languages, and Enterprise Products on IBM Z. Based in Toronto, Canada, Roland brings over 30 years of experience with the IBM Toronto Lab to his role.
Before taking on his current position, Roland led the compiler optimization team, playing a pivotal role in advancing cutting-edge optimization technologies for IBM Power and Z platforms. His career at IBM has been marked by a series of leadership roles, encompassing product planning, compiler front-end development, testing, and managing collaborative compiler research with academic and IBM research partners at the IBM Center for Advanced Studies.