Поделиться через


Перемещение рабочих элементов из одной команды в другую команду

Сервисы Azure DevOps | Azure DevOps Server | Azure DevOps Server 2022

При добавлении команды или реорганизации существующих команд необходимо перенести рабочие элементы из одной команды в другую, обновив пути к области. Каждому рабочему элементу в Azure DevOps назначается путь области, который определяет принадлежность к команде и влияет на то, как рабочие элементы отображаются в бэклогах и на досках.

Рабочие элементы, классифицированные в категории "Требования", отображаются в бэклоге команды на основе их назначения в пути области команды. Аналогично, назначение других рабочих элементов в область команды поддерживает запросы и отчеты, основанные на принадлежности команде.

Подсказка

Вы можете использовать ИИ, чтобы помочь с этой задачей позже в этой статье или ознакомиться с включение помощи ИИ в Azure DevOps MCP Server, чтобы начать работу.

Почему перемещение рабочих элементов между командами

Распространенные сценарии перемещения рабочих элементов включают:

  • Реорганизация команды: когда ваша организация реструктурирует команды или перераспределяет обязанности
  • Балансировка рабочей нагрузки: перераспределение рабочих элементов для уравновешивания способностей между командами
  • Выравнивание навыка: перемещение элементов в команды с соответствующим опытом
  • Передача прав владения функциями: передача прав владения при изменении возможностей
  • Консолидация проектов: объединение работы из нескольких команд в одну команду

Предварительные требования

Категория Требования
Разрешения — Чтобы просматривать, следить и редактировать рабочие элементы: Просмотр рабочих элементов в этом узле, а также редактирование рабочих элементов в этом узле с разрешениями, установленными в разрешить. По умолчанию группа участников имеет эти разрешения. Дополнительные сведения см. в разделе "Настройка разрешений отслеживания работы".
— Чтобы добавить теги к рабочим элементам: на уровне проекта, создание определения тега, разрешение установлено на "Разрешить". По умолчанию группа участников имеет это разрешение.
Уровни доступа - член проекта.
— Для добавления новых тегов к рабочим элементам или просмотра и отслеживания запросов на вытягивание: по крайней мере базовый доступ.
— Чтобы просмотреть или следить за рабочими элементами: необходим доступ уровня "Заинтересованное лицо". Дополнительные сведения см. в разделе "О уровнях доступа".
— Все члены проекта, включая членов группы читателей , могут отправлять сообщения электронной почты, содержащие рабочие элементы.
разрешения пути области просмотр и редактирование рабочих элементов в узлах области путей. Дополнительные сведения см. в разделе "Изменение рабочих элементов в рамках области или пути итерации".
настроенные пути областей Целевая группа правильно настроила пути области. Если нет, настройте необходимые пути областей перед передачей рабочих элементов.
согласованная модель процессов Ваша команда использует совместимую модель процесса (Наследуемый, размещенный XML или локальный XML) для обеспечения простого перемещения рабочих элементов.
Резервное копирование рабочих элементов Перед выполнением массового перемещения рекомендуется создать резервную копию или экспортировать рабочие элементы, чтобы предотвратить потерю данных при возникновении ошибки.
Средства Чтобы использовать команды Azure CLI: Azure DevOps CLI.
Категория Требования
Разрешения — Чтобы просматривать, следить и редактировать рабочие элементы: Просмотр рабочих элементов в этом узле, а также редактирование рабочих элементов в этом узле с разрешениями, установленными в разрешить. По умолчанию группа участников имеет эти разрешения. Дополнительные сведения см. в разделе "Настройка разрешений отслеживания работы".
— Чтобы добавить теги к рабочим элементам: на уровне проекта, создание определения тега, разрешение установлено на "Разрешить". По умолчанию группа участников имеет это разрешение.
Уровни доступа - член проекта.
— Для добавления новых тегов к рабочим элементам или просмотра и отслеживания запросов на вытягивание: по крайней мере базовый доступ.
— Чтобы просмотреть или следить за рабочими элементами: необходим доступ уровня "Заинтересованное лицо". Дополнительные сведения см. в разделе "О уровнях доступа".
— Все члены проекта, включая членов группы читателей , могут отправлять сообщения электронной почты, содержащие рабочие элементы.
разрешения пути области Просмотр и Редактирование рабочих элементов в узлах области путь к области. Дополнительные сведения см. в разделе "Изменение рабочих элементов в рамках области или пути итерации".

