Общие сведения о процессе синхронизации для интеграции Team Foundation Server и Project Server
Можно управлять интеграция Visual Studio Team Foundation Server 2012 проекта и сервера Microsoft более эффективно, если будете понимать, как механизм синхронизации управляет поток данных между 2 продуктов сервера.Обработчик синхронизации поддерживает независимые рабочие процессы руководителей проектов, работающих в Project Professional, а также руководителей и членов команд, работающих в Team Foundation.Конечные результаты и задачи могут развиваться независимо в каждой области.
Содержание раздела
Три типа синхронизации
Данные, подлежащие синхронизации
Проверка данных, выполняемая во время обновлений и при отправке
Зеркальные поля и "два набор книг"
Разрешения, требуемые для поддержки синхронизации
Уведомление об ошибке, ведение журнала событий и возможность трассировки
Три типа синхронизации
Обработчик синхронизации выполняет три типа синхронизации.Этот процесс выполняет сбор и обновление связанных с задачами и ресурсами данных в Team Foundation Server и Project Server, при этом соблюдаются права владения данными руководителем проекта в плане проекта.Руководители проектов делают изменения с помощью проекта Microsoft одобряют профессиональным и обновления через доступ через интернет проекта или Project App Web (PWA).Члены команды разработки отправляют обновления в Project Server с помощью клиента Team Foundation.
Как показано на следующем рисунке, синхронизация данных выполняется за семь основных шагов.
Процесс синхронизации для интеграции Team Foundation Server и Project Server
Обработчик синхронизации состоит из одной службы заданий, которая выполняется по расписанию, а не после обновления каждого рабочего элемента.Задание синхронизации выполняет следующие три процесса в указанном порядке.
Синхронизация публикации |
Руководитель проекта определяет либо обновляет задачи или конечные результаты, а также присваивает полю Публикация в командном проекте значение Да для каждой задачи, которую требуется синхронизировать. Руководитель проекта публикует план корпоративного проекта с помощью Microsoft Project Professional.Изменения автоматически сохраняются в базе данных для Project Server. Обработчик синхронизации извлекает данные из Project Server и определяет данные для обновления на основе данных, настроенных для синхронизации.Обновляются только объекты, задачи и рабочие элементы, настроенные для синхронизации. Обработчик синхронизации создает или обновляет рабочие элементы в Team Foundation, а также определяет ссылку, которая связывает задачу в Project с рабочим элементом в Team Foundation. |
Синхронизация состояния |
Руководитель или член команды изменяет рабочий элемент в Team Foundation, связанный с задачей в корпоративном проекте, или создает рабочий элемент и задает для поля Отправить в Project Server значение Да.Обработчик синхронизации запрашивает изменения, внесенные в сопоставленные командные проекты, и отправляет запросы в очередь или очереди утверждений в Project Web Access либо Project Web App (PWA). |
Синхронизация утверждений |
Каждый руководитель проекта просматривает очередь утверждений и утверждает либо отклоняет каждый запрос обновления состояния. Чтобы утвержденные обновления появились в Project Server, руководитель проекта должен опубликовать план проекта.
Важно
Если обработчик синхронизации отправляет в Project Server несколько уровней рабочих элементов, перед отправкой каждого следующего уровня необходимо утвердить предыдущий уровень и опубликовать его в Project Server.Например, можно отправить пакет новых рабочих элементов, содержащий три уровня дочерних элементов.В этом случае руководитель проекта должен четыре раза опубликовать план проекта для всех рабочих элементов, синхронизируемых с Project Server.
Обработчик событий для утверждений в Project Server передает решения об утверждении в обработчик синхронизации, который затем обновляет рабочие элементы в Team Foundation Server на основе состояния утверждения. |
К началу
Управление утверждениями и отклонениями
Все изменения в рабочих элементах, связанных с Project Server, должны отправляться на утверждение руководителю проекта, который работает с планом корпоративного проекта, сопоставленным с командным проектом.Можно задать автоматическое утверждение, чтобы все обновления из Team Foundation утверждались автоматически.Дополнительные сведения см. на следующей странице веб-сайта Майкрософт: Approve or reject task updates.
Утвержденные рабочие элементы обычно свертываются назад в план корпоративного проекта.Отклоненные рабочие элементы требуется пересмотреть, исправить и отправить повторно.
При отклонении обновлений в поле "Журнал" для рабочего элемента появляется сообщение.В сообщении указывается отклоненное значение и имя руководителя, отклонившего его.В случае командных проектов, сопоставляемых с планами проектов, размещенными в Project Server 2010, в сообщении также содержатся комментарии руководителя проекта относительно причины отклонения элемента.Члены команды должны согласовать рабочий элемент и повторно отправить его или удалить из списка элементов для отправки в корпоративный проект.Кроме того, члены команды могут создать запрос рабочего элемента на поиск всех отклоненных элементов на основе значения в поле Состояние последней отправки Project Server.Дополнительные сведения см. в разделе Отслеживание отправки рабочих элементов и разрешение отклонений.
Синхронизация и интервалы повтора
Синхронизация данных выполняется по расписанию, а не после обновления каждого рабочего элемента.Служба заданий синхронизации запускается каждые 30 секунд.За это время она запрашивает соответствующие рабочие элементы и поля, измененные в Project Server или Team Foundation Server либо утвержденные руководителем проекта.
Обработчик синхронизации каждый час повторяет отправку рабочих элементов, обновление которых ранее завершилось неудачей.Дополнительные сведения см. в разделе Изменение интервала повтора или повторной отправки при синхронизации.
К началу
Данные, подлежащие синхронизации
Два уровня конфигурации определяют объекты для участия в синхронизации и синхронизированные данные.Администраторы Team Foundation выполняют несколько уровней сопоставления для настройки объектов, которые могут участвовать в синхронизации.На втором уровне руководители проектов и пользователи Team Foundation определяют, какие конкретные задачи и рабочие элементы синхронизируются.
К началу
Объекты, настроенные для участия в синхронизации
В следующих конфигурациях определяются объекты для участия в процессе синхронизации.Эти конфигурации обычно выполняют администраторы Team Foundation.Однако руководители проектов также могут сопоставлять планы корпоративных проектов с командными проектами.
Экземпляр PWA, сопоставляемый с коллекцией командных проектов. При этом сопоставлении настраивается коллекция командных проектов для поддержки синхронизации и определяются экземпляры PWA для синхронизации с коллекцией.
План корпоративного проекта, сопоставляемый с командным проектом. При этом сопоставлении настраивается план корпоративного проекта и командный проект для участия в синхронизации.При этом сопоставлении также определяются корпоративные проекты для синхронизации с командным проектом.
Типы рабочих элементов, сопоставляемые для синхронизации. При сопоставлении плана корпоративного проекта с командным проектом указываются типы рабочих элементов, которые можно синхронизировать.При этом сопоставлении в форму рабочего элемента добавляется вкладка Project Server, а в план корпоративного проекта добавляются правила проверки для каждого типа рабочего элемента.
Поля рабочих элементов, сопоставляемые с полями Project Server. По умолчанию обработчик синхронизации синхронизирует следующие поля в Team Foundation: "Название", "Кому назначено", "Завершенная работа", "Оставшиеся трудозатраты", "Исходная оценка", "Дата начала" и "Дата окончания".Можно добавить поля и задать параметры, определяющие способ синхронизации полей.Например, можно определить поля для отображения в форме рабочего элемента и указать, следует ли разрешать отдельные значения для указанного поля.
Дополнительные сведения см. в разделах Сопоставление компонентов Project Server с компонентами Team Foundation и Задание типов рабочих элементов, которые могут синхронизироваться.
Отдельная задача и рабочие элементы, настроенные для синхронизации
Руководители проектов определяют задачи в плане корпоративного проекта, которые требуется публиковать в Team Foundation Server.Члены команды определяют рабочие элементы в командном проекте, которые требуется отправить в Project Server.Руководители проектов могут опубликовать подробное разбиение конечных результатов и задач в Team Foundation Server или опубликовать только элементы суммарной задачи и управлять ими.Некоторые ограничения применяются к публикации подчиненных задач или рабочих элементов типа "родитель-потомок", как описано в подразделе Проверка данных, выполняемая во время обновлений и при отправке далее в этом разделе.
Дополнительные сведения см. в разделах Управление сведениями о проектах в плане корпоративного проекта, сопоставленном командному проекту и Планирование бизнес-требований сверху вниз в плане корпоративного проекта, сопоставленном командному проекту.
Примечание |
---|
Можно сопоставить несколько планов корпоративных проектов с одним командным проектом, но с одним рабочим элементом в Team Foundation можно сопоставить или связать только одну задачу в плане проекта.Каждая задача в плане корпоративного проекта отличается в Project Server.Задачи, отправленные в Project Server, обновляют только один рабочий элемент в Team Foundation.Кроме того, рабочие элементы, созданные в Team Foundation и отправленные в Project Server, обновляют только один план корпоративного проекта. |
Проверка данных, выполняемая во время обновлений и при отправке
Процесс синхронизации проверяет задачи и рабочие элементы, отмеченные для синхронизации, перед их публикацией в Project Server.Проверка данных выполняется принудительно в плане корпоративного проекта и командном проекте.
Публикация плана корпоративного проекта руководителями проектов
Если руководитель проекта, работающий в Project Professional, публикует план корпоративного проекта, сопоставленный с командным проектом, выполняются определенные проверки данных.Надстройка Team Foundation выполняет следующие проверки правильности в задачах, заданных для публикации в Team Foundation (то есть Публикация в командном проекте=Да).
Значение, заданное для поля Тип рабочего элемента, должно соответствовать типу рабочего элемента, настроенного для участия в синхронизации, для целевого командного проекта.
Важно Text30 — это поле проекта по умолчанию, связанное со столбцом Тип рабочего элемента, который используется в задачах синхронизации с рабочими элементами.Если план проекта когда-либо подключался к Team Foundation Server с помощью параметра Выбрать командный проект в меню "Команда" ленты, становится доступным для выбора дополнительное поле проекта с меткой Тип рабочего элемента.Это поле, значение поля проекта которого по умолчанию — Text24, поддерживает сопоставление планов проектов, привязанных к Team Foundation, но не поддерживает синхронизацию планов.Поле, основанное на Text24, содержит полный список типов рабочих элементов для командного проекта.Чтобы проверить правильность поля, можно навести на него указатель мыши и убедиться, что отображается значение Text30.
Все значения сопоставленных полей Project должны пройти определенные проверки, чтобы гарантировать соответствие их значений правилу, заданному для целевого типа рабочего элемента.Эти правила добавляются в план корпоративного проекта при его сопоставлении с командным проектом.
После публикации задачи значения, заданные для полей Публикация в командном проекте и Тип рабочего элемента, невозможно изменить.Если не требуется продолжать синхронизацию задачи, ее следует удалить.
Если задача и одна из ее подчиненных задач отмечены для синхронизации, все задачи между ними также должны быть отмечены для синхронизации.
Значение поля Имя ресурса задачи должно соответствовать имени допустимого участника целевого командного проекта.
Если одной задаче назначается несколько ресурсов, только одно назначение ресурса можно выбрать как активное.Дополнительные сведения см. в разделе Предоставление информации о ходе работы команды гибкой разработки в отдел управления программами.
Все значения должны соответствовать правилам, которые Project Server применяет к определению конкретного поля.Например, если сопоставленному полю, связанному с таблицей подстановки, присваивается значение, отсутствующее в данной таблице, может возникать ошибка.
Диалоговое окно Разрешение проверки открывается при каждом нарушении одного или нескольких правил.Руководители проектов должны устранить каждую ошибку перед публикацией изменений.
Отправка новых или обновленных рабочих элементов из Team Foundation разработчиками
Если разработчик, работающий в Team Foundation, создает или обновляет рабочий элемент и сохраняет изменения, выполняются следующие проверки рабочих элементов, заданных для публикации в Project Server (то есть Отправить в Project Server=Да).
Значение поля Кому назначено должно соответствовать члену команды, который также добавлен в пул корпоративных ресурсов и ресурсы проекта в плане проекта.Дополнительные сведения см. в разделе Назначение разрешений для поддержки интеграции Project Server и Team Foundation Server.
Если с командным проектом сопоставляется только один план корпоративного проекта, его имя автоматически отображается в поле Корпоративный проект на вкладке Project Server для только что созданных рабочих элементов.
Если с командным проектом сопоставляется несколько корпоративных проектов, необходимо указать значение для поля Корпоративный проект только что созданных рабочих элементов, поле Отправить в Project Server которых имеет значение Да.
Изменить иерархическую структуру рабочих элементов после их привязки к задачам проекта невозможно.Дополнительные сведения см. в разделе Суммарные задачи, иерархия задач и отправка рабочих элементов, вложенных на нескольких уровнях.
Правила, которые были добавлены к сопоставленному типа рабочего элемента может привести к ошибкам проверки, если нужно публиковать план проекта.Например, условное правило может ограничивать, что вычисляет пользователей может присвоить полю.Дополнительные сведения см. в разделе Работа с правилами полей.
Основные правила, такие как таблицы подстановок, которые соответствуют определениям полей на сервере проектов могут вызвать ошибки во время синхронизации состояния.Например, возникнет ошибка при использовании таблицу уточняющих запросов, чтобы определить допустимые значения для поля в проекте, то сопоставление, поле к полю в Team Foundation, а затем задать поле в Team Foundation значение, отсутствующее в таблице уточняющих запросов.
После публикации в Project Server рабочий элемент связывается с задачей в целевом плане корпоративного проекта.Эта привязка также называется ссылкой.Ссылки блокируются во время синхронизации.Для удаления ссылки необходимо удалить соответствующую задачу в Project или использовать параметр /force при удалении сопоставления плана проекта или типа рабочего элемента.Дополнительные сведения см. в разделе Исключение компонента из участия в синхронизации данных.
К началу
Зеркальные поля и "два набор книг"
Поскольку обработчик синхронизации выполняет три типа синхронизации и взаимодействует с двумя базами данных в запланированном согласовании, слияния данных не происходит.Вместо этого выполняется синхронизация данных за два шага, и обработчик разрешает расхождение между двумя продуктами.Для каждого синхронизированного поля Team Foundation можно определить зеркальное поле, в котором хранится значение соответствующего сопоставленного поля Project Server.В ходе периодических операций синхронизации значения двух полей совпадут со значением, обновленным в Team Foundation Server, лишь после того, как руководитель проекта утвердит обновление и опубликует план проекта.
Для каждого поля, сопоставление определяется один из следующих вариантов, как требуется механизм синхронизации обновления эталонное поле в Team Foundation:
Всегда следует обновлять эталонное поле в Team Foundation Server со значением от сервера проекта (PSWins).
Разрешить значение для эталонного поля в Team Foundation Server чтобы отличаться от значения, присвоенного на сервере проекта.Эта стратегия носит название "два набора книг".
При поддержке двух наборов книг можно создать запрос для поиска рабочих элементов, два значения которых не совпадают.Дополнительные сведения см. в разделах Общие сведения об управлении обновлениями конкретных полей и Поиск рабочих элементов, объем работ которых в Team Foundation отличается от объема работ в Project Server.
Дополнительные сведения см. в разделе Справка по XML-элементу сопоставления полей для интеграции Team Foundation Server и Project Server.
К началу
Разрешения, требуемые для поддержки синхронизации
Для выполнения синхронизации данных Team Foundation Server и Project Server необходимо предоставить следующие разрешения.
В Project Server 2007 учетной записи службы, под которой выполняется TfsJobAgent, необходимо предоставить доступ к поставщику общих служб.Дополнительные сведения см. в разделе Добавление учетной записи службы Team Foundation Server в поставщик общих служб Project Server 2007.
В Project Server 2010 учетной записи службы, от имени которой выполняется TfsJobAgent, необходимо предоставить разрешения "Полный доступ", чтобы предоставить доступ к приложению службы Project Server.Дополнительные сведения см. в разделе Добавление учетной записи службы Team Foundation Server в приложение службы Project Server Project Server 2010.
Учетной записи службы, под которой выполняется TfsJobAgent, необходимо предоставить разрешения, требуемые для доступа к каждому сопоставленному экземпляру PWA.
Пользователей, назначенных задачам в Project Professional или рабочим элементам в Team Foundation, необходимо распознать как участников в командном проекте.Этих пользователей также необходимо распознать как ресурсы плана корпоративного проекта и предоставить им разрешения на вход в экземпляры PWA, участвующие в процессе синхронизации.
Дополнительные сведения см. в разделе Назначение разрешений для поддержки интеграции Project Server и Team Foundation Server.
К началу
Уведомление об ошибке, ведение журнала событий и возможность трассировки
Обработчик синхронизации обрабатывает обновления проекта, опубликованные в Project Server, затем обновления состояния и, наконец, обновления утверждений.В ходе публикации обновляется Project Server, а также добавляются задачи и сведения о задачах в план корпоративного проекта.В процессе синхронизации публикации данные из Project Server передаются в Team Foundation Server.В ходе синхронизации состояния извлекаются данные из Team Foundation для обновления очереди утверждений руководителя проекта, а при синхронизации утверждений в Project Server публикуются обновления полей, таких как "Оставшиеся трудозатраты" и "Завершенная работа", в результате чего инициируется новый цикл синхронизации.
При каждом типе синхронизации соответствующие сообщения об ошибках и состоянии отображаются для руководителя проекта в Project Professional или экземпляре PWA.Кроме того, сообщения об ошибках и состоянии, связанные с обработчиком синхронизации и его конфигурацией, также можно записать в соответствующие административные интерфейсы Team Foundation Server и Project Server.
Руководители проектов, члены команды и администраторы могут просматривать и выявлять ошибки в сообщениях, связанных с синхронизацией.Сообщения записываются в следующие расположения.
В Project Professional в строке состояния плана корпоративного проекта отображается ход выполнения публикации.
В экземпляре PWA в центре утверждения отображается очередь обновленных задач.
В форме рабочего элемента для Team Foundation на вкладке Project Server указывается состояние и время последней синхронизации рабочего элемента.
В форме рабочего элемента для Team Foundation в поле "Журнал" записывается состояние синхронизации и сообщения об ошибках после каждого обновления рабочего элемента.При взаимодействии с Project Server 2010 комментарии руководителей проектов, которые они оставляют при утверждении или отклонении обновления состояния, также записываются в поле "Журнал".
Журнал событий сервера уровня приложений, участвующего в синхронизации данных, поддерживает запись всех событий и ошибок синхронизации.
Администраторы могут извлечь последние сообщения о событиях с помощью команды TfsAdmin ProjectServer /GetSyncMessages.Дополнительные сведения см. в разделе Просмотр сообщений об ошибках обработчика синхронизации.Для сбора более подробной информации можно включить подробную трассировку для агента фоновых заданий Team Foundation, в котором выполняются службы.Дополнительные сведения см. в разделе Агент фоновых заданий Team Foundation.
К началу
См. также
Основные понятия
Администрирование интеграции Team Foundation Server и Project Server
Другие ресурсы
Managing Projects Using Project Professional Mapped to a Team Project