Использование Open Source проектов для обеспечения качества ПО

В докладе рассмотрена возможность использования проектов open source для обеспечения качества ПО. Выделены основные особенности систем отслеживания дефектов (bug/issue tracking systems) и систем управления процессом разработки.

Одна из главных задач, которая стоит перед индустрией программных средств — это обеспечение качества выпускаемых ПС. В настоящий момент имеется достаточно много специальных инструментов обеспечения качества, которые в зависимости от назначения делятся на:

- системы отслеживания дефектов и запросов на изменение (bug/issue tracking systems);

- системы управления процессом разработки: системы трекинга задач (task-tracking systems) и системы управления проектами (project management software);

- средства тестирования (software testing tools).

Рассмотрим более детально возможности свободно-распространяемых ПС обеспечения качества.

Системы отслеживания дефектов и запросов на изменение (bug/issue tracking systems) предназначены для учета дефектов и запросов и их контроля на протяжении всего жизненного цикла.

Наиболее распространенными bug/issue tracking системами являются Bugzilla (лицензия Mozilla Public License), Mantis (GNU GPL), Trac (BSD), eTraxis (GNU GPL), IssueTrackerProduct (ZPL), Eventum(GNU GPL), Scarab(Apache/BSD), GNATS, GIFFT и др.

Общие особенности данных систем:

- построены по принципу «клиент-сервер» с использованием web-интерфейсов;

- независимы от ОС;

- поддержка различных коммерческих и свободно распространяемых СУБД (MySQL, MSSQL, PostgreSQL или Oracle);

- авторизованный доступ к системе позволяет организовать разделение прав доступа и назначить роли – разработчик, менеджер проекта, заказчик, тестировщик и пр.;

- автоматические уведомления по e-mail на различные типы событий, связанных с записями по дефектам;

- возможность добавления файлов к отчетам о найденных дефектах и запросах на изменение;

- история событий и внесения изменений по заданиям (дефектам) и пользовательские комментарии представлены в стиле форума;

- настраиваемый пользовательский интерфейс - возможность локализации, фильтрации данных;

- поддержка Active Directory (LDAP) (eTraxis, Bugzilla);

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

Таким образом, т.к. большинство систем отслеживания дефектов имеет почти одинаковую функциональность, то при выборе системы для вашего проекта следует руководствоваться не только программными требованиями, но и уделять особое внимание на удобство пользовательского интерфейса, наличие документации, и на соответствие жизненного цикла проекта (и дефектов в частности) модели жизненного цикла разрабатываемого программного средства. Оптимальным выбором может являться система, гибкая в конфигурации, например Bugzilla или Mantis.

К системам управления процессом разработки (трекинга задач и времени) относятся Project/Open, Achievo (GPL), WebCollab (GPL), TaskJuggler (), PHProjekt, PMI, dotProject.

Основными особенностями данных систем являются:

- построены по принципу «клиент-сервер» с использованием web-интерфейсов;

- управление проектами, задачами, участниками проектов, различными документами, ресурсами и шаблонами;

- персональный лист заданий (to-do list) для каждого из участников;

- регистрация затраченного времени (количество часов на проект, на задачу, недельная занятость), автогенерация еженедельных отчетов затраченного времени;

- календарь (индивидуальный, проектный), возможность составления рабочего расписания с учетом выходных и праздников;

- возможность генерации отчетов во внешние файлы (например, документы OpenOffice (Achievo), HTML и XML файлы (TaskJuggler), PDF-файлы); - анализ рисков;

- построение различной аналитической и статистической информации, возможность представления полученной информации в табличном и графическом виде (например, в виде графиков Гантта (GANTT) - поэтапного изображения продолжительности работ во времени);

- авторизованный доступ позволяет организовать разделение прав доступа, назначить роли – разработчик, менеджер проекта, заказчик, тестировщик и пр.;

- автоматические уведомления по e-mail на различные типы событий, связанных с записями по заданиям, созданием новых задач, и др.
Такие системы, как Project View (GPL), Trac (BSD), Track+ Issue Tracking System, то есть системы менеджмента качества, объединяют в себе функции bug-tracking систем и систем управления проектом.


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

Существующая особенность проектов Open Source распространяется и на ПС обеспечения качества: фирмы-разработчики предоставляют платную поддержку своих продуктов.



Кушниревская А.В., QA Engineer, SaM Solutions, Минск, Беларусь, h.kushnireuskaya@gmail.com


Сетевые решения. Статья была опубликована в номере 07 за 2008 год в рубрике бизнес

©1999-2024 Сетевые решения