Разделы портала

Онлайн-тренинги

.
Bugzilla — утилитарная функциональность.
03.10.2008 21:57

Автор: Любунь Роман

Когда я пришел на свою первую работу, меня в первую очередь ознакомили с тем, без чего не может обойтись ни один человек на фирме. Ею оказалась моя первая в жизни «система управления ошибками» (СУО) — Bugzilla.

  • Интерфейс Bugzilla
  • Жизненный цикл бага (Bug lifecycle) в Bugzilla
  • Поиск в Bugzilla
  • Администрирование Bugzilla
  • Безопасность в Bugzilla
  • Заключение о Bugzilla

Сначала она мне жутко не понравилась, после схем и модных окошек WindowsXP Bugzilla выглядела как старый и всеми забитый продукт с очень скудным (в плане графики) интерфейсом. Вскоре, кроме моей основной работы, я стал администратором Bugzilla (если так можно сказать). Я начал разбираться в настройках программы так, как разбирается человек, который впервые заглянул внутрь компьютера. Теперь я могу сказать, что за этим простым интерфейсом скрывается достаточно мощный инструмент. Эта статья предназначена для людей, которые уже читали описание некоторых СУО и знают основы подобных систем, но никак не могут определиться с выбором. Выбор СУО достаточно ответственное дело, потому что, если вы уже выбрали СУО, а потом выяснилось, что вам не хватает некоторых опций, то вы будете вынуждены перенести базу багов на другую СУО, а это задача очень трудоёмкая, а иногда и невыполнимая. У меня была такая проблема, когда мне поручили найти замену Bugzilla (надо было найти СУО с поддержкой custom fields) и, когда мы перешли на новую систему мы еще долго вспоминали о старой и доброй Bugzilla. Некоторые удобные решения использованные в Bugzilla новая СУО не поддерживала, и нам пришлось с этим смирится. Итак, начнём.

Описание.

Название: Bugzilla
Версия: 2.16.6
Разработчик: The Mozilla Organization
Сайт: http://www.bugzilla.org
Распространение: freeware

Создание нового бага в Bugzilla
Рис. 1. Создание нового бага в Bugzilla.

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

1. Интерфейс Bugzilla.

Интерфейс выглядит довольно серо, но поскольку графика отсутствует, страницы грузятся очень быстро. Все элементы на страницах удобно расположены, информация читается очень легко. На страницах минимум подсказок, они удобно спрятаны за ссылками названий полей (рис. 2).

Ссылка на раздел в справке Bugzilla
Рис. 2. Ссылка на раздел в справке Bugzilla.

На каждой странице есть своего рода меню (рис. 3), в котором расположены ссылки на часто используемые действия (добавить баг, поиск, и т.д.) либо поиски (например, если вам постоянно надо просматривать список исправленных (fixed) багов по-вашему проекту, то вы задаете параметры поиска и сохраняете их в виде ссылки. Потом вам надо будет просто периодически кликать по нему и смотреть на результаты).

Меню Bugzilla
Рис. 3. Меню Bugzilla.

2. Жизненный цикл бага (Bug lifecycle) в Bugzilla.

Он тщательно продуман, количество доступных параметров (рис. 4) при создании бага больше, чем достаточно (сколько мы не усложняли жизненный цикл, нам их с головой хватало).

Редактирование свойств бага в Bugzilla
Рис. 4. Редактирование свойств бага в Bugzilla.

Для каждого бага ведется история изменений (рис. 5), можно просмотреть зависимость (depend) бага (рис. 6) от остальных багов (в виде дерева) либо посмотреть, не заблокирован (block) ли данный баг другим багом. Причем, если вы указали, что баг #4 зависит от бага #5, то система автоматически проставит эту зависимость не только в баге #4, но и в баге #5.

История изменения бага Bugzilla
Рис. 5. История изменения бага в Bugzilla.

Зависимость данного бага от остальных багов Bugzilla
Рис.6. Зависимость данного бага от остальных багов в Bugzilla.

