End of Life (EOL) and End of Support (EOS) life cycles

  • Release version: Xanadu
  • Updated August 1, 2024
  • 4 minutes to read
  • Summarize
    Summarized using AI
    This content was generated using new OpenAI-powered functionality. Results are provided on an as is basis and are not guaranteed to be accurate or complete.

    Summary of End of Life (EOL) and End of Support (EOS) life cycles

    ServiceNow enables customers to manage software risks by creating and maintaining End of Life (EOL) and End of Support (EOS) life cycles for their software products. This is particularly important when vendor-provided life cycles are unavailable. Calculated life cycles based on industry averages or custom values can be used to assess and manage software lifecycle risks effectively. These life cycles help customers keep track of software support timelines, ensuring better software asset management.

    Show full answer Show less

    Key Features

    • Calculated Life Cycles: Customers with the samuser or samadmin roles can create EOL and EOS life cycles using industry averages from General Availability (GA) dates or override them with custom values for specific products or publishers.
    • Scheduled Jobs: The system runs jobs like SAM - Generate Software Lifecycle Report and SAM - Create Calculated Software Lifecycles to generate and update life cycle records automatically when no vendor-provided or custom records exist.
    • Configuration Requirements: Activation of the Software Asset Management Professional plugin is required. Enabling the generation of calculated life cycles depends on system properties and domain separation settings.
    • Data Storage: Custom and calculated life cycles are stored in the samcustomswproductlifecycle table, while Content Service-provided life cycles reside in samswproductlifecycle. Industry averages are maintained in sampswlifecycleaverages.
    • Priority and Updates: Custom life cycle records created by users take precedence over calculated or Content Service life cycles and will replace them during Content Service updates.
    • Approximate Life Cycle Dates: To improve coverage, approximate dates can be assigned to life cycles missing exact dates by enabling the com.snc.samp.uselifecycleapproximation system property. These approximations are linked to life cycle codes stored in the softwarelifecyclecode table.
    • Enhanced Reporting: Additional columns have been added to the Software Lifecycle Reports to provide detailed visibility into phases such as General Availability, End of Support, End of Extended Support, and End of Life dates.

    Practical Implications for Customers

    • By creating calculated or custom EOL and EOS life cycles, customers can proactively manage software risks and compliance, even when vendor data is missing.
    • Activation of appropriate plugins and system properties ensures that life cycles are generated and updated automatically to maintain accurate asset management records.
    • Custom life cycles override automated or Content Service data, giving customers full control over their software support timelines.
    • Approximate life cycle dates enhance reporting completeness, allowing for better decision making based on estimated support timelines.
    • Life cycle information is accessible on software model pages, supporting asset owners and managers in lifecycle planning and risk assessment.

    In the absence of vendor-provided life cycles, use calculated life cycles to assess and manage your risks by creating EOL and EOS life cycles for your software products. You can also use approximated dates to improve life cycle coverage.

    Calculated life cycles

    You can create EOL and EOS life cycles based on industry averages, measured in months, from the General Availability (GA) dates.
    Note:
    The life cycles can be created by the sam_user or the sam_admin role.

    You can override the global industry averages by specifying custom values pertaining to a product or a publisher. The life cycles are calculated based on the product or publisher values that you specified. For details on specifying custom values in the Software Asset Workspace, see Create averages for product life cycles in workspace, and for specifying values in the Software Asset Management classic application, see Create averages for product life cycles in Software Asset Management classic.

    When creating EOL or EOS life cycles, keep the following pre-requisites in mind:
    • The Software Asset Management Professional (com.sn_samp_master) plugin must be activated.
    • GA dates available for the product.
    • EOL and EOS life cycles not provided by the Content Service.
    • Product is shipped by the Content Service.

    Software life cycle process

    The scheduled job SAM - Generate Software Lifecycle Report collects data for life cycles for products whose GA dates are available and published by the Content Service. This scheduled job checks if all these GA records have an EOL or EOS life cycle record associated with them. If no EOL or EOS life cycle record is created by you or the Content Service, then calculated EOL or EOS life cycle records are created by another scheduled job, SAM - Create Calculated Software Lifecycles.

    For the scheduled job SAM - Create Calculated Software Lifecycles to generate life cycles, keep the following in mind:
    • If domain separation is disabled, enable the com.snc.samp.generate.calculated.lifecycles system property in the System Property [sys_properties] table.
    • If domain separation is enabled, use the Application Properties [sys_application_properties] table to enable the com.snc.samp.generate.calculated.lifecycles) property. In the Application Properties [sys_application_properties] table, click the com.snc.samp.generate.calculated.lifecycles property to open the Application Properties page. Scroll down to Application Property Values and click New to create a record. The Application Property and Domain fields are pre-filled with values. In the Value field, enter true and click Submit. You also need to enable reconciliation by specifying the value of the column Run asset process [run_asset_process] to be true in the Domain Asset Process Setting [alm_domain_asset_process_setting] table.
      Note:
      Reconciliation can be enabled either for the parent domain or for the child domain; it cannot be enabled for both the parent and the child domains.

    The calculated life cycles and the life cycles created by you are stored in the Custom Software Product Lifecycle [sam_custom_sw_product_lifecycle] table. Life cycles created by the Content Service are stored in the Software Product Lifecycle [sam_sw_product_lifecycle] table.

    The industry averages are stored in the Software Lifecycle Averages [samp_sw_lifecycle_averages] table. The life cycles created using these averages have their source column defined as calculated.
    Note:
    If you create an EOS or EOL record, then an EOL or EOS created by the scheduled job gets deleted in the next Content Service update, as priority is given to the custom records that you create. Similarly, if the scheduled job creates EOL and EOS records and then you create custom records, the records created by the scheduled job are deleted in the next Content Service update, as the custom records take precedence.
    Once created, the EOL and EOS life cycles are visible in the software model page.
    Note:
    If a sam_user or sam_admin deletes an EOL or EOS life cycle on a software model, the life cycles are not reinstated back to the software model.

    Approximate dates for life cycles and life cycle codes

    To improve life cycle report coverage, approximate life cycles dates are assigned to life cycles without a date.

    Select the system property (com.snc.samp.use_lifecycle_approximation), to include the approximate life cycle dates when generating the life cycle report. For details on this property, see Software Asset Management properties.

    The new table, Software Lifecycle Code [software_lifecycle_code], contains all the approximation codes along with a description of each code. For a detailed explanation of life cycle codes, see https://support.servicenow.com/kb?id=kb_article_view&sysparm_article=KB1642485.

    A new column, Lifecycle code, is added to the Software Product Lifecycle [sam_sw_product_lifecycle] table. The Lifecycle code column refers to the Software Lifecycle Code [software_lifecycle_code] table if approximate dates are assigned to a life cycle. The lifecycle code column is empty if the lifecycle has confirmed dates.

    For better visibility of all the life cycle phases, the following columns have been added to the Software Lifecycle Reports [sam_sw_product_lifecycle_report'] table
    • General Availability start date
    • General Availability
    • End of Support start date
    • End of Support lifecycle
    • End of Extended Support start date
    • End of Extended Support lifecycle
    • End of Life start date
    • End of Life lifecycle
    • Software model
    • Owners

    EOL, EOS, and End of Extended Support dates for all build versions are not shipped by the Content Service. The life cycle report inherits such dates from the generic version.