Заметки консультанта

Шамрай Александр Владимирович

Глава 13 — Шаблоны процессов

<< Назад

Область применения

  • Microsoft® Visual Studio® 2005 Team Foundation Server (TFS)
  • Microsoft Visual Studio Team System

Задачи

  • Понять назначение, содержимое и структуру шаблонов процессов.
  • Рассмотреть основные различия между шаблонами процессов Microsoft® Solution Framework (MSF) для гибкой разработки ПО (MSF Agile) и MSF для совершенствования процесса согласно CMMI® (MSF CMMI).
  • Настроить шаблоны процессов соответственно конкретным требованиям группы.

Обзор

Данная глава объясняет роль шаблонов процессов в Microsoft Visual Studio® 2005 Team Foundation Server (TFS). В ней рассмотрены важнейшие особенности и различия между двумя поставляемыми шаблонами: MSF Agile и MSF CMMI.

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

Visual Studio Team System (VSTS) и TFS предоставляют интегрированную среду, поддерживающую большинство работ процесса, выполняемых в проекте по разработке ПО. TFS реализует свои методологии обеспечения жизненного цикла через использование шаблонов процессов. Шаблон процесса – это набор файлов на Extensible Markup Language (XML), предоставляющих спецификации процессов и артефактов, которые составляют методологию разработки. В данной главе рассматривается архитектура шаблона процесса и его компоненты, что поможет лучше понимать, как использовать и настраивать поставляемые шаблоны процессов.

Если существующие шаблоны процессов не отвечают нуждам группы, можно создать новый шаблон процесса, изменить существующие шаблоны или выбрать один из шаблонов, предлагаемых партнерами Microsoft. Шаблоны партнеров Microsoft можно найти по адресу http://msdn2.microsoft.com/en-us/teamsystem/aa718801 .

Как использовать данную главу

Данная глава поможет понять архитектуру и структуру процесса, а также то, как его можно настраивать. Чтобы использовать главу с максимальной пользой, следует:

  • Прочитать раздел «Шаблоны процессов MSF Agile и MSF CMMI», чтобы узнать о стандартных шаблонах процессов и о том, как выбрать шаблон, лучше всего соответствующий нуждам группы.
  • Прочитать раздел «Руководство по настройке процесса», чтобы научиться настраивать существующие шаблоны процессов соответственно нуждам группы.

Шаблоны процессов MSF Agile и MSF CMMI

Team Foundation Server поставляется с двумя шаблонами процессов: MSF Agile и MSF CMMI. Эти шаблоны ориентированы на два разных стиля разработки ПО. MSF Agile используется, если ПО создается по гибкой методологии. MSF Agile поддерживает разработку через тестирование и другие гибкие практики. MSF CMMI следует использовать, если ПО создается по методике комплексной модели производительности и зрелости CMMI (Capability Maturity Model® Integration) Института по разработке ПО (Software Engineering Institute, SEI). Это формальный процесс, предназначенный для улучшения существующих процессов разработки.

Шаблоны отличаются поставляемыми компонентами. Например, они создают разные типы стандартных отчетов и рабочих элементов. Эти шаблоны можно без труда редактировать соответственно нуждам конкретного проекта.

Руководство по настройке процесса

Создаваемый проект может не соответствовать шаблонам процессов, поставляемым с VSTS, в нем может требоваться другой тип рабочего элемента или использоваться совершенно иная методология процесса. Например, вы работаете по процессу SCRUM, а в текущем шаблоне нет и намека на спринты. В этом случае для обеспечения соответствия методологии, используемой группой, необходимо изменить или заменить существующий шаблон процесса.

Архитектура шаблона процесса

В архитектуре шаблона процесса можно выделить три основные части:

  • Подключаемые модули шаблона процесса
  • XML-файлы описания процесса
  • New Team Project Wizard (Мастер создания группового проекта)

Подключаемые модули шаблона процесса

