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 an on-premises TFS project, see On-premises XML process model. This article applies to Azure DevOps Services only.

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

Important

To customize an on-premises TFS project, 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.

Prerequisites

  • You must have an organization created in Azure DevOps Services. If you haven't created one yet, do that now.
  • Users granted Basic or Stakeholder access are automatically granted permission to create, edit, and delete processes, change the process of a project, and administer process permissions. To change these defaults, you can restrict access by setting permissions at the organization level and set permissions explicitly.
  • To create a project, you must be a member of the Project Collection Administrators group, or have the permission Create new team projects set to Create new projects.
  • You must have selected the Inheritance process model for the project collection where the project is created.
  • To create, edit, and manage processes, you must be a member of the Project Collection Administrators group or have these permissions explicity granted to you.
  • To create a project, you must be a member of the Project Collection Administrators group, or have the permission Create new team projects set to Create new projects.

Open Settings>Process

Note

Your web portal uses either the New navigation or Previous navigation user interface. Choose the New navigation tab if the New Navigation feature is enabled. You'll see a vertical sidebar along with other navigational features when New Navigation has been enabled for the signed-in user or the organization. Choose Previous navigation when you see a top-level, blue-bar—indicating that New navigation isn't enabled. For more information, see Web portal navigation.

Note

Choose the New navigation tab for guidance. Azure DevOps Server 2019 supports the New Navigation user interface. For more information, see Web portal navigation.

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

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

    Open Organization settings

  2. Then, expand Boards as needed and choose Process.

    Organization Settings, Process page

    Important

    If you don't see Process, then you're working from an on-premises TFS. The Process page isn't supported. You must use the features supported for the On-premises XML process model as described in Customize your work tracking experience.

Create an inherited process

You can create an inherited process from any one of the three system processes: 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 an inherited process. You can only change projects to use another process that inherits from the same system process. That is, you can change an Agile-based project to any process you created from the Agile system process as well as to the Agile process. Whereas, you can't change a Scrum-based project to an Agile-derived inherited process.

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. Open the … context menu for the process and choose the Change team projects… option.

    Here we open the menu for the Agile system process:

    Agile process context menu, Choose Change team projects to use Agile

    The system lists only those projects that are valid for the current process.

  2. Click the checkbox of those projects you want to change to use the Agile process.

    Here we choose to use the Agile process for the Fabrikam Fiber A and Fabrikam Fiber projects. Only those projects created from the Agile process or one that inherits from Agile will appear under the Available projects column.

    Change process to a system process dialog

  3. After you've confirmed that the projects you want to change are correct, click Ok.

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 will 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 will update 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.