О Project management и issue tracking

Обсуждаем TrackStudio по-русски

О Project management и issue tracking

Postby admin » Fri Jan 12, 2007 3:56 pm

На рынке существует огромное количество project management и issue tracking систем, но пользователи (и производители) часто произвольно используют эти термины, что еще больше размывает разницу между понятиями.

Это приводит к таким вопросам как:
- а можно ли использовать MS Project для управление разработкой ПО
- можно ли использовать TrackStudio вместо MS Project
- что лучше - MS Project или TrackStudio

Предметная область у этих систем очень похожа (контроль задач и сроков), но в большинстве случаев они не могут заменить друг друга.

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

Для общения с заказчиком project management система - идеальный вариант:

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

- заказчик не видит лишней информации. Заказчику важно _состояние_ проекта, его не интересует _процесс_ написания. Поэтому не нужно в project management системе дробить "генератор отчетов" на 100 подзадач, описывать состояние каждой из них, переписку и т.п. - все равно заказчику эта информация бесполезна.

Но для программистов уровень project management - это сплошная абстракция:

- программисты хотят знать не что должно быть в итоге, а что им прямо сейчас нужно делать. Программистам нужно описание _процесса_ (сделай диалог такой-то, исправь багу, подвинь кнопку на 5 пикселов вправо), а не описание _результата_.

- программисты не могут сказать на сколько процентов у нас готов генератор отчетов, они могут более-менее точно сказать сколько часов у них займет реализация данного конкретного изменения (подвинуть кнопку вправо), причем без учета тестирования и исправления ошибок.

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

Значит, должен быть отдельный человек (project manager) который и будет заниматься переводом с языка "что должно быть" на язык "что нужно сделать" и обратно. Он должен сначала разбить задачу "написать генератор отчетов" на 20-30 подзадач, назначить ответственных (разные части генератора могут делать разные люди), периодически контролировать состояние работы, создавать новые задачи по мере необходимости и т.п. Именно для этого и нужна issue tracking система.

Периодически он должен оценивать сколько еще задач не сделано, на какую функциональность change requests еще не писались, что уже протестировано, как часто обнаруживаются новые проблемы, сколько пользователей работало с системой и т.п. делать свою оценку процента завершенности и сообщать ее клиенту (например, вносить в отчет MS Project).

TrackStudio позволяет интегрировать issue tracking и project management - для этого нужно создать дерево проектов в TrackStudio, после чего в каждом из этих проектов менеджер дает конкретные задания для программистов. TrackStudio позволяет на основе данных программистов считать затраты времени на любую часть проекта, устанавливать сроки и бюджеты, контролировать их выполнение.

TrackStudio даже позволяет выполнять экспорт данных в MS Project, при этом можно указать какие именно категории задач должны включаться экспортироваться (например, сообщения об ошибках не включаем). Но польза от использовании экспорта в MS Project для автоматического рисования отчетов минимальна по следующим причинам:

- по мере выполнения работ задачи создаются постепенно, issue tracker не знает какие задачи в систему не внесли, насколько интенсивно тестировалось приложение, как часто тестировщики находят проблемы, показывали ли систему пользователям и т.п.

- задачи по разным подпроектам выполняются практически постоянно с начала старта проекта до его окончания. В MS Project это выглядит как дробно-кусочный график, где каждая работа выполняется в течении всего времени работы над проектом (ведь с точки зрения программиста это именно так и есть).

Ответы на вопросы в начале статьи:

- MS Project можно использовать для управления разработкой ПО если заказчик и программисты говорят на одном языке: заказчик готов ставить конкретные задачи программистам или программисты готовы сами себе ставить задачи на основе ТЗ.

- Используйте TrackStudio для составления/корректировки планов для заказчика. Возможности по обработки первичной информации (сколько времени уходит на решение задачи, какого рода запросы клиентов мы чаще всего не можем решить и т.п.) значительно превосходят большинство конкурирующих продуктов, но _автоматически_ генерировать отчеты для клиента на основании любой issue tracking системы - это плохая идея. По тем же причинам нельзя генерировать "руководство пользователя" на основе исходного кода, комментариев или переписки программстов.

- Если заказчики не могут выделить в проекте 100-200 подпроектов, состояние которых они готовы контролировать, то использование MS Project будет излишеством, уж лучше Excel. Если внутренняя организация команды разработчиков простая (мало программистов, у каждого свой четко выделенный кусок работ, программисты сами общаются с заказчиком) - использование issue tracking тоже будет лишним и можно попробовать обойтись Excel.

