Жизнь состоит из ошибок и их исправлений. Поскольку разработка ПО — часть жизни, то это правило применимо и тут.
Можно составить самый лучший план, потратить массу времени на алгоритмы и дизайн, но всё равно рано или поздно придётся столкнуться с какой-то непредвиденной проблемой. Поэтому лучший показатель устойчивости проекта — не правильное функционирование решения в штатных условиях, а реакция команды на обнаруженные ошибки.
Система отслеживания ошибок, которую ещё называют баг-трекером — важнейший инструмент управления проектом. Именно он позволяет пользователям принять посильное участие в создании продукта, сообщая разработчикам об обнаруженных недостатках.
Ресурс OpenSource.com составил список лучших открытых баг-трекеров, совмещающих в себе хорошую функциональность и устойчивость работы. Эти решения поддерживаются большими сообществами, поэтому за их будущее можно не волноваться.
Redmine
Redmine — открытое приложение для управления проектами, включающее в себя систему отслеживания ошибок. Функциональность решения такова, что оно подойдёт достаточно крупным компаниям.
Redmine позволяет:
- вести сразу несколько независимых проектов;
- оповещать пользователей системы об актуальных для них изменениях по электронной почте;
- определять статусы задач;
- организовывать учёт временных затрат на решение каждой задачи;
- создавать Wiki для каждого проекта;
- поддерживать множественную аутентификацию LDAP;
- и многое другое.
Задачи в Redmine могут быть взаимосвязаны. Предусмотрены следующие варианты связей: дублирование, простая связка, блокировка, предшествование, следование. Это охватывает практически все возможные варианты и позволяет оптимизировать работу в том числе и по исправлению ошибок.
Код программы опубликован на GitHub и распространяется по GPL v.2.
Bugzilla
Bugzilla — одна из наиболее популярных систем отслеживания ошибок. Она была создана ещё в 1998 г. компанией Netscape. В настоящее время ее поддержкой и развитием занимается Mozilla Foundation.
Bugzilla предоставляет пользователю следующие возможности:
- развитый API для электронной почты;
- мощная система конфигурирования;
- интеграция с системами управления;
- инструментарий составления отчётов;
- развитая система поиска;
- и многое другое.
Несмотря на некоторые недостатки, Bugzilla успешно применяется в весьма крупных проектах: Mozilla Firefox, GNOME, KDE, OpenOffice.org и даже развитие ядра Linux. Распространяется приложение на условиях Mozilla Public License.
Trac
Trac — система управления проектом со встроенным механизмом отслеживания ошибок, поддерживаемая компанией Edgewall Software. Концепция решения — разумный минимализм и модульное построение.
Trac включает в себя модули управления задачами, просмотра репозиториев и организации взаимодействия. При необходимости функциональность может быть расширена за счёт специальных дополнений.
Написанная на Python система Trac может интегрировать возможности по отслеживанию ошибок с Wiki и инструментарием управления версиями. Решение позволяет создавать дорожные карты и разнообразные отчёты.
Распространяется приложение на условиях модифицированный лицензии BSD.
Mantis
Mantis — распространённый баг-трекер, написанный на PHP. Также программа может использоваться для учёта заданий и контроля за их выполнением. Иногда это решение применяется для организации Helpdesk.
Программа отличается удобным и функциональным интерфейсом, хотя некоторые пользователи отмечают, что выглядит он достаточно «угрюмо». Тем не менее, юзабилити решения достаточно высоко — практически все операции требуют минимального числа действий.
Однако не все настройки программы можно выполнить через веб-интерфейс. Эффективная работа с приложением требует хотя бы начальных знаний PHP.
Mantis поддерживает работу с несколькими проектами. Несмотря на то, что система не содержит в себе Wiki, она может быть интегрирована со многими популярными платформами.
Исходный код опубликован на GitHub. Распространяется приложение на условиях GPL v.2.