Как указывают некоторые другие ответы, правильный вопрос здесь, вероятно, таков: почему у вас есть система отслеживания проблем? Хороший ответ на этот вопрос (не только с точки зрения управления, но и с точки зрения разработчика) необходим, если вы хотите, чтобы система отслеживания проблем действительно работала и регулярно обновлялась.
Во многих компаниях система отслеживания проблем в основном используется в качестве инструмента управленческой отчетности. Заставить программистов обновлять проблемы только для того, чтобы руководство могло запустить отчет, не очень хорошо. И принуждение программистов к обновлению проблем также не работает - у вас могут быть обновленные проблемы, но вы должны подвергнуть сомнению данные.
По моему опыту, единственный способ действительно заставить разработчиков (и тестировщиков, менеджеров и т. Д.) Эффективно использовать систему отслеживания проблем - это интегрировать ее в процесс разработки. Это означает, что выходные данные одной части процесса становятся входными данными для следующей части процесса.
Чтобы дать полномочия системе отслеживания ошибок, я бы предложил следующее:
- Разработчики работают только над ошибками / функциями, зарегистрированными в системе отслеживания проблем, и за ее пределами не выполняется никаких работ. Все идеи, проекты по рефакторингу, новые функции, настраиваемые инструменты и т. Д. Также должны быть зарегистрированы.
- Вопросы прорабатываются в порядке приоритета. Приоритет должен частично определяться руководством, но разработчики должны определенно иметь право голоса при определении приоритетов. Это особенно верно, когда речь идет о вопросах обслуживания и рефакторинга.
Что касается обработки, вы можете использовать что-то вроде следующего:
- статус «новый» означает, что разработчик еще не обнаружил проблему и все еще находится в очереди приоритетных проблем.
- Статус «назначен» означает, что он был назначен разработчику. Это может сделать разработчик или кто-то еще, например, руководитель группы. Я считаю, что хорошо работает, когда каждому разработчику назначается несколько проблем, и обычно это сочетание «тяжелой работы», такой как новые функции и легкая комплектация, такая как простые ошибки или некоторые простые работы по обслуживанию. Это позволяет разработчикам выбирать работу в зависимости от их настроения.
- Статус «в процессе» означает, что разработчик работает над проблемой. Только один или два вопроса на разработчика должны быть «в процессе» в любой момент времени.
- как только проблема будет решена, разработчик может изменить статус проблемы на «нуждается в тестировании» и сменить владельца на тестера. Это важный шаг, так как это также рабочая очередь тестировщиков.
- тестировщики могут изменить статус либо на «проваленное тестирование» и вернуть право собственности разработчику, что означает, что он переходит в начало очереди для разработчика, либо они могут изменить статус на «готов к развертыванию».
- проблемы со статусом «готов к развертыванию» могут быть объединены и выпущены в соответствии с циклом выпуска, кто бы ни отвечал за выпуски.
Вкратце: сделайте систему отслеживания проблем неотъемлемой частью процесса разработки, и вам не придется беспокоиться о проблемах, которые не обновляются.