Подключаемые модули шаблона процесса – это компоненты, запускаемые при создании нового группового проекта. Подключаемый модуль настраивает необходимые файлы и конфигурирует данные для определенной области шаблона. С TFS поставляются следующие стандартные подключаемые модули.

  • Классификация – Определяет исходную итерацию и области группового проекта.
  • Группы и права доступа – Определяет исходные группы доступа группового проекта и их права доступа.
  • Сервисы Windows SharePoint – Определяет портал проекта для группы на основании шаблона сайта Microsoft Windows SharePoint®. Также определяет файлы шаблона и руководство по процессу.
  • Отслеживание рабочих элементов – Определяет исходные типы рабочих элементов, запросы и экземпляры рабочих элементов группового проекта.
  • Отчеты – Определяет исходные отчеты группового проекта и настраивает сайт отчетов.
  • Контроль версий – Определяет исходные права доступа к системе контроля версий группового проекта и наличие комментариев к регистрации изменений.

Чтобы настроить шаблон процесса, можно изменить любой файл описания подключаемого модуля. Также можно удалить любой файл описания подключаемого модуля, кроме классификации.

XML-файлы описания процесса

XML-файлы описания процесса – это набор XML-файлов, описывающих ряд задач, выполнение которых обеспечит правильное конфигурирование нового группового проекта для процесса. Мастер New Team Project, используемый для создания группового проекта, выполняет необходимые подключаемые модули. Каждый подключаемый модуль считывает список задач, которые он должен выполнить, из соответствующего XML-файла описания процесса. Посредством XML-файлов описания процесса задаются конфигурации и настройки, которые должны быть реализованы подключаемыми модулями. Далее об XML-файлах более подробно:

  • XML-файл отслеживания рабочих элементов– Этот файл описания процесса называется Workitems.xml и располагается в папке Work Item Tracking (Отслеживание рабочих элементов) каталога шаблона процесса. Должны быть заданы три основных типа задач: типы рабочих элементов, запросы к рабочим элементам и экземпляры рабочих элементов.
    • Типы рабочих элементов – Определяют правила, поля, состояния и переходы для элементов работы, которые будут отслеживаться для группового проекта, таких как задачи, дефекты и требования.
    • Запросы к рабочим элементам – Используются для группировки рабочих элементов, например, задачи или активные дефекты. Запросы к рабочим элементам определены в файлах запросов к рабочим элементам (work item query, WIQ), находящихся в папке Queries (запросы), которая, в свою очередь, располагается в папке Work Item Tracking каталога шаблона процесса.
    • Экземпляры рабочих элементов – Исходный набор экземпляров рабочих элементов, создаваемый по умолчанию при создании группового проекта.
  • XML-файл классификации – Этот файл описания процесса называется Classification.xml и располагается в папке Classification (Классификация) каталога шаблона процесса. Он состоит из двух частей: Iterations (Итерации) и Areas (Области).
    • Итерации – Используются для определения количества повторений группой определенного набора основных действий (таких как планирование, разработка, тестирование). Итерации оказывают влияние на запросы к рабочим элементам и отчеты, потому что используются для группировки рабочих элементов.
    • Области – Используются для организации работы в групповом проекте. Например, группа могла бы организовать работу, опираясь на продукт или функциональную возможности, т.е. выделяя область UI (пользовательский интерфейс), область приложения и область базы данных. С помощью областей рабочие элементы группируются для запросов и отчетов.
  • XML-файл сервисов Windows SharePoint – Этот файл описания проекта называется WssTasks.xml и располагается в папке Windows SharePoint Services (сервисы Windows SharePoint) в каталоге шаблона процесса. В нем должны быть заданы три основных задачи: Site Template (Шаблон сайта) – какой шаблон сайта использовать, Document Libraries (Библиотеки документов) – какие библиотеки документов создавать и Folders and Files (Папки и файлы) – какие папки и файлы копировать в библиотеки документов.
    • Шаблон сайта – Должен быть задан шаблон сайта, на котором будет базироваться портал проекта. Этот шаблон сайта также должен быть доступен на портале TFS SharePoint. Шаблоны сайтов не входят в шаблон процесса.
    • Библиотека документов – Можно оговорить необходимость создания дополнительных библиотек документов после создания портала проекта.
    • Папки и файлы – Можно оговорить необходимость создания дополнительных папок после создания портала проекта. Также можно задать файлы для копирования, например, файлы шаблона.
  • XML-файл контроля версий – Этот файл описания процесса называется VersionControl.xml и располагается в папке Version Control (Контроль версий) каталога шаблона процесса. Он определяет исходные права доступа к системе контроля версий, наличие комментариев к регистрации изменений и необходимость в обеспечении возможности изъятия версии файла для редактирования из системы контроля версий исключительно одним пользователем.
    • Наличие комментариев к регистрации изменений – Определяет, должны ли быть включены комментарии к регистрации изменений. Такие комментарии предоставляются разработчиком при регистрации изменений для описания того, как изменения кода связаны, или связаны ли они с групповыми процессами. Например, комментарий к регистрации изменения может показывать, является ли изменение частью рецензии на предмет безопасности, и может включать детали об изменениях, имеющих отношение к анализу безопасности.
    • Изъятие версии файла для редактирования из системы контроля версий исключительно одним пользователем – Используется для управления возможностью изъятия версии файла многими пользователями одновременно.
    • Права доступа – Определяют, какие действия над элементами, подлежащими контролю версий, могут осуществлять группы доступа и отдельные члены группы.
  • XML-файл отчетов – Этот файл описания процесса называется ReportsTasks.xml и располагается в папке Reports (отчеты) каталога шаблона процесса. Он определяет исходные отчеты группового проекта.
    • Сайт отчетов – Сайт, составляющий отчеты, имеет ссылку на себя, обозначенную как Reports на домашней странице портала проекта.
    • Папки – Можно создавать папки на сайте отчетов. Созданная папка(-и) появится на сайте проекта и в Team Explorer в папке Reports.
    • Отчеты – Используются для добавления отчетов с помощью файлов .rdl.
  • XML-файл групп и прав доступа – Этот файл описания проекта называется GroupsandPermissions.xml и располагается в папке Groups and Permissions (Группы и права доступа) в каталоге шаблона процесса. Используется для определения исходных групп доступа группового проекта.
    • Группы – Используется для определения новой группы доступа TFS.
    • Права доступа – Используется для определения прав доступа для каждой заданной группы.

