Digital Product Release policies

  • Release version: Washingtondc
  • Updated November 4, 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 Digital Product Release Policies

    The Digital Product Release Policy Content Pack automates phase gate verification and continuous evaluation of software artifacts. Customers can use or customize default policies to ensure compliance of configuration data and manage the lifecycle of PaCE policies. Default policies cannot be modified, but copies can be created for customization.

    Show full answer Show less

    Key Features

    • All Completed Stories Have Associated Commits: Ensures every completed story has corresponding commits; non-compliance occurs if any story lacks commits.
    • All Planned Stories Are Completed: Verifies that all planned stories are completed with a compliance check based on a 100% completion rate.
    • Code Coverage Exceeds Threshold: Confirms that code coverage meets a specified minimum threshold; non-compliance if below the threshold.
    • Integration Test Pass Exceeds Threshold: Validates that passed integration tests meet the minimum percentage threshold; non-compliance if below this threshold.
    • Load Test Pass Exceeds Threshold: Checks the percentage of passed load tests against a threshold; non-compliance if below this threshold.
    • No Critical Vulnerabilities Found: Ensures there are no critical vulnerabilities present in the release.
    • Regression Test Pass Exceeds Threshold: Assesses the percentage of passed regression tests; non-compliance occurs if below the threshold.
    • Smoke Test Pass Exceeds Threshold: Evaluates whether the percentage of passed smoke tests meets the threshold; non-compliance if below this threshold.
    • System Test Pass Exceeds Threshold: Ensures the percentage of passed system tests meets the specified threshold; non-compliance if below the threshold.
    • User Acceptance Test Pass Exceeds Threshold: Checks that user acceptance test pass rates meet the threshold; non-compliance if below the required percentage.

    Key Outcomes

    By implementing these policies, ServiceNow customers can maintain high standards for software quality and compliance. Each policy provides a clear metric for evaluation, ensuring that releases meet organizational standards and reducing the risk of deploying non-compliant software.

    By default, the Digital Product Release Policy Content Pack contains a set of policies to automate phase gate verification and continuous evaluation of software artifacts.

    You can use or customize these default DPR policies to validate that your configuration data content is conformable, or administrate the full life cycle of PaCE policies. For more information, see Policy as Code Engine (PaCE).
    Note:
    You can’t modify default policies. However, you can create a copy of the policy and customize it.

    All Completed Stories Have Associated Commits (all_completed_stories_have_associated_commits)

    Checks whether all the completed stories of a release have associated commits.

    Results into a non-compliant status when a completed story of a release has no associated commits.

    All Planned Stories Are Completed (all_planned_stories_are_completed)

    Checks whether all the planned stories of a release are completed. This policy also checks if the product version is associated with plan version. If it is associated with plan version, it checks all stories associated with plan version in addition to the stories associated with epics in features or enhancements.

    Results into a non-compliant status when the completion percentage of stories planned for a release isn’t 100%. The completion percentage of planned stories is calculated as (Total completed stories/Total planned stories) * 100.

    Code Coverage Exceeds Threshold (code_coverage_threshold)

    Checks whether the percentage of code coverage exceeds the threshold value.

    Results into a non-compliant status when the percentage of code coverage is less than the specified threshold value. The percentage of code coverage for a release is the average code coverage calculated for all artifact versions included in the release.
    Note:
    The artifact versions with no code coverage data are excluded from the average code coverage calculation.
    Input arguments
    minCodeCoverageThreshold
    • The minimum accepted value for the code coverage for a release.
    • Default value: 100
    • Type: Integer
    • Usage: Mandatory

    Integration Test Pass Exceeds Threshold (integration_test_pass_threshold)

    Checks whether the percentage of passed integration tests isn’t less than the threshold value.

    Results into a non-compliant status when the percentage of passed integration tests is less than the specified threshold value. The percentage of passed integration tests is calculated as (Total passed integration tests for all artifact versions/Total integration tests for all artifact versions) * 100.

    Input arguments
    minTestPassThreshold
    • The minimum accepted value for the percentage of passed integration tests.
    • Default value: 100
    • Type: Integer
    • Usage: Mandatory

    Load Test Pass Exceeds Threshold (load_test_pass_threshold)

    Checks whether the percentage of passed load tests isn’t less than the threshold value.

    Results into a non-compliant status when the percentage of passed load tests is less than the specified threshold value. The percentage of passed load tests is calculated as (Total passed load tests for all artifact versions/Total load tests for all artifact versions) * 100.

    Input arguments
    minTestPassThreshold
    • The minimum accepted value for the percentage of passed load tests.
    • Default value: 100
    • Type: Integer
    • Usage: Mandatory

    No Critical Vulnerabilities Found (no_critical_vulnerabilities)

    Checks whether there are no critical vulnerabilities found in a release.

    Results into a non-compliant status when the total number of vulnerabilities categorized as blocker, critical, high, or major is greater than zero.

    Regression Test Pass Exceeds Threshold (regression_test_pass_threshold)

    Checks whether the percentage of passed regression tests isn’t less than the threshold value.

    Results into a non-compliant status when the percentage of passed regression tests is less than the specified threshold value. The percentage of passed regression tests is calculated as (Total passed regression tests for all artifact versions/Total regression tests for all artifact versions) * 100.

    Input arguments
    minTestPassThreshold
    • The minimum accepted value for the percentage of passed regression tests.
    • Default value: 100
    • Type: Integer
    • Usage: Mandatory

    Smoke Test Pass Exceeds Threshold (smoke_test_pass_threshold)

    Checks whether the percentage of passed smoke tests isn’t less than the threshold value.

    Results into a non-compliant status when the percentage of passed smoke tests is less than the specified threshold value. The percentage of passed smoke tests is calculated as (Total passed smoke tests for all artifact versions/Total smoke tests for all artifact versions) * 100.

    Input arguments
    minTestPassThreshold
    • The minimum accepted value for the percentage of passed smoke tests.
    • Default value: 100
    • Type: Integer
    • Usage: Mandatory

    System Test Pass Exceeds Threshold (system_test_pass_threshold)

    Checks whether the percentage of passed system tests isn’t less than the threshold value.

    Results into a non-compliant status when the percentage of passed system tests is less than the specified threshold value. The percentage of passed system tests is calculated as (Total passed system tests for all artifact versions/Total system tests for all artifact versions) * 100.

    Input arguments
    minTestPassThreshold
    • The minimum accepted value for the percentage of passed system tests.
    • Default value: 100
    • Type: Integer
    • Usage: Mandatory

    User Acceptance Test Pass Exceeds Threshold (user_acceptance_test_pass_threshold)

    Checks whether the percentage of passed user acceptance tests isn’t lower than the threshold value.

    Results into a non-compliant status when the percentage of passed user acceptance tests is less than the specified threshold value. The percentage of passed user acceptance tests is calculated as (Total passed user acceptance tests for all artifact versions/Total user acceptance tests for all artifact versions) * 100.

    Input arguments
    minTestPassThreshold
    • The minimum accepted value for the percentage of passed user acceptance tests.
    • Default value: 100
    • Type: Integer
    • Usage: Mandatory