Рассылка закрыта
При закрытии подписчики были переданы в рассылку "Обзор инструментов SEO-оптимизатора и методов продвижения" на которую и рекомендуем вам подписаться.
Вы можете найти рассылки сходной тематики в Каталоге рассылок.
← Октябрь 2005 → | ||||||
1
|
2
|
|||||
---|---|---|---|---|---|---|
4
|
5
|
6
|
7
|
8
|
||
10
|
11
|
13
|
14
|
15
|
16
|
|
17
|
18
|
19
|
20
|
21
|
22
|
23
|
24
|
26
|
27
|
28
|
29
|
30
|
|
31
|
Статистика
0 за неделю
Visual Studio Team System 2005 или все для командной разработки ...
Информационный Канал Subscribe.Ru |
.NET: Записки программиста или хлопок одной ладони
Как всегда, введение
День добрый, рад видеть Вас снова!
Сегодня
мы разберем, каким образом Team System позволяет организовать работу
команды для разработки
проектов. Среда Team System создавалась вовсе не по принципу - "вот
это удобно, а давайте-ка мы его тоже включим". В VS 2005 команда Microsoft
реализовала поддержку той модели, которая все это время использовалась внутри
самой фирмы для разработки ее продуктов. Концепции work items, их
характеристики, типы отчетов, различные виды диаграмм - все
это применялось программистами, архитекторами и менеджерами Microsoft,
совершенствуясь и оттачиваясь. Именно эти методологии и были наконец-то
предоставленны в виде продукта под названием VS Team System
2005.
Конечно, это не значит что раньше они скрывались за грифами
"Только для внутреннего использования", нет. Наоборот, Microsoft старалась
как можно подробнее описать свои методики - вряд ли кому-то не знакомо
название "Microsoft Solution Framework". И это понятно, чем больше успешных
проектов под Windows будет реализовано, тем крепче будут позиции как самой OS
Windows так и ее средства разработки - Visual Studio. Но только сейчас Microsoft
выпустила цельный продукт, который включает в себя не только руководство
как это нужно делать, но и средства, при
помощи которых "делать правильно" становится синонимом "делать
удобно".
Забавно, сейчас я перечитал эти строки и понял, что фраза "Сегодня
мы разберем" звучит более чем наивно. "А сейчас мы разберем общую
теорию относительности Энштейна" ... :) Три абзаца, пять формул и наконец-то
фундаментальный вывод: а все таки E равно mc2! (аплодисменты, занавес). На самом деле, вряд
ли Вам будет интересно услышать краткое Team System overview моими словами,
которое Вы и так бы смогли прочитать, например здесь.
Так что рассказ будет вестись именно о моем опыте использования VS Team System. Конечно он будет неполным, с
чем-то я работал хорошо и много, а о чем-то знаю только теоретически. Для полноты
картины я буду упоминать и
об этих вещах, но только для того, чтобы Вы знали что
это вобще есть, с указанием ссылок, где с этим можно разобраться подробнее
и возможно потом рассказать другим. Итак,
встречайте:
Среда коллективной разработки: VS Team System 2005
Сначала о теории ... Эта среда создана
на базе "Microsoft Solution Framework" - методологии по разработке
программного обеспечения. Текущая,
3-я версия, оказалась чересчур формальной, сложной в обучении и, как все
универсальное, не слишком хорошо приспособленной для
всего диапазона проектов, от небольших (с командами в несколько человек) до огромных, над которыми
трудятся сотни разработчиков. Поэтому
Microsoft занято выпуском новой, 4-й версии, включающей
в себя два варианта этой методологии: MSF
Formal (он же MSF Complete в Beta 1, полное и окончательное название - MSF
for CMMI Process Improvement) и MSF Agile (полное и окончательное название - MSF for Agile
Software Development). Первый вариант предназначен для крупный проектов,
второй - может с успехом адаптироваться для всего остального диапазона, начиная от самых небольших
команд в 2-3 человека.
Теперь о практике ... Для работы в Team System Вам понадобится клиент - одна из редакций Microsoft Visual Studio 2005: Architect, Developer или Test Edition, заточенных под разные роли участников команды. Серверная часть состоит из Team Foundation Server (здесь расположен форум, посвященный TFS а так же его инсталляции), который интегрируется с другими серверными продуктами, а именно:
- SQL Server 2005 with Reporting Services для хранения всей информации (в том числе и версий кода), а так же формирования разнообразных отчетов
- Windows SharePoint Services для управления документами и организации взаимодействия группы разработчиков.
Сердце всей системы - Team Foundation Server. Он предоставляет команде разработчиков следующие возможности:
- Source control management (управление версиями кода) - усовершенствованный аналог SourceSafe, с новыми возможностями. То что запомнилось сразу - возможность одновременного редактирования кода несколькими программистами. Теперь, когда Вы начинаете редактировать файл, он блокируется не монопольно, позволяя другим участникам Вашей команды менять его одновременно с Вами (возможность эксклюзивного блокирования естественно также осталась). Когда Вы выбираете команду Check-In, система автоматически объединяет ваши изменения, обращаясь к Вам за помощью, только если вы ухитрились изменить один и тот же участок кода. При моем изначально скептическом отношении к этому алгоритму, за три месяца работы нескольких человек над одним проектом всего пару раз случались ситуации, когда приходилось садиться вместе и разбирать, где чей код должен быть. В качестве хранилища, используется SQL Server 2005, обеспечивающий надежность и масштабирование, а так же упрощающий создание резервных копий (backup) проекта.
- Work item tracking - ключевое понятие Team Foundation. C точки зрения Team System, все и каждая задачи, имеющие место в процессе разработки проекта, можно представить в виде work item. Это может быть как документация по проекту, задачи для разработчиков, ошибки, найденные тестерам, требования к продукту, одним словом - все. Work item состоит из целого набора характеристик, таких как Title (название), Description (описание), Comment history (история комментариев), State (статус), Node Path (место в иерархии проекта), Changed Date (дата последней модификации) и многие другие. Work items могут ссылаться друг на друга, на внешние ссылки, а так же на изменения в версиях кода. Кроме того к work items можно присоединять файлы. Вы можете работать с work items непосредственно в Visual Studio, а так же импортировать их в MS Project или Excel, а потом синхронизировать.
- Check-in policy - определяет, что должно произойти для того, чтобы операция check-in прошла успешно. Так, например, Вы можете указать, что операцию check-in можно выполнять только если весь код компилируется без ошибок. Другие варианты: указать, что перед тем как выполнить check-in, нужно связать эту операцию с одним из work item (в рамках которого в код и вносились изменения), выполнить определенный набор тестов или, например, заполнить какое-либо поле комментариев.
- Team Build - еще одно средство в составе Team Foundation Server. Оно использует MSBuild engine, которая(ый?) поставляется вместе с .NET Framework 2.0 и реализует концепцию сервера для создания сборок проекта. Team Build позволяет создать новую сборку проекта на основании сборочных скриптов, которые могут быть сгенерированы мастером в Visual Studio. Процедура сборки может включать в себя анализ кода (еще одна новая возможность VS 2005), выполнение различных тестов, а так же обновление work items и автоматическое уведомление участников команды. То есть, Вы можете настроить ночную сборку всего проекта, отработку unit-тестов и анализатора кода, с выкладыванием полученной сборки на сервер сборок и автоматическим уведомлением тестеров о появлении новой версии для тестирования.
Когда Вы создаете новый проект - Вы создаете его именно как проект Team Foundation Server. Вся командная работа выполняется в рамках этого проекта: для него создается структура, к нему добавляются пользователи, он хранит их права, исходные коды проекта, осуществляет контроль версий, позволяет управлять work items, создает сборки - вобщем все, что выполняется в рамках командной разработки.
Для работы с Team Foundation Server предназначена закладка Visual Studio "Team Explorer". На ней Вы можете зарегистрировать один или несколько серверов Team Foundation, на которых и будут создаваться проекты.
При создании нового проекта, Вам будет предложен на выбор один из шаблонов: MSF Formal или MSF Agile (так же разрабатываются другие шаблоны, не исключено, что вскоре будет доступен шаблон "eXtreme Programming"). Помимо этого, Вы можете изменить какой-либо из существующих шаблонов, подстроив его под свои нужды. Для этого в окне "Process Template Manager" выберите команду "Export" и сохраните выбранный шаблон по указанному Вами пути. В результате, Вы получите набор xml файлов с описанием сущностей, их характеристик, состояний, правил переходов из состояния в состояние, а так же форм для отображения и редактирования описанных сущностей. Изменив описания, добавьте модифицированный шаблон под новым именем при помощи команды "Import". Конечно, принципиально изменить среду Вам не удастся, но добавить несколько новых характеристик на основании существующих типов вполне можно. Так, например, во второй версии шаблона "MSF Agile" для всех сущностей было добавлено поле "Description", которого очень не хватало в первой версии.
Hint: При создании проекта не перепутайте, первая версия Agile шаблона называется "MFS Agile", вторая, исправленная - "MSF for Agile Software Development". Вот ее и нужно использовать. |
Так же для нового проекта будет создан SharePoint портал со следующими разделами:
- Библиотеки документов "Poject management", "Development", "Test" и "Templates". По большей части это либо пустые документы (например "Development Project Plan" - документ MS Project), либо простые шаблоны документов MS Word (.dot) для некоторых сущностей (например "Persona" или "Scenario").
- "Process Guidance" - краткая и легкая для восприятия документация в html-формате, описывающая методологию, для которой Вы создавали проект (в данном случае "MSF Agile"). Что-то типа "MSF для чайников".
- Некоторые предопределенные отчеты, которые будут формироваться при помощи SQL 2005 Reporting Services, например "My bugs" или "Issues".
- Пустые "Shared Web Parts" (кирпичики или модули, из которых формируют страницы SharePoint портала) для анонсов и ссылок. Естественно, все это очень просто можно было бы добавить и вручную.
Кроме того, к проекту будет добавлен раздел, содержащий с десяток отчетов, включающий как обыкновенные выборки work items (например "Мои ошибки" или "Мои задачи"), так и статистики, характеризующие ход выполнения проекта (например "Изменение качества работы").
Резюме
В этом выпуске мы кратко рассмотрели серверную часть Team System, позволяющую
организовать командную разработку проекта. Конечно,
этого совсем не достаточно, чтобы получить хоть какое-то реальное представление о работе
с VS Team System 2005. Поэтому, в следующе выпуске мы займемся клиентской частью, рассмотрев возможности,
которые Team System предоставляет различным участникам команды, а затем перейдем
к практике - последующие выпуски будут посвящены моему опыту создания проекта в Visual
Studio 2005, проблемам, с которыми мне пришлось столкнуться, вопросам, как лучше организовать управление проектом
при помощи work items, вобщем всем тем приятным и (или) разнообразным мелочам,
которые поджидают и Вас в этом интересном продукте.
Так что до следующего выпуска, приятной работы и удачи!
Subscribe.Ru
Поддержка подписчиков Другие рассылки этой тематики Другие рассылки этого автора |
Подписан адрес:
Код этой рассылки: comp.soft.prog.prgnotes Архив рассылки |
Отписаться
Вспомнить пароль |
В избранное | ||