Deploy Value Stream

id b356c451 0edd 43a8 b97c 0979879dbdbe
Figure 1. Deploy Value Stream Model

Overview

The value stream “Deploy”, as shown in Deploy Value Stream Model, is installing a Product Release into production. It can also imply the removal, disposal, or updating of an existing installed Product Release, so it is made available or unavailable to the customer. Many possible strategies for deploying a Product Release can be scenarios within the Deploy value stream; for example, deployment to a targeted audience, or deployment using a dark launch in which functionality is not directly released to consumers. If the user requirements and/or the characteristics of the Digital Product demand that the installed Product Release is improved, released, and deployed frequently, a drive to automate these value streams can emerge. To comply with regulatory requirements, organizations can require approvals and an audit trail of all the Changes made in production environments. The Deploy value stream ensures that all changes are tracked and related to a specific Product Release.

The Deploy value stream delivers the initial deployment, update, or removal of an Actual Product Instance, and will put the Service Contract into operation.

Key Stakeholder

The main stakeholder of the Deploy value stream is the Product Manager, who can authorize deployment of Actual Product Instances to the customer in the production environment.

Value

The outcome of the Deploy value stream is that new Product Releases can be installed safely without causing unexpected outages to the current Actual Product Instances in use.

Cross-Value Stream Dependencies

The Deploy value stream depends on:

  • Integrate:

    • Provides approved Product Releases that require deployment to the production environment

  • Consume:

    • Delivers a foundation to work on, as an Order can be used to fulfill the underlying setup of a needed production environment

Value streams that depend on the Deploy value stream are:

  • Evaluate:

    • Improvements start with drivers, that are expected to arise from all seven value streams

      All value streams will capture data to ensure that the quality of the Digital Product will meet the requirements.

  • Release:

    • Deploy a context in the form of an Actual Product Instance in which the Service Offer can be consumed and supported

  • Operate:

    • Actual Product Instances can be enabled, changed, disabled, or removed by the deployment of the Product Release

The Deploy value stream, as shown in Deploy Value Stream Details Model, is the more comprehensive view for included scenarios and detailed value stream stages for the value stream, and will be described in detail in the following sections.

id a90a0cc448b34fa8a8abc4f81536ae4d
Figure 2. Deploy Value Stream Details Model

In the following sections we document the scenarios and stages of the Deploy value stream:

Deploy Scenarios

The Deploy value stream is applicable for the following three scenarios:

Deploy a First Product Release for a New Digital Product Scenario

The goal of this scenario is to plan, prepare, and execute the deployment of the initial version of the Digital Product. Part of the planning is determining the priority, assessing the risk and dependencies, and scheduling the time slot. The information used for the risk assessment will be limited as this is the first release of the Digital Product. However, during development, information from earlier deployments in non-production environments should provide the necessary information to minimize risk. Since no customer is using the Digital Product, available time slots might include office hours. The available capacity for dependent Digital Products can be checked, and IT assets requested if needed. The deployment schedule must consider any dependencies on the Orders required to allocate the necessary Resources.

During execution of the deployment, the Service Contract will be activated; this requires instrumentation of the data for the metrics that will be collected to measure the Key Performance Indicator (KPI) targets. Additional training of specialists involved in the Operate value stream are performed, although it is advisable to train specialists before the Product Release is finalized. Knowledge Items are created based on the Defects and test results (e.g., metrics from performance tests).

Deploy a New Product Release Version for a Digital Product Scenario

The goal of this scenario is to plan, prepare, and update the existing Actual Product Instances. This ensures a stable Product Instance after the Deploy value stream is completed. The deployment strategy may depend on the Digital Product: some might require a maintenance window in which deployment can be executed, while for others a completely new version will be installed alongside an existing version. As every deployment should result in a stable Product Instance in production, there are some points to address:

  • To mitigate risk, the plan should include a “point of no return” in time, and a “rollback to the last known good configuration” plan

    These should be addressed and practiced during the development of the Product Release.

  • During the execution of the deployment, stakeholders should be informed; for example, the monitoring events can be suppressed to prevent disrupting the Operate value stream

Disable or Remove Existing Product Release Instances of a Digital Product Scenario

The goal of this scenario is to completely or partly disable or remove Actual Product Instances of a Digital Product. The deployment design (which is part of the Product Release) should provide information on the active Product Release that needs to be removed or undeployed, whereas the Operate value stream has the actual information on which related Actual Product Instances are to be disabled or removed.

Removing a Digital Product might require changes to the Product Design, and, in some cases, customer data may have to be retained for a while and made available for the customer to view. Some of the components of the Digital Product can be removed, but new components may also be installed or deployed.

Plan & Approve Deployment Stage

Description

