Задача любого управления — достижение заданных целей в условиях ограниченных ресурсов, и решение этой задачи не возможно без планирования работ. Планирование можно вести на различных уровнях. Для большинства проектов можно выделилить два уровня: уровень проекта и уровень задач.
План уровня проекта — это уровень для заказчика. Он состоит из частей решения бизнес-задачи, элементами такого плана могут быть наборы функциональных требований заказчика к системе, реализуемые на каждом этапе разработки. Здесь заказчик принимает активное участие в описании требований, составлении плана, обсуждении сроков, расстановки приоритетов. На уровне этого плана полезно зафиксировать даты релизов.
План уровня задач — это уровень для разработчиков. В большинстве случаев разработчика мало интересуют бизнес-задачи. Для разработчика важно что и как нужно делать сейчас. В такой план можно поместить подзадачи по реализации сложной функции системы, ошибки, которые нужно исправить.
Хорошими помошниками в ведении планов проекта являются трекинговые системы. Систем таких огромное количество: платных (JIRA, TrackStudio…) и бесплатных (Trac, Bugzilla…), web-based и настольных, написанных различных языках программирования. Мне довелось поработать с двумя популярными системами: Trac и Jira. Обе системы вполне подходят для ведения плана уровня задач (Tasks, Tickets), но возможность группировки заданий разработчикам в версии и вехи (Milestones, Versions) вполне может использоваться для ведения плана уровня проекта.
Системы эти очень разные. Trac — бесплатная, написана на Python. Jira — коммерческая (от $1200 до $4800), написана на Java. Отличаются они и по возможностям:
|
Trac |
JIRA |
| Возможность вести несколько проектов |
нет |
да |
| Интеграция с системой контроля версий |
Да, SVN, просмотр кода и изменений (diff) через Web |
Да, SVN/CVS/Perforce/VSS
Просмотр кода и изменений (diff) через Web при помощи Fisheye
|
| Отчеты |
Настраиваемые. Редактирование отчетов на уровне SQL-запросов к базе. Инструмент Timeline с возможностью сквозного просмотра всех изменений в проекте по времени. |
Настраиваемые. Визуальный редактор, возможность импорта в Excel. Возможность построения графиков. Dashboard с гибкими возможностями добавления фильтров и различных отчетов. |
| Поддержка ведения документации |
Да, интегрированная Wiki, возможность вставки в статьи ссылок на задачи в плане и изменения (changesets) в системе контроля версий. Все текстовые поля в системе с возможностью Wiki-форматирования. |
Все текстовые поля в системе (например текст задачи и комментарии) с возможностью Wiki-форматирования.
Тесная интеграция с Confluence - enterprise wiki от Atlassian
|
| Планирование версий и релизов |
Планирование версий (Versions) и вех (Milestones). Возможность привязки задачи к компонентам. Возможность редактировать статусы, приоритеты, «строгость» (Severities) задач. Возможность задавать задачам дополнительные поля. |
Планирование вех (Milestones). Возможность привязки задачи к компонентам. Возможность редактировать статусы, приоритеты. Возможность задавать задачам дополнительные поля. Возможность редактировать workfollow — граф состояний задачи |
Trac будет более удобным для случаев, когда небольшая группа работает над одним достаточно крупным проектом. Излишняя формализация процессов, отчеты и прочее здесь не нужны и возможностей трекера «из коробки» вполне хватает. А возможность вести документацию проекта в онлайн просто незаменима. Кроме того — в интернете есть проекты вроде http://assembla.com, предоставляющие всем желающим бесплатный svn-хостинг, интегрированный c Trac.
JIRA очень понравилась гибкостью настроек, фильтров, отчетов, удобным dashboard. Отлично реализована многопроектность. Конечно, java и цена за лицензию наверняка несколько отпугивают потенциальных пользователей. Но для тех, кому важен контроль за множеством проектов вполне могут себе позволить даже Enterprise-лицензию, стоимость которой сравнима со стоимостью 3х-4х человеко-месяцев разработки, за которые создать свой продукт или достаточно развить какой-нибудь из известных мне бесплатных конечно не получится.
Оригинал статьи: http://ilazarev.ru/blog/2007/11/17/ob-upravlenii-veb-proektami-jira-vs-trac/