Перемещение рабочих элементов с помощью веб-портала

Наиболее эффективным способом перемещения нескольких рабочих элементов между командами является массовое редактирование на веб-портале.

Шаг 1. Создание запроса для идентификации рабочих элементов

Создайте запрос, чтобы найти все рабочие элементы, которые вы хотите переместить в новую команду:

  1. Перейдите к Доски>Запросы>Новый запрос
  2. Определите критерии запроса для идентификации рабочих элементов, например:
    • Путь к области команды = Путь области текущей команды
    • Тип рабочего элемента = история пользователя (или другие соответствующие типы)
    • State = Активный (или другие соответствующие состояния)
  3. Запустите запрос, чтобы убедиться, что возвращает правильные рабочие элементы.
  4. Сохранение запроса для будущей ссылки

Шаг 2. Массовое изменение пути области

Чтобы переместить рабочие элементы в новую команду, выполните следующие действия.

  1. Создайте запрос всех рабочих элементов, которые необходимо переназначить.

  2. Выберите несколько элементов, принадлежащих каждой команде, и массово измените путь к области.

    Снимок экрана веб-портала: страница

  3. В диалоговом окне массового редактирования:

    • Выберите Area Path в раскрывающемся списке полей
    • Выберите путь области целевой команды
    • При необходимости обновите другие поля, такие как Назначено или Путь итерации.
  4. После массового изменения элементов сохраните их в пакетном режиме.

    Скриншот массового сохранения редактируемых рабочих элементов.

Шаг 3. Проверка перемещения

После сохранения убедитесь, что рабочие элементы теперь отображаются в невыполненной работе целевой группы:

  1. Перейдите в невыполненную работу целевой команды
  2. Убедитесь, что перемещенные рабочие элементы отображаются в правильном бэклоге.
  3. Проверьте, что поле "Область пути" отражает новое назначение группы

Перемещение рабочего элемента с помощью Azure CLI

Вы можете использовать az boards work-item update для перемещения одного рабочего элемента, обновив его область пути.

az boards work-item update --id
                           [--area]
                           [--assigned-to]
                           [--description]
                           [--discussion]
                           [--fields]
                           [--iteration]
                           [--open]
                           [--reason]
                           [--state]
                           [--title]

Параметры

  • идентификатор: обязательный. Идентификатор рабочего элемента для обновления.
  • область: необязательно. Абсолютный путь области. Пример: --area "\ProjectName\Area\AreaName".
  • Назначено: Необязательно. Имя пользователя, которому назначается рабочий элемент, например "Jamal".
  • description: Необязательный. Описание рабочего элемента.
  • обсуждение: необязательно. Комментарий, добавляемый к обсуждению в рабочем элементе.
  • поля: необязательно. Пары "field=value", разделенные пробелами, для указания naстраиваемых полей.
  • итерация: необязательно. Абсолютный путь итерации. Пример: "\ProjectName\Iteration\IterationName".
  • open: Необязательный. Откройте рабочий элемент в веб-браузере по умолчанию.
  • причина: необязательно. Причина состояния рабочего элемента.
  • состояние: необязательно. Состояние рабочего элемента, например "Активный".
  • title: Необязательный. Заголовок рабочего элемента.

Пример

Вы можете перемещать только один рабочий элемент за раз с помощью интерфейса командной строки Azure DevOps. В этом примере мы перемещаем рабочий элемент ID=148 в область пути Fabrikam Fiber\Production Planning.

az boards work-item update --id 148 --area "Fabrikam Fiber\Production Planning" --output yaml

Следующие выходные данные YAML содержат сведения о каждом из полей, определенных для рабочего элемента.