Мастер создания группового проекта

Новые групповые проекты создаются с помощью мастера New Team Project. Для создания проекта этот мастер использует подключаемые модули и XML-файлы описания процесса.

Подход к настройке процесса

Настройка шаблона процесса осуществляется по следующей схеме:

  1. Просмотреть шаблоны процессов, предлагаемые TFS, и выбрать из них наиболее близко подходящий к процессу, используемому в вашей организации.
  2. Скачать выбранный шаблон процесса.
  3. Настроить различные компоненты шаблона процесса.
  4. Загрузить настроенный шаблон в TFS.
  5. Убедиться в том, что внесенные изменения удовлетворяют требованиям вашего процесса.

Этот основной подход используется в следующих решениях для настройки шаблонов процессов:

  • Настройка XML-файлов вручную. Настройка вручную чревата большим количеством ошибок, но, тем не менее, обеспечивает наиболее тонкую настройку шаблонов процессов. Более подробно об этом смотрите в статье «Customizing Process Templates» (Как настраивать шаблоны процессов) по адресу http://msdn2.microsoft.com/en-us/library/ms243782(VS.80).aspx .
  • Редактор шаблонов процессов, доступный в инструментальных средствах, расширяющих возможности TFS. Самая последняя версия Visual Studio 2005 Team Foundation Server Power Tool ― набор расширений, инструментов и утилит командной строки, улучшающих работу с TFS – предоставляет графическое средство для просмотра и настройки шаблонов процессов. Подключившись к TFS, можно использовать этот инструмент для настройки описаний типов рабочих элементов и глобальных списков активного проекта. Более подробно смотрите в разделе «Как: настроить шаблон процесса в Visual Studio Team Foundation Server».

Обычные варианты настройки

