Integrate Value Stream
Overview
The value stream “Integrate”, as shown in Integrate Value Stream Model, creates a new Product Release. It covers the planning, design, development (or configuration), and testing of a new Product Release (in non-production environments), and makes the Product Release available for deployment and release into production. A new Product Release can also be related to an emergency fix needed to resolve a production issue (such as resolving vulnerabilities and critical bugs).
The Integrate value stream covers the creation and modification of all types of Digital Products such as custom-build software, configuration of SaaS applications, Commercial Off-The-Shelf (COTS) software packages, PaaS platforms, Infrastructure as a Service (IaaS) products, etc. This value stream is not limited to application development, but also subject to the development and maintenance of infrastructure products (and platforms).
Work is initiated and managed in the Product Backlog (and related team backlogs), which can receive demand signals from consumer or business stakeholders (e.g., new features or business requirements), or from other functional components such as Portfolio Backlog Management, Policy Management, and Problem Management. This may take the form of an approved Portfolio Backlog Item, or may be a smaller-grained signal such as an individual feature, user story, Defect, or Problem.
The Integrate value stream continuously pulls work from the Product Backlog based upon various triggers and inputs; such as:
-
New features and requirements raised by a consumer (or a business stakeholder) and/or other product teams
-
New or modified non-functional requirements such as those related to Service-Level Objectives (SLOs), security, risk, and compliance
-
New portfolio epics from the portfolio backlog which need to be refined into Product Backlog Items
-
New versions, updates, or fixes provided by the vendor (e.g., software updates and patches) and/or other technology refresh activities
-
Problems detected in operational environments (e.g., functional issues, performance issues, etc.)
-
Emergency changes to resolve major incidents and/or mitigate major risks (e.g., security issues and vulnerabilities)
The Integrate value stream delivers the Product Release (for a new or modified product) which is packaged for immediate or future deployment through the Deploy value stream.
Note that although the stage is shown as a linear process, the actual work in the value stream consists of multiple iterations, continuous cycles, and flow of work with feedback loops (e.g., Continuous Integration/Continuous Delivery (CI/CD) and continuous testing, etc.).
Key Stakeholder(s)
The typical key stakeholders involved in the Integrate value stream are the Product Manager and associated Development Teams (also referred to as Product Teams, or DevOps Teams if Development and Operations are combined into one team), responsible for the planning, design, creation, and testing of a Product Release.
Other key stakeholders involved are business stakeholders and customer representatives involved in defining business needs (voice of the customer), validating (and testing) the product, and those who ultimately benefit from the value created by using the product.
Value
The outcome of the Integrate value stream is a new Product Release, accepted and ready for deployment and release into production. This is a release for a new or existing Digital Product which provides additional value (and/or reduced risk) once made available and used by consumers in production, as a result of:
-
New features (e.g., providing additional value by fulfilling new consumer needs)
-
Non-functional improvements (e.g., improving performance, improve user experience, compliance, security, availability, improved resilience, etc.)
-
Reducing technology debt (and reducing risks), such as those related to technology upgrades/patches and code quality improvements
-
Resolving issues/problems (e.g., improve reliability, reduce Incidents in production, improve performance, etc.)
-
Reduce costs (e.g., improve utilization of resources, etc.)
Cross-Value Stream Dependencies
The Integrate value stream depends on:
-
Explore:
-
Delivers Portfolio Backlog Items and an approved Scope Agreement to start creating or updating the Product Backlog
-
If the agreed Scope Agreement cannot be met, the Explore value stream is responsible for changing the Scope Agreement within the boundaries of the Architecture Roadmap and Product Portfolio; for example, to allocate more time or a higher budget
-
Delivers an updated product vision and high-level roadmap
-
-
Consume:
-
Deliver the environments to work on, as a request can be used to fulfill the provisioning of a needed development, test, and staging environment
-
-
Deploy:
-
Deployment of the Product Release into a production environment
-
-
Operate:
-
Delivers an inflow for Defects, as Problems related to Actual Product Instances may require a fix (or patch) to be created through the Integrate value stream
-
Value streams that depend on the Integrate value stream are:
-
Evaluate:
-
The Evaluate value stream uses all lifecycle information from all value streams to identify potential improvements in the product (and/or way of working)
-
-
Explore:
-
Provides development progress and team capacity
The status of the Product Backlog Item is fed back so it can be taken into account when planning the Portfolio Backlog Items for sourcing.
-
If an agreed Scope Agreement cannot be met, the Explore value stream is responsible for changing the Scope Agreement; for example, by changing the covered Portfolio Backlog Items (to include more or go for less), changing the time or budget, or changing the sourcing party
-
-
Deploy:
-
Provides the approved Product Release, which in turn triggers the deployment scheduling of the Product Release to the production environment
-
-
Release:
-
Due to a new Product Release, one or more Service Offers need to be modified (or created) to make the new Product Release available for consumption
-
-
Operate:
-
The Operate value stream depends upon the development of operations features, such as monitoring (and observability), logging, and automated remediation Runbooks
The Integrate value stream needs to develop the required functionality to manage the product in an operational environment.
-
The Integrate value stream, as shown in Integrate 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.
In the following sections we document the scenarios and stages of the Integrate value stream:
-
Scenario: Develop a New or Initial Product Release
-
Scenario: Configure an Off-the-Shelf or SaaS Product for Use
-
Scenario: Deliver an Emergency Change or Hotfix
-
Scenario: Update of a Vendor Product
-
Stage: Plan Product Release
-
Stage: Design & Develop
-
Stage: Build, Integrate, & Test
-
Stage: Accept & Publish Release
Integrate Scenarios
The Integrate value stream is applicable for the following four scenarios:
Develop a New or Initial Product Release Scenario
In this scenario a Product Release is developed which may be software and/or infrastructure and is developed in-house or (partly) sourced with an external partner. The approach may either be traditionally waterfall or iterative, which would imply that iterations have taken place inside the Design & Develop value stream stage.
Configure an Off-the-Shelf or SaaS Product for Use Scenario
Off-the-Shelf applications and SaaS solutions need to be integrated in a business Value Stream and supporting infrastructure environments, which might include the configuration of the application software. The Scope Agreement contains the mandate to contract the software or SaaS solution with the vendor and configure the product to fit in the specific business Value Stream and supporting infrastructure.
Deliver an Emergency Change or Hotfix Scenario
The Integrate value stream can be triggered by the Operate value stream in case a Defect needs to be created. The Build Package of the Digital Product in Operations is changed to fix the Defect, after which a new Product Release is delivered. It will be investigated whether this fix also needs to be applied (backported) to the newest Product Release under development (to prevent regression issues).
Update of a Vendor Product Scenario
A Digital Product can be based upon multiple third-party services and software components (packaged-based software, SaaS, PaaS, etc.). The Integrate value stream should therefore also cover the technology refresh of new releases delivered by the software vendor and/or the SaaS service provider. It is important to include these technology lifecycle events into the Product Backlog so they can be planned and executed accordingly.
A new release of the vendor product could, for example, include new features, patches/fixes for problems, or vulnerabilities and performance improvements. Changes from the vendor need to be integrated into the product build and release of the Digital Product, and tested to ensure the updates are successfully applied.
Plan Product Release Stage
Description
The purpose of the value stream stage “Plan Product Release” is to plan all development and testing activities required for creating the Product Release. Multiple teams may be needed, and different development methodologies may be used. This value stream stage is revisited as it oversees the other value stream stages in this value stream to cater for changes in the planning and iterations of the Design & Develop value stream stage.
Entrance Criteria:
|
Exit Criteria:
|
Value Item:
|
|
Activities:
|
|
Examples of Participating Stakeholders:
|
Participating Data Objects (Component): |
Design & Develop Stage
Description
The purpose of the value stream stage “Design & Develop” is to analyze the requirements, create (or update) the design artifacts, and develop the changes (and associated Test Cases) for the Product Release. This includes the coding and configuration of software and related infrastructure (e.g., infrastructure as code).
This value stream stage covers the development of the changes that are part of the new release of the Digital Product based on the requirements, architecture boundaries, and policies set by the organization. In addition, requests might be needed to cater for setting up a development environment for the developers.
Entrance Criteria:
|
Exit Criteria:
|
Value Item:
|
|
Activities:
|
|
Examples of Participating Stakeholders:
|
Participating Data Objects (Component): |
Build, Integrate, & Test Stage
Description
The purpose of the value stream stage “Build, Integrate, & Test” is to perform the build, integrate, and test activities to ensure the release package is ready for deployment into production.
Entrance Criteria:
|
Exit Criteria:
|
Value Item:
|
|
Activities:
|
|
Examples of Participating Stakeholders:
|
Participating Data Objects (Component): |
Accept & Publish Release Stage
Description
The purpose of the value stream stage “Accept and Publish Release” is to accept the Product Release as a candidate for deployment into production. The required change authority, such as the Product Manager, accepts the Product Release for deployment and/or release into production. The Product Manager accepts the Product Release after engaging with relevant stakeholders, which includes reviewing test results to accept or reject the list of remaining Defects, and reviewing the collateral produced. In a DevOps model, Operations has been participating all along but at this point an approval is given for the Product Release to be deployed into production.
This value stream stage ensures only validated and approved release packages can be deployed into production. The release package is tagged and secured to prevent any modification at a later stage (e.g., to prevent unauthorized changes being made).
Entrance Criteria:
|
Exit Criteria:
|
Value Item:
|
|
Activities:
|
|
Examples of Participating Stakeholders:
|
Participating Data Objects (Component): |