Как использовать trac для заданий и задач - PullRequest
2 голосов
/ 20 апреля 2011

Я работаю в компании, оказывающей техническую помощь, и это наш общий рабочий процесс: ребята в колл-центре или в магазине ловят просьбу клиента о помощи и при каждом запросе открывают задание. После этого технические специалисты работают над заданием и добавляют к нему множество задач. Как только назначение объявлено закрытым и утверждено администрацией, оно отправляется в бухгалтерию, которая выставляет счет за назначение (почти автоматически).

Для краткости: назначение = проблема, задача = действие, предпринятое для решения проблемы

назначение (открытое колл-центром)
| _______ задание 1 (техник А)
| _______ задача 2 (техник Б)
| _______ задача 3 (техник С)
...
| _______ TaskX (техник A)

Задача имеет в основном следующие атрибуты:
- описание
- имя техника
- потрачено часов
- потрачено километров

У нас обычно ~ 1500 заданий и ~ 5000 заданий в год.

В настоящее время все эти процессы обрабатываются специальным приложением, которое мы создали за это время. Мне интересно, можем ли мы улучшить приложение нашей компании, используя и интегрируя Trac (который уже используется отделом разработки для обработки внутренних компонентов), который имеет некоторые интересные готовые функции, такие как xml- RPC и рабочий процесс.

Теперь крупные сделки:
1) из-за количества назначений я не могу связать назначение с проектом trac.
2) Если я привязываю каждое назначение к билету отслеживания, тогда задачи должны быть привязаны к комментариям к билету отслеживания, но в них нет возможности добавлять потраченные часы и километры.
3) Похоже, что нет плагина для настройки комментариев

Как я пытался их решить:
a) Я попытался настроить комментарий с помощью этого плагина: он работает довольно хорошо, но я не могу получить хорошую структуру данных, когда я запрашиваю trac через xml-rpc из приложения компании, и не ясно, как много времени было потрачено на каждый «комментарий». Плюс нет возможности прибавить километры
б) Я нашел Trac Remote Plugin , и это кажется интересным, потому что я мог создать два проекта trac, один для назначений и один для задач, а затем связать задачи с назначением, используя ссылку intratrac. Жаль, что не работает для меня .

Как вы думаете, trac - хороший выбор? Вы видите какой-нибудь другой способ, которым я могу использовать это? Есть ли какая-либо другая система отслеживания (для Linux), которая лучше соответствует нашим потребностям?

1 Ответ

5 голосов
/ 21 апреля 2011

Вы сможете сделать это с помощью Trac, если подойдете к проблеме с несколько иной точки зрения.

Вместо того, чтобы относиться к Назначениям и Задачам как к разным вещам, позвольте им обоим быть представлены в билете.Каждый билет имеет настраиваемое поле «Тип».Вы можете сделать «Назначение» и «Задача» двумя вариантами для этого поля.Это должно позволить вам сохранять назначения и задачи в одном и том же экземпляре Trac, но при этом иметь возможность различать их и запрашивать каждую группу в отдельности.Если вы хотите, вы можете даже добавить некоторый пользовательский Javascript / CSS, который отображает страницу «Просмотр заявки» немного по-другому для назначений и задач (например, если вы хотите немного изменить цвета, чтобы обеспечить дополнительные визуальные подсказки).

Сложная задача - взять разные билеты, из которых состоит Назначение, и связанные с ними Задачи и убедиться, что все они связаны друг с другом должным образом.К счастью, есть плагин, который может помочь вам сделать это.Возьмите плагин Trac-MasterTickets .Это добавит два поля к вашим заявкам, по умолчанию с названиями «блоки» и «заблокировано».Они используются для выражения зависимостей билетов.Если вы создаете (например) билет № 8 и перечисляете «# 4» в поле «заблокировано», вы указываете, что билет № 4 должен быть заполнен до того, как # 8 может быть завершено.Когда вы делаете это, Trac автоматически обновляет билет № 4 и перечисляет № 8 в поле «блоки».Теперь у вас есть перекрестная ссылка между двумя билетами, которая указывает на зависимость.Это должно быть то, что вам нужно, чтобы связать задания и задачи.Вы можете изменить имена этих полей на что-то вроде «Подзадачи» и «Родительское назначение».Когда вы создаете новое задание, вы можете указать присвоение, которому оно принадлежит, и Trac автоматически свяжется с ним.Вы даже можете использовать DynamicFieldsPlugin , чтобы отображать поле «Подзадачи» только для заявок типа «Назначение» и отображать поле «Родительское назначение» только для билетов типа «Задача».

...