Create and manage inherited processes

Azure Boards | Azure DevOps Server 2019

You customize your project, Agile tools, and the work tracking system through an inherited process. The customizations you make are in effect for all projects that use the process. A process defines the building blocks of the work tracking system. Whenever you create a project, you select the process you want your project to use.

Important

To customize a project collection that uses the On-premises XML process model, available only for on-premises deployments, see On-premises XML process model. This article applies to Azure DevOps Services and Azure DevOps Server only.

To customize any project defined on a collection for TFS 2018 or earlier, see On-premises XML process model.

Important

You can only use the Inheritance process model for projects defined on a project collection configured to support the Inheritance process model. If your on-premises collection has been configured to use the On-premises XML process model, you can only use that process model to customize the work tracking experience. To learn more, see Customize work tracking, Choose the process model for your project collection.

To customize any project defined on a collection for TFS 2018 or earlier, see On-premises XML process model.

To learn more about what you can customize, see About process customization and inherited processes.

In this article, learn how to perform these tasks:

  • Open Settings>Process
  • Create an inherited process
  • Customize an inherited process
  • Copy an inherited process
  • Change projects to use an inherited process or a system process
  • Add a project based on a process
  • Enable or disable a process
  • Set a process as the default to use when adding projects

Prerequisites

Open Settings>Process

You create, manage, and make customizations to processes from Organization settings>Process.

  1. Choose the  Azure DevOps logo to open Projects. Then choose Organization settings.

    Open Organization settings

  2. Then, choose Process.

    Organization Settings, Process page

    Important

    If you don't see Process, then you're working from TFS-2018 or earlier version. The Process page isn't supported. You must use the features supported for the On-premises XML process model.

You create, manage, and make customizations to processes from Admin settings>Process.

  1. Choose the  Azure DevOps logo to open Projects. Then choose Admin settings.

    Open Organization settings

  2. Then, choose Process.

    Organization Settings, Process page

    Important

    If you don't see Process, then the collection you've created is set to work with the On-premises XML process model. You must use the features supported for the On-premises XML process model.

Create an inherited process

You can create an inherited process from any one of the four system processes:Basic, Agile, Scrum, or CMMI.

  1. From the Process page, open the context menu of the process you'll use to create an inherited process, and then choose Create inherited process.

    Here, we create an inherited process from the Agile system process.

    Context menu, Choose Create inherited process

    If you don't have access to these options, ask your project collection admin to grant you permissions.

  2. Enter a name for your process and optionally a description. (For naming restrictions, see About process customization and inherited processes, Process name restrictions.

    Create inherited process dialog

Once you've defined the inherited process, you can perform these actions:

Change the process used by a project

You can change the process a project uses from a system process or inherited process to another inherited process. There are two mechanisms to change a projects process. The first is to switch to a process where the project is derived from the same system process. Meaning, you can move a project between processes that use the same base process like Agile or Scrum.

The second method is to migrate your project between two completely different process types. For example, moving from Agile to Scrum, or Basic to Agile.

For the second method, we have provided detailed steps for three common scenerios of changing the process used by a project.

Note

You can change the process of a project as long as you don't have any undeleted work items of a custom work item type that isn't also defined in the target process.

Also, if you change a project to a system process or other inherited process that doesn't contain the same custom fields, data is still maintained. However, the custom fields that aren't represented in the current process won't appear on the work item form. You can still access the field data through a query or REST APIs. These fields are essentially locked from changes and appear as read-only values.

  1. Choose the process that contains the project you want to change. For example, say you want change a project from from Agile to Scrum, then choose the Agile process.

    Choose the Agile process

  2. Choose Projects, and then choose the  actions icon for the project you want to change, and select Change process.

    Choose Projects tab

Follow the steps in the wizard

Important

When you change a project to use an inherited process, you may find one or more Agile tools or work items appear in an invalid state. For example:

  • If you make a field required, work items with that field undefined show an error message. You'll need to resolve the errors to make additional changes and save the work item.
  • If you add or remove/hide workflow states of a WIT that appears on the Kanban board, you'll need to update the Kanban board column configurations for all teams defined in the project.

Create a project from a process

  1. Open the … context menu for the process you want to use and choose New project.

    Create a project from the selected process

  2. The Create new project page opens. For details, see Create a project.

Copy a process

It's a good practice to test the customizations you make before rolling out the changes to your organization. To do this, you create a copy of a process, make your updates, verify the updates appear as desired, and then move projects to the new process.

Tip

If you make a change to a process that is used by one or more projects, each project that uses the process updates immediately to the incremental process change. To bundle your process changes before you roll them out to all projects, following the steps outlined next.

  1. Create a copy of the process that you want to change. From the Process page, open the … context menu for the process you want to copy and choose Copy process.

    Make a copy of a selected inherited process

  2. Fill out the dialog with the name of the copied process and choose Copy process.

    Make a copy of a selected inherited process

  3. Make your changes to the copied process. Since no project is using this process, these changes do not impact any project.

  4. To verify your changes, create a test project based on the copied and updated process. If you have already created a test project, change the process of the test project using the Change project to use option from the context menu.

  5. Once you have fully tested your customizations, you're ready to roll out your changes to all projects. To do this, change the process of the projects which need the new changes. Select the Change project to use option from the context menu.

  6. Disable or delete the original process.

Enable/disable a process

To prevent projects being created from a process, you disable it. You might choose this option when you want to apply several customizations and don't want the process used until they are complete. Or, you might want to retire use of a process in favor of moving projects to a new process.

All system processes and newly created inherited processes are enabled by default.

  • To disable or enable a process, open the … context menu for the process and choose Disable process or Enable process.

Set the default process

Set an inherited process as the default to have it pre-selected for any additional projects you plan to create.

To set a process as the default, open the … context menu for the inherited process and choose Set as default process. Note that this option is not available with any of the three system processes.

Project Collection Administrators can add projects from the Projects page.

Try this next

Programmatically work with processes

You can get, create, update, and delete processes defined for an organization using the REST API, Processes.