Value stream management

A value stream represents the objects and activities that you employ to deliver customer value, from initial concept to final delivered project.

The value stream provides a strategic window into your project workflow and enables you to drill-down to individual objects. The objects, such as builds, pull requests, issues, and tests, come from tools that you integrate into the value stream. Individual objects are represented graphically by small circles called dots. Dots frequently provide information from logically related tools, such as issues linked to source control commits. You filter the value stream by building queries with the DevOps query language.

About value streams

Value streams are displayed on the Value stream page in individual cards that provide status information and links to the value streams. You can change the page to a table view and customize the rows with metric data taken from the value streams.

When you create a value stream, a minimal value stream is configured and displayed on the Value stream view. The highest level of a value stream is a phase. Phases represent important, organizational parts of the value stream, such as "Planning," or "Development." On the Value stream view, processing is done in left-right order. For example, your first phase might be for planning and contain items created in an issue tracking system. Your next phase, used for development, can track source control activity related to the issues, and any builds triggered by the activity. Your final phase, used for deployment, might track the related build artifacts as they move through your testing environments toward production.

Phases contain stages that define process flow within a phase. A development phase that integrates a source control tool might contain an In Progress stage followed by In Review and Merged stages. When you customize a value stream, you define the phases and stages and their order.

Stages are containers for dots. Dots represent units of work from HCL Accelerate or tools that are integrated into the value stream. Git commits or Jira issues, to take just two, are represented by individual dots. Work items, such as commits and builds, can be combined into individual dots. A dot's position in the value stream conveys important information about the object. Dots in a stage named Merged might represent items merged into Git repositories. An item's shape and color convey information about the item's type and status. A dot outlined in red, for example, might mean the item is past schedule. When dots change state, they move to new stages in near-real time. Finally, when you click on a dot, the displayed card provides information about the work items, including their history, and provides links to associated tools.

Customizing the value stream

When you create a value stream, default stages and phases are configured, but until you integrate the tools that you use with HCL Accelerate , the stages will not contain items. You add your tools to a value stream by defining plugin integrations for them. After you integrate a tool, its items, such as pull requests, can be displayed in the appropriate stages. HCL Accelerate provides plugins for an ever-growing number of 3rd-party tools and services that you can integrate into your value stream.

The JSON file associated with the value stream defines the phases and stages. The value stream default phases are Planning, Development, and Deployment. You can modify the JSON file to display the phases and stages that you normally use in your work.

The following figure shows a typical user-configured value stream. Notice that items are filtered by Type. For information about how to manage data displayed in the Value stream view, see Navigating value streams.

Figure 1. User-configured value stream
User-configured value stream

Integrating tools into the value stream

You use the same JSON file to create integrations that you use to customize the value stream. After you define an integration, items associated with the integrated tool can appear in the stages on the Value stream view, and the integration is listed on the Integrations page in the web UI.

You can associate integrated tools by defining link rules for them. If you link an issue tracking tool with a source control management tool, for example, you can access information about the linked tools from affected dots.

For information about the value stream integrations, see About value stream integrations.

Querying the value stream

To see objects from your integrated tools, add queries to the value stream. You use the Value Stream Query language to filter the information displayed on the value stream. You build simple queries by combining searchable items with operators and values. A searchable item is a query-able object, such as issue.status. Queries can be scoped to the entire value stream or a stage. Each stage can have a query. You can create queries on the Value stream view, or define them in the value stream JSON file.

For information about the DevOps query language, see DevOps query language (DQL).

Swim lanes

Swim lanes provide a user-based perspective of your value stream data. When you use the swim lanes feature, value stream data is organized into a table where the columns represent value stream stages, and the rows represent users.

For information about swim lanes, see Managing swim lanes.

About pipelines

When you create a value stream, a corresponding pipeline is configured. A pipeline is a sequence of stages that retrieve input and run applications and jobs. Pipelines accept input from source control management (SCM) repositories or other external applications, such as HCL Launch. You add applications to the pipeline from external tools that you integrate with HCL Accelerate, such as Jenkins, and UrbanCode Build. You can run applications, releases, and deployments with the Pipeline view.

For information about pipelines, see Pipelines.