Сведения об управлении обновлениями конкретных полей
Сведения из этого раздела могут быть полезны при возникновении проблем с синхронизацией одного или нескольких полей между Visual Studio Team Foundation Server и Project Server. Способ обновления определенных полей обработчиком синхронизации зависит от типа данных соответствующих полей, атрибута сопоставления полей OnConflict и иерархии задач. Если одно или несколько отправляемых обновлений отклонено руководителем проекта или план проекта не опубликован, задачи не будут обновлены надлежащим образом. Если план не опубликован, вложенные дочерние рабочие элементы не смогут поступать в очередь утверждений.
Содержание раздела
Общие сведения о процессе обновления полей
Отклонение отправляемых обновлений
Обновление полей "Название" и "Название задачи"
Обновление дат начала и окончания
Обновление полей, содержащих значения часов
Обновление назначений задач
Суммарные задачи, иерархия задач и отправка рабочих элементов, вложенных на нескольких уровнях
Обновление полей, связанных со списками выбора и таблицами подстановки
Общие сведения о процессе обновления полей
Как показано на представленном ниже рисунке, при перемещении из Project Server данные проходят следующие этапы: Team Foundation Server, очередь состояния экземпляра PWA, план корпоративного проекта и снова Project Server. В следующей таблице приведены дополнительные примечания о процессе синхронизации и обновлении полей на каждом этапе этого процесса.
Важно!
Если рабочий элемент или задача запланированы для участия в синхронизации, их исключение из синхронизации возможно только путем удаления соответствующей задачи из плана проекта.Кроме того, невозможно изменить значение поля Опубликовать в командном проекте, связанное с задачей, и поле Отправить в Project Server в Team Foundation.Также нельзя изменить задачу на другой тип рабочего элемента после ее публикации или отправки из Team Foundation Server.
Этап |
Процесс синхронизации |
Обновление полей |
---|---|---|
Синхронизация Team Foundation. Обработчик синхронизации автоматически находит добавления и изменения, опубликованные в Project Server, и переносит эти обновления в Team Foundation Server. |
На этом этапе обновляются только поля, сопоставленные между Project Server и Team Foundation Server (сопоставление targetToTfs). Зеркальное поле всегда обновляется обработчиком синхронизации; эталонное поле обновляется, только если для атрибута OnConflict задано значение PSWin. Однако при первоначальной публикации задачи в Project Server задаются и эталонное, и зеркальное поле независимо от значения атрибута OnConflict. Зеркальные поля доступны только для чтения. По умолчанию значение атрибута OnConflict не задается для полей "Оставшиеся трудозатраты" и "Завершенная работа", благодаря чему соответствующие сопоставленные поля могут отличаться в Team Foundation Server и Project Server. Дополнительные сведения см. в подразделе Обновление полей, содержащих значения часов ниже. |
|
Синхронизация состояния. Когда участники команды добавляют или изменяют рабочие элементы, настроенные для отправки в Project Server, обработчик синхронизации автоматически отправляет обновления в очередь состояния. |
Отправляются только поля, сопоставленные для отправки в очередь состояния (сопоставление tfsToTarget). Изменения дат начала и окончания отправляются только при первоначальной отправке рабочего элемента. Поля Team Foundation сопоставляются с полями ресурсов Project, поэтому обновления применяются к полям ресурсов, таким как "Оставшиеся трудозатраты" и "Завершенная работа" для ресурсов. |
|
Синхронизация утверждений. После своего утверждения обновление отображается в плане корпоративного проекта. Уведомление об утверждении или отклонении записывается в журнале рабочего элемента Team Foundation. |
Правильная синхронизация значений полей pjTask* и pjResource* обеспечивается надстройкой Team Foundation для Project Professional. Поэтому для изменения планов корпоративного проекта, сопоставленных с командным проектом, необходимо использовать Project Professional с клиентского компьютера, на котором установлен пакет обновления 1 (SP1) для Visual Studio 2010. |
|
Синхронизация публикации. После публикации плана проекта руководителем проекта обновления записываются в Project Server. |
В Project Server обновляются изменения всех задач плана проекта. |
Дополнительные сведения см. в следующих разделах.
Общие сведения о процессе синхронизации для интеграции Team Foundation Server и Project Server
Настройка сопоставления полей между Project Server и Team Foundation Server
Справка по XML-элементу сопоставления полей для интеграции Team Foundation Server и Project Server
Ограничения на сопоставление полей Project Server при интеграции с Team Foundation Server
К началу
Отклонение отправляемых обновлений
Если руководитель проекта отклоняет обновление состояния требования или задачи, соответствующий рабочий элемент не синхронизируется до тех пор, пока отклонение не будет устранено. Причина отклонения отображается в поле Журнал, а в поле Состояние последнего утверждения на вкладке Project Server указывается значение Отклонено. Чтобы возобновить синхронизацию рабочего элемента, участник команды должен исправить состояние отклонения.
Для поиска рабочих элементов, имеющих состояние обновления "Отклонено", можно создать командный запрос. Дополнительные сведения см. в разделе How to: Resolve Conflicts of Mapped Work Items.
К началу
Обновление полей "Название" и "Название задачи"
Поле "Название" Team Foundation Server и поле "Название задачи" Project Server участвуют в двухстороннем процессе синхронизации. Другими словами, изменение на одном сервере всегда обновляется на другом сервере. Однако можно настроить другое поведение, изменив сопоставление для поля "Название" (System.Title).
К началу
Обновление дат начала и окончания
Поля расписания участвуют в одностороннем процессе синхронизации. Это означает, что поля "Дата начала" и "Дата окончания" в Team Foundation Server всегда отражают значения, назначенные в Project Server, тогда как изменения этих полей в Team Foundation Server никогда не отправляются в Project Server. Данное правило применяется принудительно, поскольку для определения дат начала и окончания задач в Project используется ядро планирования.
По умолчанию поля "Дата начала" и "Дата окончания" сопоставляются со значением атрибута OnConflict="PSWin", благодаря чему поля дат Team Foundation всегда отражают значения, назначенные в Project Server. Даже если изменить атрибут сопоставления для поддержки двух наборов книг, изменения полей дат Team Foundation отправляются в Project Server только при первоначальной отправке рабочего элемента. После завершения первого события синхронизации эти поля отражают обновления, внесенные в план проекта.
К началу
Обновление полей, содержащих значения часов
По умолчанию поля "Завершенная работа" и "Оставшиеся трудозатраты" участвуют в процессе синхронизации, поддерживающем два набора книг. Значения часов могут изменяться как в плане проекта, так и в Team Foundation. Однако эти изменения не обязательно перезаписывают информацию в каждом местоположении. Эта функция реализуется за счет неопределенного атрибута сопоставления полей OnConflict.
Как показано в описанном ниже сценарии, обновление полей зависит от лица, вносящего изменения, а также от того, приняты ли обновления в плане проекта.
Если участник команды обновляет значения часов и руководитель проекта утверждает отправку и публикует план, значения в эталонном и зеркальном полях будут совпадать после следующей синхронизации Team Foundation Server.
Если после обновления значений часов одним из участников команды руководитель проекта отклоняет отправку, обновления не принимаются в плане проекта. Значения в эталонном и зеркальном полях будут отличаться.
Если руководитель проекта изменяет значения часов в плане проекта, то в процессе следующей синхронизации Team Foundation Server обновляется только зеркальное поле.
Если значения часов задачи различаются в двух серверных продуктах, руководитель команды и руководитель проекта, по всей видимости, должны будут согласовать эти различия. Таким образом, каждый пользователь может независимо обновить свою работу, учитывая изменения, сделанные другим пользователем. Сведения о поиске полей, значения которых не совпадают с соответствующими значениями в зеркальных полях, см. в разделе Поиск рабочих элементов, объем работ которых в Team Foundation отличается от объема работ в Project Server.
Каждый раз, когда руководитель проекта устанавливает базовый план, в Team Foundation задается или обновляется значение поля Исходная оценка, как показано на следующем рисунке. По умолчанию это поле сопоставляется со значением атрибута OnConflict="PSWin".
Примечание
Поскольку в шаблоне процесса Scrum 1.0 не используются поля "Завершенная работа" и "Исходная оценка", эти поля необходимо добавить в типы рабочих элементов, которые должны участвовать в синхронизации данных.Например, можно добавить неиспользуемые поля в тип задачи рабочего элемента.Дополнительные сведения см. в разделе Добавление полей в типы рабочих элементов при сопоставлении командному проекту, созданному из шаблона процесса Scrum 1.0.
К началу
Обновление полей "Назначение" и "Название ресурса"
Поле "Кому назначено" в Team Foundation сопоставляется с полем "Название ресурса" в Project Server. По умолчанию это поле сопоставляется со значением атрибута OnConflict="PSWin". При назначении ресурсов задачам в плане корпоративного проекта необходимо учитывать следующие правила.
Обработчик синхронизации не синхронизирует сведения о ресурсах между двумя серверными продуктами. По умолчанию ресурсы Team Foundation Server синхронизируются из Active Directory, а ресурсы Project Server — нет. Можно вручную добавить ресурсы в Project Server или синхронизировать их с Active Directory (рекомендуется). Чтобы назначить ресурс задаче в плане корпоративного проекта, который участвует в синхронизации с Team Foundation Server, необходимо добавить этот ресурс в Project Server. Для добавления ресурса необходимо включить его в группу "Участники команды" в экземпляре PWA или предоставить ему разрешения "Открытие проекта" и "Просмотр сайта проекта" в Project. Следует также добавить этот ресурс в список ресурсов для плана корпоративного проекта, а затем опубликовать план проекта, чтобы предоставить обработчику синхронизации доступ к обновленному списку ресурсов. Дополнительные сведения см. в разделе Добавление членов Team Foundation в группу "Члены команды".
При управлении сведениями о проекте назначайте каждой задаче только один ресурс. Если для задачи требуется несколько ресурсов, разделите ее на подзадачи и назначьте один ресурс каждой подзадаче.
Если управление бизнес-требованиями осуществляется только через планирование сверху вниз, назначьте каждое пользовательское описание функциональности или требование руководителю разработки.
В процессе публикации плана проекта клиентская надстройка для Team Foundation проверяет, что каждой задаче назначен только один ресурс. Если задаче назначено несколько ресурсов, открывается диалоговое окно Разрешение проверки, в котором необходимо указать только один ресурс в качестве активного назначения. Дополнительные сведения см. в разделе Устранение ошибок проверки.
Назначение или переназначение ресурсов для задачи, связанной или сопоставленной с рабочим элементом, можно осуществлять, только если свертка этой задачи не выполнена. Свернутая задача связана с рабочим элементом, который содержит несвязанные дочерние рабочие элементы. Свернутые задачи, как правило, содержат несколько названий в поле "Название ресурса". Обработчик синхронизации передает свертку ресурсов и количество часов, выработанных каждым ресурсом. Дополнительные сведения см. в разделе Работа со сверткой ресурсов в корпоративных проектах, сопоставленных командным проектам.
К началу
Суммарные задачи, иерархия задач и отправка рабочих элементов, вложенных на нескольких уровнях
Разработчиками предусмотрено, что обработчик синхронизации не обновляет поля Project для связанных задач, которые содержат подзадачи в плане корпоративного проекта. Процесс синхронизации пропускает обновление этих задач, поскольку работа для них вычисляется планом проекта. Для данных задач также не обновляются изменения названия и прочих полей, не связанных с работой. Это известное ограничение интеграции двух данных серверных продуктов.
Если руководитель проекта публикует в Team Foundation Server подробный набор задач, который включает требования и связанные задачи, обработчик синхронизации блокирует иерархию задач. Участники команды не могут изменить иерархию задач в Team Foundation, но им доступно переназначение задач участникам команды в командном проекте. Как показано на следующем рисунке, задачи перечисляются под соответствующими требованиями и иерархические связи между родительскими и дочерними задачами заблокированы (). Заблокированные связи указывают, что соответствующие требования и дочерние задачи добавлены в командный проект из Project Server. Иерархию задач может изменить только руководитель проекта из плана проекта.
Когда команда отправляет несколько уровней рабочих элементов из Team Foundation в Project Server, перед отправкой каждого следующего уровня необходимо утвердить предыдущий уровень и опубликовать его в Project Server. Если, например, команда отправляет пакет новых рабочих элементов, который включает три уровня дочерних элементов, руководитель проекта должен четыре раза опубликовать план проекта для всех рабочих элементов, синхронизируемых с Project Server. По мере того как руководитель проекта утверждает каждый уровень рабочих элементов и публикует его в Project Server, иерархические связи блокируются в Team Foundation до тех пор, пока не будет заблокирована вся иерархия связей. Участники команды не могут изменять иерархию для этих сопоставленных рабочих элементов.
К началу
Обновление полей, связанных со списками выбора и таблицами подстановки
При сопоставлении полей Team Foundation Server, связанных со списком выбора, или полей Project Server, связанных с таблицей подстановки, необходимо предпринять ряд дополнительных действий для повышения удобства работы пользователей. Обработчик синхронизации не создает автоматически эквивалентные связанные списки и не синхронизирует их допустимые значения на другом сервере. Рекомендуется создавать таблицы подстановки в Project Server для сопоставления со списками выбора, определенными в Team Foundation, и создавать списки выбора в Team Foundation для сопоставления с таблицами подстановки, определенными в Project Server. При изменении списка выбора или таблицы подстановки приходится всегда вручную обновлять соответствующий список в другом серверном продукте.
К началу
См. также
Другие ресурсы
Поля Project Server, добавляемые для поддержки синхронизации данных
Управление проектами с помощью Project Server и Team Foundation Server
Настройка сопоставления полей между Project Server и Team Foundation Server