А вот если и заказчик хочет детальный контроль, и программистов много - надо искать систему, которая бы устроила и клиента, и программистов. Начать можно с TrackStudio :-)
Last edited by admin on Sat Jan 13, 2007 2:04 pm, edited 1 time in total.
Maxim Kramarenko (mailto: maximkr@trackstudio.com)
TrackStudio - Hierarchical Bug & Issue Tracking Software
http://www.trackstudio.com
admin
Site Admin
 
Posts: 8056
Joined: Thu Jan 01, 1970 3:00 am
Location: Smolensk, Russia

Postby mvasenkov » Fri Jan 12, 2007 4:11 pm

От лица программистов добавлю, что речь в тексте идет о кодерах, а не о программистах. Программистам как раз вИдение целой картины важна.
Skype (RU): max.vasenkov
Email/Jabber: max.vasenkov@gmail.com
twitter: @winzard
mvasenkov
TrackStudio Support
 
Posts: 374
Joined: Tue Jan 14, 2003 5:57 pm
Location: Smolensk

Postby admin » Fri Jan 12, 2007 4:27 pm

mvasenkov wrote:От лица программистов добавлю, что речь в тексте идет о кодерах, а не о программистах. Программистам как раз вИдение целой картины важна.


Но свои задачи все равно ближе к телу. Попытки подписать разработчика на получение e-mail notification при изменении "чужих" частей проекта частенько заканчивается вопросом типа "как отписаться от этого спама" :-)

По поводу программистов/кодеров недавно в gazeta.ru была пара статей с большим количеством комментариев:

http://gazeta.ru/techzone/2006/12/14_e_1153919.shtml
http://gazeta.ru/techzone/2006/12/22_e_1180719.shtml
Maxim Kramarenko (mailto: maximkr@trackstudio.com)
TrackStudio - Hierarchical Bug & Issue Tracking Software
http://www.trackstudio.com
admin
Site Admin
 
Posts: 8056
Joined: Thu Jan 01, 1970 3:00 am
Location: Smolensk, Russia

Postby admin » Fri Nov 30, 2007 1:46 pm

Обсуждение оценки расчета времени выполнения проекта, MS Project, evidence-based scheduler:

http://maximkr.livejournal.com/11192.html
Maxim Kramarenko (mailto: maximkr@trackstudio.com)
TrackStudio - Hierarchical Bug & Issue Tracking Software
http://www.trackstudio.com
admin
Site Admin
 
Posts: 8056
Joined: Thu Jan 01, 1970 3:00 am
Location: Smolensk, Russia

Postby a-b-c » Sat May 15, 2010 1:38 pm

В общем и целом согласен - Project management и Issue tracking - это абсолютно разные задачи с разными целевыми аудиториями.

Вопрос - можно ли хорошо сынтегрировать эти две области?
Допустим, связать MS Project и Trackstudio, чтобы одна задача в Project соответстовала минипроекту в Trackstudio, минипроект состоял из конкретных "программистских" задач, и на основе задач и бюджетов для каждой задачи в TS можно было получить начало, длительность и процент выполнения исходной задачи в Project? Или это в принципе возможно только в ручном режиме?

Конечная цель - получать обратную связь от исполнителей в виде оценки длительности и процента выполнения больших задач в Project.
TrackStudio 5.0.5 20150422 SA x64/Windows/PostgreSQL 9.4
a-b-c
 
Posts: 696
Joined: Fri Jul 10, 2009 10:15 am
Location: Moscow, Russia

Re:

Postby admin » Mon May 17, 2010 11:45 am

a-b-c wrote:Вопрос - можно ли хорошо сынтегрировать эти две области?
Допустим, связать MS Project и Trackstudio, чтобы одна задача в Project соответстовала минипроекту в Trackstudio, минипроект состоял из конкретных "программистских" задач, и на основе задач и бюджетов для каждой задачи в TS можно было получить начало, длительность и процент выполнения исходной задачи в Project? Или это в принципе возможно только в ручном режиме?

Конечная цель - получать обратную связь от исполнителей в виде оценки длительности и процента выполнения больших задач в Project.


Теоретически экспорт из TrackStudio в MS Project есть, там простой класс на 5 КБ и можно написать любой экспорт. Но из-за несколько разных моделей TrackStudio/MS Project там есть сложности.
Maxim Kramarenko (mailto: maximkr@trackstudio.com)
TrackStudio - Hierarchical Bug & Issue Tracking Software
http://www.trackstudio.com
admin
Site Admin
 
Posts: 8056
Joined: Thu Jan 01, 1970 3:00 am
Location: Smolensk, Russia


Return to TrackStudio Support [Russian]

Who is online

Users browsing this forum: No registered users and 1 guest