Введение

Система отслеживания или система отслеживания дефектов — это программное приложение, которое ведёт учёт зарегистрированных программных ошибок в проектах разработки программного обеспечения. Её можно рассматривать как разновидность системы отслеживания задач. Многие системы отслеживания ошибок, такие как те, что используются большинством проектов с открытым исходным кодом, позволяют конечным пользователям напрямую сообщать об ошибках. Другие системы используются исключительно внутри компании или организации, занимающейся разработкой программного обеспечения. Как правило, системы отслеживания ошибок интегрируются с другим программным обеспечением для управления проектами. Система отслеживания ошибок обычно является необходимым компонентом профессиональной инфраструктуры разработки программного обеспечения, а последовательное использование системы отслеживания ошибок или задач считается одним из признаков эффективной команды разработчиков.

Создание

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

Использование

Основным преимуществом системы отслеживания ошибок является предоставление четкого централизованного обзора запросов на разработку (включая как ошибки, так и улучшения; граница между ними часто размыта) и их статуса. Приоритетный список ожидающих задач (часто называемый бэклогом) предоставляет ценную информацию при определении дорожной карты продукта или, возможно, просто "следующего релиза". В корпоративной среде система отслеживания ошибок может использоваться для создания отчетов о продуктивности программистов в исправлении ошибок. Однако это иногда может давать неточные результаты, поскольку различные ошибки могут иметь разную степень серьезности и сложность. Серьезность ошибки может не быть напрямую связана со сложностью ее исправления. Мнения менеджеров и архитекторов могут различаться. Локальный отслеживатель ошибок (LBT) обычно представляет собой компьютерную программу, используемую командой специалистов по поддержке приложений (часто службой поддержки), для отслеживания проблем, сообщаемых разработчикам программного обеспечения. Использование LBT позволяет специалистам поддержки отслеживать ошибки на их "собственном языке", а не на "языке разработчиков". Кроме того, LBT позволяет команде поддержки отслеживать конкретную информацию о пользователях, обращавшихся с жалобами – эта информация может не всегда требоваться в очереди разработки. Таким образом, при использовании LBT существует две системы отслеживания.

Часть интегрированных систем управления проектами

Системы отслеживания ошибок и инцидентов часто внедряются как часть комплексных систем управления проектами. Такой подход позволяет интегрировать отслеживание и исправление ошибок в общий процесс разработки продукта, исправлять ошибки в нескольких версиях продукта, а также автоматически формировать базу знаний о продукте и заметки о выпуске.

Распределенное отслеживание ошибок

Некоторые системы отслеживания ошибок разработаны для использования с распределёнными системами контроля версий. Эти распределённые системы отслеживания ошибок позволяют удобно просматривать сообщения об ошибках, добавлять их в базу данных или обновлять, даже когда разработчик не подключен к сети. Fossil и Veracity включают в себя распределённые системы отслеживания ошибок. В последнее время коммерческие системы отслеживания ошибок также начали интегрироваться с распределённым контролем версий. Например, FogBugz обеспечивает эту функциональность через инструмент управления исходным кодом Kiln. Хотя вики и системы отслеживания ошибок обычно рассматриваются как разные типы программного обеспечения, ikiwiki также можно использовать как распределённую систему отслеживания ошибок. Она может управлять как документами, так и кодом в интегрированной распределённой манере. Однако её возможности поиска и запросов не так развиты и удобны, как в некоторых других, нераспределённых системах отслеживания ошибок, таких как Bugzilla. Аналогичные утверждения можно сделать и об org-mode, хотя это и не вики-программное обеспечение в строгом смысле этого слова.

Отслеживание ошибок и управление испытаниями

В то время как традиционные инструменты управления тестированием, такие как HP Quality Center и IBM Rational Quality Manager, включают в себя собственные системы отслеживания дефектов, другие инструменты интегрируются с популярными системами отслеживания дефектов.