Для каждого компонента можно назначить отвечающего как за разработку (Initial owner), так и за тестирование (Initial QA contact), это очень удобно, когда каждый тестер тестирует отдельный компонент. Еще есть одна маленькая приятность, когда вы хотите добавить комментарии к багу и вставить в него ссылку на другой баг, то вам достаточно просто написать bug #.

3. Поиск в Bugzilla.

Одна из самих сильных сторон Bugzilla. Стоит выделить возможность составления сложных запросов. Можно найти, что угодно, только надо знать, как правильно сформулировать запрос. Есть возможность одним кликом менять любые параметры сразу для нескольких багов (Change Several Bugs at Once). Мне этого очень не хватало, когда мы перешли с Bugzilla на Jira. Все остальное, как и у других СУО.

Поиск в Bugzilla
Рис. 7. Поиск в Bugzilla.

4. Администрирование Bugzilla.

Пожалуй, самая запутанная и сложная часть. Не всегда понятно какая опция что и как делает. Но если один раз сесть и разобраться во всех настройках, то потом все кажется очень простым. Есть такая страница параметров (parameters), где собрано почти 70 настроек (рис. 8). Когда я впервые зашел на эту страницу, мне сразу захотелось оттуда уйти. Эти настройки почти не сгруппированы, они выглядят, как один большой список, но там есть все что нужно.

Страница parameters в Bugzilla
Рис. 8. Страница parameters в Bugzilla.

Опишу некоторые опции:

  • Есть возможность подключить LDAP.
  • Есть возможность модифицировать (конструировать) шаблон письма (notification), которое отправляется при редактировании бага.
  • Есть возможность настроить значение поиска по умолчанию (когда вы делаете новый поиск).
  • Есть возможность настроить значение полей нового бага (определённые поля уже будут иметь некоторые значения).
  • Есть возможность включить/выключить показ некоторых полей (milestone, QA contact, votes, OS, и т.д.) при создании нового бага.
  • Есть опции, которые заставляют комментировать (писать комментарии) при редактировании (смене статуса) бага.

Security в Bugzilla.

Довольно простой, настроить его можно только для отдельного пользователя. Все остальное, как и у других СУО.

Права пользователя в Bugzilla.
Рис. 9. Права пользователя в Bugzilla.

Заключение о Bugzilla.

Bugzilla — это хорошо продуманная и оттестированная система (за 1 год я почти не нашел там багов), с одной стороны она довольно простая, с другой там есть все, что нужно для баг трекинга типичного проекта. Могу порекомендовать для тех, кому необходима простая и надёжная СУО. Сейчас Bugzilla используют 337 компаний и организаций по всему миру, среди них есть такие компании как: NASA, Id Software, IBM и софтверные проекты: Mozilla, Linux Kernel, Gnome, KDE, Apach Project, Open Office. Удачи вам в выборе системы.

---


Компания в которой работает автор

IntelliArts (www.intelliarts.com) is a custom software development and consulting company based in Lviv, Ukraine. Most of our software development activities are related with Java platform. We create various solutions from embedded systems (automotive, telematics, home gateways and so on) to enterprise level applications (document management, global electronic publishing etc).

Company mission is to meet requirements of our customers and provide high quality yet cost-effective custom software solutions and consulting services.

In order to achieve company mission we are consistent with next values:

  • quality — we aim at providing the highest quality of service in the every phase of customer relationship from first contact to follow up support.
  • customers — stand by our customer's business goals, identify and understand their business needs and architect solutions, which efficiently addresses those needs.
  • partnership — we focus not only on developing and maintaining the products and services we offer, but also on building long term relationships.
  • know-how to develop software — we know how to use methodologies and technologies that fit the customers' requirements and business needs.
  • fast communication — we understand the importance of communication and client support, and maintain a 24-hour feedback policy. This ensures that any request or question received is answered within 24 hours.
  • continious self-improvement — the IT industry is very dynamic, so we are we are very sensitive to the changes around us to leave at the leading edge in our industry.

These values permeate our thinking, our planning, our behavior and determine our "day-in day-out" decision making.

Having entrusted us with the development of the software be sure to gain the best combination of quality, reliability and rapidity. We are confident that working with us you will have the most positive impressions.