Далее приведены описания набора компонентов, которые обычно настраиваются для создания собственного специального процесса:

  • Группы и права доступа. В стандартных шаблонах процессов есть набор групп с различными правами доступа. Если стандартные группы и права доступа, ассоциированные с этими шаблонами, не подходят или не соответствуют требованиям процесса, эти группы можно обновить или создать новые. Также можно добавлять в группу отдельных пользователей, удалять пользователей из группы или предоставлять и отменять права доступа группы.
  • Комментарии и политики регистрации изменений системы контроля версий. В стандартных шаблонах процессов есть набор комментариев и политик регистрации изменений системы контроля версий. Если стандартные комментарии к регистрации изменений не подходят или не соответствуют требованиям процесса, можно добавлять или удалять поля комментариев или делать некоторые поля обязательными и необязательными. Если стандартные политики регистрации изменений не подходят или не соответствуют требованиям процесса, можно добавлять, обновлять или удалять отдельные политики регистрации изменений.
  • Области и итерации. Стандартные шаблоны процессов не предоставляют структуру классификации ни для областей, ни для итераций. Их можно настроить соответственно требованиям конкретного процесса. Рекомендуемый подход – выделить области, исходя из компонентов или функциональности проекта. В качестве итераций могут рассматриваться временные циклы, для которых повторяется определенный набор основных действий (таких как планирование, разработка и тестирование).
  • Портал группы. Стандартные шаблоны процессов предоставляют портал группы по умолчанию, который может быть концентратором для обмена информацией между членами группы и другими членами организации. Можно изменять внешний вид, поведение и содержимое портала соответственно требованиям процесса.
  • Руководство по процессу. Стандартные шаблоны процессов предоставляют соответствующее руководство по процессу, объясняющее роли, формы, отчеты и порядок операций, используемые в групповом проекте. При настройке шаблона процесса соответственно конкретным требованиям необходимо редактировать руководство по процессу и отражать в нем изменения для различных компонентов.
  • Отчеты. Стандартные шаблоны процессов предоставляют набор стандартных отчетов. Если они не подходят, можно создать собственные отчеты на основании конкретных требований.
  • Типы рабочих элементов и запросы к ним. В стандартных шаблонах процессов есть набор типов рабочих элементов, стандартных экземпляров рабочих элементов и запросов. Если стандартные типы рабочих элементов, экземпляры рабочих элементов и запросы не соответствуют или не отвечают требованиям конкретного процесса, их можно настроить. Например, можно:
    • Добавлять новые типы рабочих элементов.
    • Удалять существующие типы рабочих элементов.
    • Добавлять стандартные экземпляры рабочих элементов.
    • Удалять стандартные экземпляры рабочих элементов.
    • Создавать собственные общедоступные или индивидуальные запросы.

Также можно изменить существующий тип рабочего элемента; например:

    • Добавить поля.
    • Переименовать поля.
    • Ограничить список допустимых значений полей.
    • Изменить состояния и поддерживаемые переходы между состояниями.
    • Сделать поля обязательными или доступными только для чтения.
    • Сделать поля зависимыми друг от друга.
    • Автоматически заполнять значения полей.
    • Изменять представление информации в форме.
    • Менять столбец Microsoft Office Project, в который отображается определенное поле.

Как проходит процесс настройки?

Настройка шаблона процесса проходит следующим образом:

  1. Пользователь запускает мастер New Team Project.
  2. Мастер запрашивает:
    • Имя группового проекта.
    • Шаблон процесса, который должен использоваться при создании группового проекта.
    • Какое окно отображается в мастере, зависит от используемого подключаемого модуля. Например, если шаблон процесса не включает подключаемый модуль Windows SharePoint Services, окна с запросом информации о портале проекта представлено не будет.
  3. После того, как пользователь предоставил информацию, запрашиваемую мастером, и нажал Finish (Завершить), мастер вызывает подключаемые модули для создания группового проекта. Порядок вызова подключаемых модулей определяется XML-файлами описания процесса.
  4. Соответственно инструкциям, содержащимся в шаблоне процесса, мастер создает и конфигурирует заданные элементы.
  5. Пользователю не надо задавать какую-либо информацию о типах рабочих элементов, которые должны быть созданы, потому что инструкции уже предоставлены шаблоном процесса.

Примечание: Если во время создания нового группового проекта возникают какие-либо проблемы, мастер выводит сообщение об ошибке, описывающее проблему и предлагающее ее решение.

Заключение

Если программное обеспечение создается по гибкой методологии, используйте шаблон процесса MSF Agile. Если группа следует методологии Capability Maturity Model Integration института Software Engineering Institute (SEI), применяйте шаблон MSF CMMI.

Ключевые компоненты архитектуры шаблона процесса – подключаемые модули шаблона процесса, XML-файлы описания процесса и мастер New Team Project.

Если стандартные шаблоны процессов не удовлетворяют требованиям вашего процесса, можно настроить шаблон, вручную изменяя XML-файлы описания процесса, или с помощью инструмента Process Editor (Редактор процесса).

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

Дополнительные источники

<< Назад

 
%d такие блоггеры, как: