Я давно искал ответ на этот вопрос и с тех пор разработал очень аккуратную и простую систему, которая отвечает следующим ключевым задачам:
Цели в порядке важности:
- Сделайте возможным ввод нового задания / ошибки настолько легко, насколько это возможно, чтобы я мог записать его, как только обнаружу или придумать, и вернуться к кодированию, прежде чем потерять свое место.
- Позволяет легко видеть и управлять проблемами без большого количества поиска, щелчка, детализации.
- Упростите связь с контролем версий, чтобы позже я смог узнать, какие изменения были внесены для решения проблемы, или какая задача или ошибка привели к конкретному изменению в коде.
- Сделайте его относительно простым в настройке: минимальная установка и настройка и минимальная цена.
(3 и 4 менее важны, и я был бы в порядке с системой, которая не предоставляет их, но эта делает).
Шаг 1: Получить проект в Bitbucket
Я использую bitbucket для отслеживания проблем и для контроля версий git (например, для проекта iOS в XCode). Я посмотрел на FogBUGz (о котором я читал в течение многих лет на JoelOnSoftware) и GitHub и других, но битбакет, кажется, имеет лучшие бесплатные функции для небольших команд.
Шаг 2. Использование отслеживания ошибок Bitbucket в проекте
Далее я настроил отслеживание проблем в том же проекте с битбакетом. Так что в моем проекте теперь есть git-репозиторий и система отслеживания ошибок.
Шаг 3: Сделайте отслеживание проблем простым!
Для этого я использую Bitbucket Cards, который является хорошим, простым канбан-подобным интерфейсом к проблемам Bitbucket. Вам просто нужно войти в свою учетную запись Bitbucket и настроить нужные столбцы. У меня есть четыре столбца: Backlog, Next, Bugs и Resolved. (Я думаю о слиянии ошибок с отставанием, но пока не обращайте на это внимания)
(Это изображение из блога Bitbucket Cards, а не из моего проекта, поэтому столбцы отличаются от тех, которые я использую)
Bitbucket Cards позволяет вам установить очень простой фильтр для каждого списка, в котором вы выбираете статус (ы) и вид (ы) проблем, которые идут в столбце карты. Итак, open
вопросы о статусе подобного рода bug
находятся в столбце « Ошибка» .
(Это из моего проекта: вот как я выбираю то, что идет в столбце Bug)
Что действительно круто, так это то, что когда вы перетаскиваете карту из одного столбца в другой, она автоматически изменит статус проблемы, которую представляет карта, в соответствии с определением в столбце назначения.
Еще одна приятная вещь в Bitbucket Cards - это то, что она не легко истекает. Это очень важно, поскольку цель всей этой системы - упростить ее - поэтому эта система работает для меня, а не для меня. Я открываю закладку на странице своей карты, и она остается открытой на вкладке Chrome в течение всего дня.
Это заботится о моей второй цели.
Шаг 4: Свяжите это с контролем версий.
Проблемы с Bitbucket аккуратно связаны с контролем версий (как и у большинства конкурентов), поэтому, когда я закончу работать над проблемой, я фиксирую ее в git с сообщением типа «Добавлено тессо в whatsit. Исправления # 245». Если я фиксирую это, затем нажимаю на него, затем перезагружаю страницу «Карты Bitbucket», я вижу, что проблема переместилась в столбец «Решено». Здорово.
Там моя третья цель выполнена.
Шаг 5: Упростите СОЗДАНИЕ проблем.
Вы, вероятно, думаете, что вся эта установка уже слишком сложна в настройке, и почему я хочу добавить в процесс еще одно веб-приложение. Хорошо, помните мою основную цель выше: я хочу, чтобы было так легко добавить задачу, чтобы я не терял ход мыслей до того, как попал в текстовую область, чтобы набрать ее, и при этом я не хочу терять свое место в код к тому времени, когда я закончу.
Теперь Bitbucket Cards позволяет мне довольно легко создавать задачи , но щелкнуть мышью немного, чтобы полностью достичь цели # 1. Вы должны нажать Создать проблему; затем появляется модальный редактор; после ввода названия проблемы необходимо прокрутить вниз, чтобы указать вид (ошибка / задание) и приоритет; затем нажмите создать.
Вместо этого я решил использовать второе приложение Bitbucket под названием taskrd .
Вы можете настроить taskrd, указав свой логин Bitbucket, установить его в закладке и на вкладке и держать его открытым весь день, как карты Bitbucket. Taskrd имеет гораздо более простой рабочий процесс для добавления новой задачи, просто введите ее, при желании установите вид и приоритет и нажмите кнопку Добавить.
(это изображение из блога Taskrd)
Теперь можно утверждать, что не стоит усилий по настройке Taskrd вместо использования Bitbucket Cards или даже собственной системы ввода проблем Bitbucket. В конце концов, с помощью Taskrd мне нужно щелкнуть вкладку в моем браузере и нажать «Перезагрузить» на моей странице с помощью карт Bitbucket, чтобы обновить и получить новую проблему, добавленную в приложение Taskrd. Но на самом деле, я нахожу, что я обычно нахожусь в режиме или другом: либо я использую Bitbucket Cards для организации того, что я делаю дальше, либо для просмотра списка ошибок, либо я занят кодированием и вводом задач / ошибки, как они происходят со мной - все в режиме быстрого огня. Для этого второго режима работы Taskrd великолепен: я просто держу его открытым на отдельном мониторе и быстро выявляю проблемы во время работы.
Так что это охватывает цель № 1.
Моя последняя цель была легкой / дешевой. Ну, это дешево: все это бесплатно. Bitbucket имеет бесплатные частные репозитории на срок до пяти пользователей, а другие приложения были бесплатными. Установка кажется нетривиальной на основании вышесказанного, но на самом деле самой сложной частью была настройка git для отправки в репозиторий bitbucket, который везде будет одинаковым. Мне не нужно было ничего устанавливать, и подключить оба приложения к моему хранилищу bitbucket было довольно просто. Настройка столбцов карточек, как они мне нравились, заняла немного времени, но это было не сложно.
Читая это назад, я мог бы показаться чем-то вроде шилла для Bitbucket, но я действительно не хотел этого делать. Просто я использовал этот процесс в течение нескольких недель - после нескольких лет попыток различных конфигураций, чтобы отследить, что я делаю - и я действительно копаю его, поэтому подумал, что найду время, чтобы выложить его для других.