fields:
  Microsoft.VSTS.Common.Priority: 2
  Microsoft.VSTS.Common.StackRank: 1500000001.0
  Microsoft.VSTS.Common.StateChangeDate: '2021-11-23T22:26:28.27Z'
  Microsoft.VSTS.Common.ValueArea: Business
  System.AreaPath: Fabrikam Fiber\Production Planning
  System.AssignedTo:
    _links:
      avatar:
        href: https://fabrikamprime.visualstudio.com/_apis/GraphProfile/MemberAvatars/aad.NDEwY2FkMDQtOWQyOS03NDFlLTk2MmEtNGZlYmU2NGE1NTM4
    descriptor: aad.NDEwY2FkMDQtOWQyOS03NDFlLTk2MmEtNGZlYmU2NGE1NTM4
    displayName: Jamal Hartnett
    id: d291b0c4-a05c-4ea6-8df1-4b41d5f39eff
    imageUrl: https://fabrikamprime.visualstudio.com/_apis/GraphProfile/MemberAvatars/aad.NDEwY2FkMDQtOWQyOS03NDFlLTk2MmEtNGZlYmU2NGE1NTM4
    uniqueName: fabrikamfiber4@hotmail.com
    url: https://spsprodeus27.vssps.visualstudio.com/A5d5b8da6-3db7-4829-baf9-1e500c21cc12/_apis/Identities/d291b0c4-a05c-4ea6-8df1-4b41d5f39eff
  System.BoardColumn: Backlog
  System.ChangedBy:
   _links:
      avatar:
        href: https://fabrikamprime.visualstudio.com/_apis/GraphProfile/MemberAvatars/aad.NDEwY2FkMDQtOWQyOS03NDFlLTk2MmEtNGZlYmU2NGE1NTM4
    descriptor: aad.NDEwY2FkMDQtOWQyOS03NDFlLTk2MmEtNGZlYmU2NGE1NTM4
    displayName: Jamal Hartnett
    id: d291b0c4-a05c-4ea6-8df1-4b41d5f39eff
    imageUrl: https://fabrikamprime.visualstudio.com/_apis/GraphProfile/MemberAvatars/aad.NDEwY2FkMDQtOWQyOS03NDFlLTk2MmEtNGZlYmU2NGE1NTM4
    uniqueName: fabrikamfiber4@hotmail.com
    url: https://spsprodeus27.vssps.visualstudio.com/A5d5b8da6-3db7-4829-baf9-1e500c21cc12/_apis/Identities/d291b0c4-a05c-4ea6-8df1-4b41d5f39eff
  System.ChangedDate: '2022-05-19T22:58:52.93Z'
  System.CommentCount: 0
  System.CreatedBy:
   _links:
      avatar:
        href: https://fabrikamprime.visualstudio.com/_apis/GraphProfile/MemberAvatars/aad.NDEwY2FkMDQtOWQyOS03NDFlLTk2MmEtNGZlYmU2NGE1NTM4
    descriptor: aad.NDEwY2FkMDQtOWQyOS03NDFlLTk2MmEtNGZlYmU2NGE1NTM4
    displayName: Jamal Hartnett
    id: d291b0c4-a05c-4ea6-8df1-4b41d5f39eff
    imageUrl: https://fabrikamprime.visualstudio.com/_apis/GraphProfile/MemberAvatars/aad.NDEwY2FkMDQtOWQyOS03NDFlLTk2MmEtNGZlYmU2NGE1NTM4
    uniqueName: fabrikamfiber4@hotmail.com
    url: https://spsprodeus27.vssps.visualstudio.com/A5d5b8da6-3db7-4829-baf9-1e500c21cc12/_apis/Identities/d291b0c4-a05c-4ea6-8df1-4b41d5f39eff
  System.CreatedDate: '2021-11-23T22:26:28.27Z'
  System.Description: <div>This user story is for documentation purposes.&nbsp; </div>
  System.IterationPath: Fabrikam Fiber\Release 2\Sprint 1
  System.Reason: New
  System.State: New
  System.TeamProject: Fabrikam Fiber
  System.Title: Test the Request feedback functionality
  System.WorkItemType: User Story
  WEF_10182DA5BCCD4CE2A43629FFBD290EF2_Kanban.Column: Backlog
