Ещё одна версия настройки TFS под командную работу
Структура публикации
Использовалась TFS 2015, однако многое справедливо и для более ранних версий.
Немного о том — почему так?
При продолжительных проектах даже для небольшой команды требуется система планирования и работы с задачами, а также система контроля версий. Существуют готовые методики разработки (Agile, Scrum и т. д.), под которые в TFS-е есть шаблоны, но не на всех предприятиях их готовы внедрять. Особенно это касается предприятий, на которых идёт разработка не нового продукта, а доработка существующего под требования бизнеса. Бизнесу всё равно, что у вас не закончился спринт и в него больше ничего нельзя добавлять. Может быть вы захотите рассказать об итерациях. Если появляется новая важная и конечно же срочная задача — вы будете её делать. И как-то оформлять в TFS-е, затрачивая время. Здесь конечно кто-то возразит, что нужно правильно организовать структуру ИТ-отдела, например, создать специальную «пожарную команду». Или использовать другой подход, чтобы «вписаться» в одну из стандартных методик. Да, можно пообсуждать это в комментариях.Схема работы команд разработки под которую делается настройка
Итак, предположим имеется несколько команд разработки. Каждая команда организована по принципу «операционной бригады», в которой есть разные специалисты. У каждой команды своя зона ответственности, свой участок разработки. Иногда удобно заводить в TFS даже отделы, не занимающиеся разработкой.
Предположим нам необходимо три уровня задач:
Также предположим, что прежде чем брать в работу некоторое задание, оно должно быть согласовано у кого-то. Это может быть руководитель ИТ, отдел бизнес-анализа, руководитель отдела для которого производится автоматизация, все сразу или кто-то ещё.
Предположим, что каждая задача проходит 4 стадии:
Предположим, что каждое задание или проект проходит 3 стадии:
И наконец предположим, что необходимо передавать задачи в соседние команды разработки так, чтобы видеть это на своих досках. Чтобы на вашей доске вы понимали, что задачи отданы в другую команду. А другая команда видела, что это сторонние задачи.
Допустим это всё, что требуется от вкладки «Работа» вашего TFS. Далее — как это настроить.Настройка XML-ек
1. Настройки необходимо начинать, если у вас ещё нет задач. Иначе будет много ошибок и трудноразрешимых ситуаций.
2. Сначала нужно создать коллекцию и несколько команд в TFS, раздать права.
3. Далее необходимо установить Visual Studio, если у вас она ещё не установлена.
4. Запускаем Visual Studio.
Здесь понятно будет путь к вашей студии. Далее набираем вот это, заменяя пути, названия проекта и коллекции.
7. Создаётся файл «ProcessConfig.XML». Его текст необходимо изменить.на вот такой:
Здесь я убрал всё, что можно убрать. Данный файл описывает настройки досок, левой панели, списка и панели добавления элементов. Внизу перечислены цвета элементов. Обратите внимание, что в описании использована русская версия TFS. В английской «Задачи» и «Задача» будут называться «Tasks» и «Task» соответственно. Это же касается и остального.
8. Далее в консоли набираем:
9. Содержимое появившегося файла заменяем на:
В TFS-е есть более 3-х классов элементов. Среди них: задачи, ошибки, тестовые случаи и прочее. Данный файл описывает, что нам из этого нужно и сколько вариантов элементов может быть для каждого класса. Например, мы задаём, что будет три типа задач. Внизу перечисляем то, что нам не нужно.
10. Далее нам необходимо настроить интерфейс элементов, а также их жизненный цикл. Для этого в Visual Studio тыкаем «Сервис / Process Editor / Work Item Types / Export WIT»
Здесь описываются атрибуты, которыми будет владеть элемент. Описание интерфейса элемента. Возможные состояния элемента. А так же возможные переходы из состояния в состояние.
16. Скопируйте данный файл дважды с новыми именами «C# task.XML» и »1C task.XML». В каждом из них необходимо в третьей строке » заменить название на соответствующее.
17. Скопируйте файл «Пользовательская история.XML» в «Story.XML» и замените содержимое на:
18. Скопируйте файл «Возможность.XML» в файл «Project.XML» (или на любое другое название, например «Крупная цель.XML») и замените содержимое на:
- Немного о том — почему так?
- Схема работы команд разработки под которую делается настройка
- Настройка XML-ек
- Сохранение XML-ек
- Настройка TFS через интерфейс
Использовалась TFS 2015, однако многое справедливо и для более ранних версий.
Немного о том — почему так?
При продолжительных проектах даже для небольшой команды требуется система планирования и работы с задачами, а также система контроля версий. Существуют готовые методики разработки (Agile, Scrum и т. д.), под которые в TFS-е есть шаблоны, но не на всех предприятиях их готовы внедрять. Особенно это касается предприятий, на которых идёт разработка не нового продукта, а доработка существующего под требования бизнеса. Бизнесу всё равно, что у вас не закончился спринт и в него больше ничего нельзя добавлять. Может быть вы захотите рассказать об итерациях. Если появляется новая важная и конечно же срочная задача — вы будете её делать. И как-то оформлять в TFS-е, затрачивая время. Здесь конечно кто-то возразит, что нужно правильно организовать структуру ИТ-отдела, например, создать специальную «пожарную команду». Или использовать другой подход, чтобы «вписаться» в одну из стандартных методик. Да, можно пообсуждать это в комментариях.Схема работы команд разработки под которую делается настройка
Итак, предположим имеется несколько команд разработки. Каждая команда организована по принципу «операционной бригады», в которой есть разные специалисты. У каждой команды своя зона ответственности, свой участок разработки. Иногда удобно заводить в TFS даже отделы, не занимающиеся разработкой.
Предположим нам необходимо три уровня задач:
- Нижний — сами задачи нескольких типов. Каждый тип должен соответствовать специальности разработчика. Их создают сами разработчики. В результате декомпозиции или иным образом.
- Средний — задания от заказчика. Это уровень Product Backlog item. Или Story. Здесь каждый элемент содержит «хотелки» с требованиями. Предположим их создаёт или заказчик или менеджер команды.
- Верхний — проекты или крупные цели. Это уровень Features. Здесь можно группировать «хотелки».
Также предположим, что прежде чем брать в работу некоторое задание, оно должно быть согласовано у кого-то. Это может быть руководитель ИТ, отдел бизнес-анализа, руководитель отдела для которого производится автоматизация, все сразу или кто-то ещё.
Предположим, что каждая задача проходит 4 стадии:
- ожидание,
- разработка,
- проверка и выкладка в продакшн,
- сделано.
Предположим, что каждое задание или проект проходит 3 стадии:
- новый,
- в работе,
- готово.
И наконец предположим, что необходимо передавать задачи в соседние команды разработки так, чтобы видеть это на своих досках. Чтобы на вашей доске вы понимали, что задачи отданы в другую команду. А другая команда видела, что это сторонние задачи.
Допустим это всё, что требуется от вкладки «Работа» вашего TFS. Далее — как это настроить.Настройка XML-ек
1. Настройки необходимо начинать, если у вас ещё нет задач. Иначе будет много ошибок и трудноразрешимых ситуаций.
2. Сначала нужно создать коллекцию и несколько команд в TFS, раздать права.
3. Далее необходимо установить Visual Studio, если у вас она ещё не установлена.
4. Запускаем Visual Studio.
5. Тыкаем «Сервис / Расширения и обновления». Далее выбираем «В сети». Далее «Visual Studio Gallery». Находим и устанавливаем оттуда. Или скачиваем и устанавливаем «Microsoft Visual Studio Team Foundation Server 2015 Power Tools» с сайта. Это бесплатная утилита.
6. Далее запускаем консоль. Набираем вот это:
cd c:\Program…\Microsoft Visual Studio 14.0\Common7\IDE\
Здесь понятно будет путь к вашей студии. Далее набираем вот это, заменяя пути, названия проекта и коллекции.
witadmin exportprocessconfig /f:"c:\work\tfs2015\ProcessConfig.xml" /p:projectname /collection:"http://tfs2015:8080/tfs/CollectionName"
7. Создаётся файл «ProcessConfig.XML». Его текст необходимо изменить.на вот такой:
ProcessConfig.XML
Sunday
Saturday
Здесь я убрал всё, что можно убрать. Данный файл описывает настройки досок, левой панели, списка и панели добавления элементов. Внизу перечислены цвета элементов. Обратите внимание, что в описании использована русская версия TFS. В английской «Задачи» и «Задача» будут называться «Tasks» и «Task» соответственно. Это же касается и остального.
8. Далее в консоли набираем:
cd c:\Program…\Microsoft Visual Studio 14.0\Common7\IDE\
witadmin exportcategories /f:"c:\work\tfs2015\Categories.xml" /p:projectname /collection: "http://tfs2015:8080/tfs/CollectionName"
9. Содержимое появившегося файла заменяем на:
Categories.XML
В TFS-е есть более 3-х классов элементов. Среди них: задачи, ошибки, тестовые случаи и прочее. Данный файл описывает, что нам из этого нужно и сколько вариантов элементов может быть для каждого класса. Например, мы задаём, что будет три типа задач. Внизу перечисляем то, что нам не нужно.
10. Далее нам необходимо настроить интерфейс элементов, а также их жизненный цикл. Для этого в Visual Studio тыкаем «Сервис / Process Editor / Work Item Types / Export WIT»
11. В открывшемся окне задаём параметры для подключения к своему TFS.
12. Выбираем из списка элемент «Задача».
13. Сохраняем в файл с тем же именем. Далее соглашаемся. Нажимаем ОК.
14. Далее повторяем для типа «Пользовательская история» (Product Backlog) и «Возможность» (Feature).
15. Далее получившийся XML задачи заменяем на вот это и сохраняем с именем «SQL task»:
SQL task.XML
Отслеживание требуемых работ.
Итерация, в которой будет завершена эта задача
Область продукта, в которой задействована эта задача
Требуемая работа и как будет реализована пользовательская история
Новый = новая работа, которая пока не активирована; Активный = оставшаяся работа, которую нужно выполнить; Закрыто = протестировано и возвращено.
Причина, по которой задача находится в текущем состоянии
Лицо, которое в настоящее время занимается решением этой задачи
Что предполагается сделать, указатели на ресурсы и входные данные, заметки разработки, условия выхода
Поток дискуссии плюс автоматическая запись изменений
Оценка числа единиц работы, оставшихся до завершения выполнения задачи
Начальное значение оставшейся работы - задается единожды, при начале работы
Количество единиц работы, потраченных на эту задачу
Тип связанной работы
Производственная важность
Сначала обработайте элементы с меньшим значением ранга стека. Установить в рассмотрении.
Сборка, в которой ошибка была исправлена
Дата начала задачи
Дата завершения задачи
Здесь описываются атрибуты, которыми будет владеть элемент. Описание интерфейса элемента. Возможные состояния элемента. А так же возможные переходы из состояния в состояние.
16. Скопируйте данный файл дважды с новыми именами «C# task.XML» и »1C task.XML». В каждом из них необходимо в третьей строке » заменить название на соответствующее.
17. Скопируйте файл «Пользовательская история.XML» в «Story.XML» и замените содержимое на:
Story.XML
Отслеживает действие, которое пользователь сможет выполнять с использованием продукта
Итерация, в рамках которой эта пользовательская история будет реализована
Область продукта, с которой связана эта пользовательская история
Возможности, которые получит пользователь после реализации
Новый = работа, которая еще не начата; Активный= оставшиеся работы к выполнению; Разрешено = ожидающие приемочных тестов; Закрыто = прошедшие приемочные тесты
Причина, по которой статья находится в текущем состоянии
Описание или ссылка на описание, которое должно подтвердить завершенность работы
Поток дискуссии плюс автоматическая запись изменений
Предполагаемый объем работ для реализации этой пользовательской истории
Производственная важность. 1 = необходимо исправить, 4 = не имеет значения.
Сначала обработайте элементы с меньшим значением ранга стека. Установить в рассмотрении.
Бизнес = предоставляет ценности пользователю или системе; Архитектурный = работает для поддержки других историй или компонентов
Сборка, в которой ошибка была исправлена
Неопределенность в требованиях или структуре
Дата начала реализации данной статьи
Дата выполнения для всех задач, реализующих эту историю
18. Скопируйте файл «Возможность.XML» в файл «Project.XML» (или на любое другое название, например «Крупная цель.XML») и замените содержимое на:
Project.XML
Отслеживание компонента, который будет выпущен с продуктом
Итерация, в рамках которой этот компонент будет реализован
Область продукта, с которой связан этот компонент
Возможности, которые получит пользователь после реализации
Новый = работа, которая еще не начата; Активный= оставшиеся работы к выполнению; Разрешено = ожидающие приемочных тестов; Закрыто = прошедшие приемочные тесты
Причина, по которой компонент находится в текущем состоянии
Описание или критерии принятия, в соответствии с которыми компонент рассматривается как выполненный
Поток дискуссии плюс автоматическая запись изменений
© Habrahabr.ru