The purpose of the value stream stage “Plan & Approve Deployment”` is to create a deployment plan for a Digital Product and, based on this plan, to sign it off with all relevant stakeholders.

The details of the plan and the extent of approval required depends on the complexity of the deployment.

Table 1. Plan & Approve Deployment Value Stream Stage

Entrance Criteria:

  • A Product Release in a fully-tested form

Exit Criteria:

  • An approved deployment plan

Value Item:

  • Ensuring that production deployment is not a surprise to any part of the organization, and that the resources needed for deployment are available

Activities:

  • Shall estimate the time for deployment and associated service downtime if any

  • Shall ensure resources are available for the full deployment, including the validate and observation stage

  • Shall plan a deployment time based on effort, resources, and corporate policies

  • May validate Knowledge Items exist for open, accepted Defects and work-arounds that are part of the Product Release

  • Shall obtain necessary approval for deployment as per the organization policy

    This typically includes but is not limited to approval from:

    • Operations teams for increased operations support

    • Support teams for the potential increase of support needed, as well as training

    • Security operations for sign-off on product security mandates

    • Legal teams for any potential license and copyright issues with product

Examples of Participating Stakeholders:

  • Operations Manager

  • Product Manager

  • Release & Deployment Manager

Fulfill Deployment Stage

Description

The purpose of the value stream stage “Fulfill Deployment” is to execute the Fulfillment Orchestration when the change window for deployment is open. The Fulfillment Orchestration is documented in the change records and can be coded as part of the Product Release to automate the Fulfillment Orchestration.

Table 2. Fulfill Deployment Value Stream Stage

Entrance Criteria:

  • Signed-off preconditions for deployment

  • Validated Knowledge Item for Product Release

Exit Criteria:

  • Actual Product Instance is deployed in production

Value Item:

  • Deployed Actual Product Instance

Activities:

  • Shall create the Desired Product Instance topology from the Product Design

  • Shall reserve the required Resources (e.g., hardware capacity, cloud resources, licenses, …​)

  • Shall create Order(s) to cater for the deployment of any dependent services required

  • May inform support specialists from the Monitoring bridge and the service desk

  • Shall verify the orchestration for the Desired Product Instance and associated Fulfillment Books, and validate if all preconditions are met

  • May suppress monitoring Events to prevent them from being escalated during the change window

  • Shall deploy artifacts from the Build Package as part of the Product Release on the Actual Product Instance(s), and update the topology

  • Shall deploy new or updates to Runbook(s)

  • Shall deploy new or updates to Service Monitor(s)

  • Shall deploy/activate the Knowledge Item(s) as part of the Product Release

  • May start the Actual Product Instance(s)

Examples of Participating Stakeholders:

  • Operations Manager

  • Product Manager

  • Release & Deployment Manager

  • Release & Deployment Manager

Validate Deployment Stage

Description

The purpose of the value stream stage “Validate Deployment” is to ensure that all aspects of the deployment activities were correctly executed. This includes checking that the Product Instance is indeed running and configured according to plan, and that the monitoring and documentation associated is configured and made available.

Table 3. Validate Deployment Value Stream Stage

Entrance Criteria:

  • Deployed new or updated Product Instance

Exit Criteria:

  • It is validated that the Actual Product Instance is running

Value Item:

  • Ensure that the deployment went OK

Activities:

  • Shall inspect/discover the deployed CIs registered in the Actual Product Instance Model

  • Shall validate that the discovered Actual Product Instance model is compatible with the Desired Product model

  • Shall validate that all the components of the Product Instance are running, and that the Service Monitor and Log systems are working for the Product Instance

  • Shall validate that the Service Level monitoring for the Product Instance is registered, and Monitoring is working

  • Shall validate that the known errors/Defects are registered in the known error system

Examples of Participating Stakeholders:

  • External Stakeholder

  • Operations Manager

  • Product Manager

  • Release & Deployment Manager

  • Support Specialist

Observe Deployment Stage

Description

The purpose of the value stream stage “Observe Deployment” is to ensure that the Actual Product Instance (= deployed product instance) is delivering expected functional and non-functional requirements.

Table 4. Observe Deployment Value Stream Stage

Entrance Criteria:

  • Running and validated Actual Product Instance

Exit Criteria:

  • New or updated Actual Product Instance can be handed over to the Operations team

Value Item:

  • Actual Product Instance is operational

Activities:

  • Shall observe Logs, Events, and service levels, and ensure they are stable and acceptable

  • May observe if consumption of the product is working through test consumption and the monitoring of help desk interactions

  • Shall consider if any issues require a quick patch forward or a rollback of deployment

Examples of Participating Stakeholders:

  • Business Stakeholder

  • Development Team

  • Product Manager