id: 148
relations:
- attributes:
    isLocked: false
    name: Child
  rel: System.LinkTypes.Hierarchy-Forward
  url: https://fabrikamprime.visualstudio.com/854a3f67-9962-43d1-a968-2e5f2eb66c99/_apis/wit/workItems/152
- attributes:
    isLocked: false
    name: Child
  rel: System.LinkTypes.Hierarchy-Forward
  url: https://fabrikamprime.visualstudio.com/854a3f67-9962-43d1-a968-2e5f2eb66c99/_apis/wit/workItems/153
- attributes:
    isLocked: false
    name: Child
  rel: System.LinkTypes.Hierarchy-Forward
  url: https://fabrikamprime.visualstudio.com/854a3f67-9962-43d1-a968-2e5f2eb66c99/_apis/wit/workItems/151
- attributes:
    isLocked: false
    name: Child
  rel: System.LinkTypes.Hierarchy-Forward
  url: https://fabrikamprime.visualstudio.com/854a3f67-9962-43d1-a968-2e5f2eb66c99/_apis/wit/workItems/149
rev: 5
url: https://fabrikamprime.visualstudio.com/854a3f67-9962-43d1-a968-2e5f2eb66c99/_apis/wit/workItems/148

Массовое перемещение с помощью Azure CLI

Для перемещения нескольких рабочих элементов с помощью Azure CLI необходимо выполнить скрипт нескольких отдельных обновлений. Ниже приведен пример шаблона скрипта PowerShell:

# Example: Move multiple work items to a new area path
$workItemIds = @(148, 149, 150, 151)
$newAreaPath = "Fabrikam Fiber\Production Planning"

foreach ($id in $workItemIds) {
    az boards work-item update --id $id --area $newAreaPath
    Write-Host "Moved work item $id to $newAreaPath"
}

Рекомендации по перемещению рабочих элементов

При перемещении рабочих элементов между командами следует учитывать следующие рекомендации.

Планирование перемещения

  • Обмен данными: уведомлять затронутых участников группы перед перемещением рабочих элементов
  • Время: перемещение элементов во время границ спринта для минимизации сбоев
  • Зависимости. Перед перемещением проверяйте зависимости между рабочими элементами
  • Емкость. Убедитесь, что целевая команда имеет емкость для дополнительной работы

Во время переноса

  • Пакетная обработка: Переносить связанные рабочие элементы вместе для поддержания контекста.
  • Сохранение истории: перемещение элементов сохраняет их историю и связи
  • Обновление назначений. Рассмотрите возможность переназначения рабочих элементов членам целевой группы
  • Просмотрите итерации: обновите пути итерации, если команды используют разные расписания спринта

После перемещения

  • Проверьте видимость: Убедитесь, что рабочие элементы отображаются в соответствующих журналах задач команды.
  • Обновите документацию: обновите любую документацию, которая ссылается на перемещаемые элементы.
  • Проверка отчетов: проверьте, что отчеты и панели мониторинга команды отражают изменения
  • Дальнейшие действия. Убедитесь, что члены команды знают о перенесенной работе

Устранение неполадок и проверка

После перемещения рабочих элементов из одной команды в другую выполните следующие действия, если вы не видите рабочие элементы:

Распространенные проблемы и решения

Проблема Solution
Рабочие элементы не отображаются в невыполненной работе Убедитесь, что областной путь соответствует настроенным областным путям команды
Ошибки разрешений во время перемещения Убедитесь, что у вас есть разрешения на изменение исходных и целевых путей области
Рабочие элементы, отсутствующие в спринте Обновите путь итерации, чтобы соответствовать расписанию спринта целевой команды
Фильтры, скрывающие рабочие элементы Просмотр фильтров невыполненной работы и параметров типа рабочего элемента

