Close
  • Latest News
  • Artificial Intelligence
  • Video
  • Big Data and Analytics
  • Cloud
  • Networking
  • Cybersecurity
  • Applications
  • IT Management
  • Storage
  • Sponsored
  • Mobile
  • Small Business
  • Development
  • Database
  • Servers
  • Android
  • Apple
  • Innovation
  • Blogs
  • PC Hardware
  • Reviews
  • Search Engines
  • Virtualization
Read Down
Sign in
Close
Welcome!Log into your account
Forgot your password?
Read Down
Password recovery
Recover your password
Close
Search
Logo
Logo
  • Latest News
  • Artificial Intelligence
  • Video
  • Big Data and Analytics
  • Cloud
  • Networking
  • Cybersecurity
  • Applications
  • IT Management
  • Storage
  • Sponsored
  • Mobile
  • Small Business
  • Development
  • Database
  • Servers
  • Android
  • Apple
  • Innovation
  • Blogs
  • PC Hardware
  • Reviews
  • Search Engines
  • Virtualization
More
    Home Applications
    • Applications
    • Development
    • IT Management
    • Small Business

    How to Upgrade Software While Retaining Customizations

    Written by

    Bill Hyman
    Published January 29, 2010
    Share
    Facebook
    Twitter
    Linkedin

      eWEEK content and product recommendations are editorially independent. We may make money when you click on links to our partners. Learn More.

      For years, commercial software providers have delivered turnkey software applications to their customers that address a focused set of business requirements. These applications implement a robust set of business functions that capture and promote industry-wide best practices and provide an affordable alternative to custom software development.

      However, licensees of these software packages frequently need to address functional gaps between what the software provider delivers and what their unique business requirements demand. Closing these gaps requires the licensee to either customize the software solution or wait for future product enhancements to arrive. Most choose to customize the package to address fundamental product gaps and to implement new features that are competitive differentiators.

      While this implementation approach appears to be a cost-effective and timely way to implement complex software functionality, it does introduce something commonly referred to as the “upgrade dilemma”-the situation that arises when the cost of upgrading a solution to the newest release exceeds the cost of starting over from scratch.

      One of the important value propositions in acquiring commercial software is that the vendor provides functional enhancements to the application through subsequent releases. Upgrading a customized software application often requires tedious retrofitting of customizations to the newest release and comprehensive regression testing of the entire software package-even for minor upgrades. Many customers choose to defer the upgrade process due to these costs, but this exacerbates the problem because the deployed version of the software becomes more difficult to upgrade in the future.

      Metaprogramming to the Rescue

      Metaprogramming to the rescue

      The primary reason why upgrading customized software is so costly is because of the techniques employed to perform the customization. In most cases, software is customized by altering the underlying source code of a commercial package or by changing the parameters that define a model-driven software product. Both approaches involve changing aspects of the code or data structure provided by the vendor. Any changes made to software assets provided by a commercial vendor make upgrades more complex, riskier and more expensive.

      Metaprogramming describes the technique of using one software program to alter the behavior of another-either at compile time or at run-time. The benefits attained through metaprogramming are traditionally described in terms of higher productivity and reduced testing. However, metaprogramming techniques also provide the benefit of isolating customizations and ensuring a more cost-effective upgrade path.

      Adopting metaprogramming as a vendor-supported approach for software customization benefits both the vendor and customer. From the vendor’s perspective, releasing selective source code is always a concern, even when necessary to allow customers more control over their customizations. Metaprogramming techniques mitigate this need, yet still provide customers the flexibility to customize the software in a controlled manner.

      From the customer’s perspective, the approach gives them the ability to make wholesale modifications to the application, while retaining a straightforward and cost-effective upgrade path-crucial for ensuring the long-term TCO benefit of adopting vendor-supplied software.

      Bill Hyman is Senior Solutions Consultant at S1 Enterprise. Bill has over 20 years of experience in business management and technology. Before joining S1, Bill spent more than 10 years with Fidelity National Information Services. Before Fidelity, Bill was Managing Consultant and Practice Lead for Ballantyne Consulting Group, where he managed the company’s software development practice. Throughout his career, Bill has led implementation projects for many large financial institutions, including some of the country’s largest banks. Bill is a graduate of Clemson University, with a degree in Industrial Management with an emphasis in Computer Information Systems. He can be reached at bill.hyman@s1.com.

      Bill Hyman
      Bill Hyman
      Bill Hyman is Senior Solutions Consultant at S1 Enterprise. Bill has over 20 years of experience in business management and technology. Before joining S1, Bill spent more than 10 years with Fidelity National Information Services. Before Fidelity, Bill was Managing Consultant and Practice Lead for Ballantyne Consulting Group, where he managed the company's software development practice. Throughout his career, Bill has led implementation projects for many large financial institutions, including some of the country's largest banks. Bill is a graduate of Clemson University, with a degree in Industrial Management with an emphasis in Computer Information Systems. He can be reached at bill.hyman@s1.com.

      Get the Free Newsletter!

      Subscribe to Daily Tech Insider for top news, trends & analysis

      Get the Free Newsletter!

      Subscribe to Daily Tech Insider for top news, trends & analysis

      MOST POPULAR ARTICLES

      Artificial Intelligence

      9 Best AI 3D Generators You Need...

      Sam Rinko - June 25, 2024 0
      AI 3D Generators are powerful tools for many different industries. Discover the best AI 3D Generators, and learn which is best for your specific use case.
      Read more
      Cloud

      RingCentral Expands Its Collaboration Platform

      Zeus Kerravala - November 22, 2023 0
      RingCentral adds AI-enabled contact center and hybrid event products to its suite of collaboration services.
      Read more
      Artificial Intelligence

      8 Best AI Data Analytics Software &...

      Aminu Abdullahi - January 18, 2024 0
      Learn the top AI data analytics software to use. Compare AI data analytics solutions & features to make the best choice for your business.
      Read more
      Latest News

      Zeus Kerravala on Networking: Multicloud, 5G, and...

      James Maguire - December 16, 2022 0
      I spoke with Zeus Kerravala, industry analyst at ZK Research, about the rapid changes in enterprise networking, as tech advances and digital transformation prompt...
      Read more
      Video

      Datadog President Amit Agarwal on Trends in...

      James Maguire - November 11, 2022 0
      I spoke with Amit Agarwal, President of Datadog, about infrastructure observability, from current trends to key challenges to the future of this rapidly growing...
      Read more
      Logo

      eWeek has the latest technology news and analysis, buying guides, and product reviews for IT professionals and technology buyers. The site’s focus is on innovative solutions and covering in-depth technical content. eWeek stays on the cutting edge of technology news and IT trends through interviews and expert analysis. Gain insight from top innovators and thought leaders in the fields of IT, business, enterprise software, startups, and more.

      Facebook
      Linkedin
      RSS
      Twitter
      Youtube

      Advertisers

      Advertise with TechnologyAdvice on eWeek and our other IT-focused platforms.

      Advertise with Us

      Menu

      • About eWeek
      • Subscribe to our Newsletter
      • Latest News

      Our Brands

      • Privacy Policy
      • Terms
      • About
      • Contact
      • Advertise
      • Sitemap
      • California – Do Not Sell My Information

      Property of TechnologyAdvice.
      © 2024 TechnologyAdvice. All Rights Reserved

      Advertiser Disclosure: Some of the products that appear on this site are from companies from which TechnologyAdvice receives compensation. This compensation may impact how and where products appear on this site including, for example, the order in which they appear. TechnologyAdvice does not include all companies or all types of products available in the marketplace.

      ×