Шаги проверки

  • Обновить: обновите доску или выберите Показать больше элементов, если только что добавленные рабочие элементы не отображаются.
  • Проверить команду: Убедитесь, что выбрана правильная команда, чтобы элементы отображались в бэклоге.
  • Проверка пути области: Убедитесь, что перемещенные рабочие элементы назначены правильному пути области, соответствующему бэклогу команды. У каждой команды есть определенные пути к областям, определяющие, какие рабочие элементы отображаются в невыполненной работе. Эта проверка имеет решающее значение для обеспечения видимости невыполненной работы.
  • Проверьте путь итерации: Проверьте путь итерации спринта. Бэклог спринта отображает только рабочие элементы, назначенные итерационному пути выбранного спринта.
  • Проверьте типы и фильтры рабочих элементов: просмотрите фильтры невыполненной работы и убедитесь, что типы рабочих элементов имеют правильную категорию для отображения всех соответствующих элементов.

Дополнительные сведения см. в статье "Создание невыполненной работы".

Рекомендации по крупномасштабным перемещениям

При перемещении нескольких рабочих элементов или реорганизации нескольких команд:

Рекомендации по планированию

  • Оценка влияния: проанализировать, какие отчеты, панели мониторинга и запросы будут затронуты
  • Управление изменениями: разработка плана коммуникации для затронутых заинтересованных лиц
  • План отката: подготовить план для отмены внесённых изменений, если возникнут проблемы
  • Тестирование. Сначала протестируйте процесс перемещения с небольшим подмножеством рабочих элементов

Стратегии выполнения

  • Поэтапный подход: перемещение рабочих элементов в этапы, а не все одновременно
  • Выполнение вне часов: выполнение больших операций во время низких периодов активности
  • Мониторинг. Отслеживание влияния на производительность во время массовых операций
  • Проверка: проверьте каждый этап, прежде чем перейти к следующему

Альтернативные подходы

Перемещение команд вместо рабочих элементов

Иногда более эффективно перенастроить области путей команды, вместо перемещения отдельных рабочих элементов.

  • Когда большинство рабочих элементов команды должны перемещаться
  • Когда реорганизация путей областей имеет больше смысла с точки зрения организации.
  • Если объем рабочих элементов очень велик

Использование запросов для постепенных переходов

Создайте запросы для постепенного перехода рабочих элементов:

  • Фильтрация по дате создания для перемещения новых элементов сначала
  • Использование состояний рабочего элемента для перемещения завершенных элементов отдельно
  • Группировать по типу рабочего элемента для систематических переходов

Использование ИИ для перемещения рабочих элементов между командами

Если настроить Azure DevOps MCP Server, можно переместить рабочие элементы между командами с помощью естественного языка, а не вручную обновлять пути к областям.

Задача Пример запроса
Перемещение элементов в другую команду Move all active user stories in area path <Contoso\\TeamAlpha> to <Contoso\\TeamBeta>
Переназначение по типу рабочего элемента Change the area path for all bugs assigned to <Jamal> from <Contoso\\Frontend> to <Contoso\\Backend>
Поиск элементов для перемещения List all work items in area path <Contoso\\OldTeam> grouped by work item type
Проверка после перемещения Show all work items moved to area path <Contoso\\NewTeam> in the last 7 days
Предварительная оценка влияния изменения How many work items are currently under area path <Contoso\\TeamAlpha> and what are their states? I'm planning to move them to <Contoso\\TeamBeta>
Перемещение и переназначение Move all active tasks under <Contoso\\Platform> to <Contoso\\Infrastructure> and reassign them from <Raisa> to <Christie>
Поиск потерянных элементов после повторного редактирования List work items whose area path doesn't match any active team's configured area paths in project <Contoso>
Массовое перемещение по спринту Move all incomplete work items from Sprint 11 in area path <Contoso\\TeamAlpha> to area path <Contoso\\TeamBeta> and assign to Sprint 12
Аудит перемещений между командами Show all work items that changed area path in the last 30 days in project <Contoso>, grouped by source and destination team
Перемещение с дочерними элементами Move feature #4500 and all its child user stories and tasks from <Contoso\\Frontend> to <Contoso\\FullStack>

Замечание

Если вы используете Visual Studio Code, agent mode особенно полезно для массового перемещения между командами.