Общая схема процесса обработки ошибок в дистрибутиве РОСА Desktop
Содержание
Введение
Поскольку одним из основных вопросов пользователей является "Что такое РОСА относительно Мандривы?", то мы представляем схему взаимодействия команд РОСЫ и Мандривы на базе процесса исправления ошибок и улучшения качества, как одного из наиболее типичных процессов разработки и развития дистрибутивов Linux. Данная схема поможет понять процессы взаимодействия РОСА и Мандрива как различных составных частей одного целого. При просмотре и усваивании данной информации, пожалуйста, помните, что: некоторые элементы процесса находятся в активной разработке и изменении, а некоторые элементы только планируются. Всё это необходимо осознавать на фоне происходящих событий и нелёгких перемен, касающихся дистрибутива Мандрива, составной частью которого является РОСА. На сегодняшний день начато комплексное тестирование ROSA и Mandriva тремя тестовыми командами. Особое внимание уделено разработке возможностей для пользователей, желающих внести клад в улучшение качества дистрибутива.
Весь процесс упрощённо можно представить так:
Improver
ВНИМАНИЕ! В предыдущей версии Импрувера встретилась такая ошибка.
Пакет с исправленной ошибкой нужно скачать отсюда и установить вручную (пока он не вошёл в образ).
Первым и самым широко доступным инструментом, с помощью которого любой пользователь имеет возможность помочь в тестировании и исправлении ошибок РОСА/Мандрива, является Improver. Что такое Improver? Improver -- это самостоятельная разработка команды девелоперов РОСЫ, аналогов этой системы нет даже в Убунту.
Идея заключается в том, чтобы связать воедино тестирование дистрибутивов как специалистами-профессионалами, так и добровольцами-любителями с системой исправления ошибок и со службой технической поддержки. Improver — программный комплекс, состоящий из нескольких частей:
- клиентской части;
- серверной части;
- веб-приложения конфигурирования.
Система Improver собирает информацию о программно-аппаратных составляющих клиентских рабочих станциях и даёт возможность выполнения планов тестирования, заданных менеджером системы.
Административная часть
Административная часть системы предоставляет возможность управления тест планами и пользователями. Администратор имеет возможность генерировать отчеты различной направленности на основании информации поступающей в базу данных с клиентских рабочих станций.
Клиентская часть
Клиентская часть системы состоит из программы для выполнения тестпланов Improver_client. Improver_client, отвечает за регистрацию пользователя, получение информации о программно-аппаратной составляющей рабочей станции, получение списка тест планов, выбор и прохождение тест-плана, отправку отчета на сервер, а также предоставляет ряд инструментов для выполнения тестовых заданий.
Процесс регистрации стандартный. После регистрации появляется окно управления тестпланами:
Функциональные возможности:
администратор Импрувера может подзразделять тестпланы на группы, у пользователя тестпланы отображаются также группами. Выше на скриншоте видна 1 группа "Standard". Слева от названия тестплана иконкой показывается статус плана: новый, скачан, начат, завершён, отправлен. Группы тестпланов можно сворачивать/разворачивать, тестпланы открываются или по двойному щелчку или по кнопке "Начать".
Кнопки внизу экрана:
Обновить - получение обновлений тестпланов с сервера.
Карта - открытие карты тестплана. В карте показываются отвеченные и неотвеченные вопросы.
Импортировать - импортировать тестплан из xml-файла с жёсткого диска.
Отправить отчёты - отправка всех неотправленных отчётов. Фича состоит в том, что даже при недоступности сервера, например, как бывало в выходные дни, скачанные тестпланы можно продолжать выполнять локально, и затем отправить все скопившиеся отчёты за один раз.
Начать - начать выполнять выбранный тестплан.
Пример вопросов и ответов:
Здесь возможности в том, что
- можно определять свои варианта ответа и определять будет это негативный или позитивный ответ;
- варианты ответа можно задавать или как чекбокс или как радиобаттон;
- можно задать вариант ответа "другое", где пользователь может вписать свой вариант.
Кнопки в нижней части блока выполнения - снимок экрана, снимок экрана с задержкой (задержка определяется в конфиг.файле), прикрепить пользовательский файл, отобразить карту вопросов тестплана.
В карте отмечается порядок вопросов, статус вопроса "отвечен\неотвечен". Из карты можно перейти к произвольному вопросу тестплана по двойному щелчку.
Функциональная возможность: после отправки отчёта пользователь получает автоматическое почтовое уведомление с сервера.
Серверная часть
Серверная часть состоит структурно из следующих трех компонент: 1. Augeasd — программа-демон, обрабатывающая запросы клиентской части, передающей информацию следующему демону; 2. Herculesd — программа-демон, парсер отчетов от клиентов, добавляет информацию в базу данных(БД); 3. PostgreSQL — серверные процессы, предоставляющей доступ к БД.
К выходу релиза ROSA2011 система Improver получит интеграцию с системой Helpdesk (http://helpdesk.rosalab.ru/index.php ).
Helpdesk
Что такое Helpdesk? Helpdesk -- это портал техподдержки РОСЫ, а также мини-багзилла для русскоязычных пользователей.
Краткое описание схемы работы Helpdesk по заявками, открытым непосредственно пользователями.
Инцидент (тикет) — описание проблемы, полученное от пользователя и назначенное исполнителю. Содержит в себе следующую информацию: имя пользователя, версию ПО/пакета, уровень инцидента, описание инцидента, описание способа воспроизведения инцидента.
Инцидент может иметь один из следующий уровней:
НИЗКИЙ, СРЕДНИЙ, ВЫСОКИЙ, КРИТИЧЕСКИЙ. Уровень инцидента устанавливается пользователем при начальной публикации инцидента. Уровень инцидента может изменяться инженером в процессе анализа ситуации.
Для каждого уровня инцидента устанавливаются собственные уровни оповещения персонала и время реакции инженера.
Инцидент может находиться в одном из следующих состояний:
НОВЫЙ, В ОБРАБОТКЕ, ИСПРАВЛЕНИЕ, ОЖИДАНИЕ, РЕШЁН, ЗАКРЫТ.
Переходы между состояниями:
- Состояние «НОВЫЙ» присваивается инциденту при его публикации пользователем. Возврат в это состояние невозможен.
- Состояние «В ОБРАБОТКЕ» присваивается инциденту после его назначения инженеру или после получения новых данных от пользователя.
- Состояние «ИСПРАВЛЕНИЕ» присваивается инциденту в случае если инцидент связан с исправлением исходного кода. В этом состоянии информация об инциденте публикуется в системе исправления ошибок. Время работы над инцидентом в этом состоянии ставится на удержание до момента получения данных от системы исправления ошибок.
- Состояние «ОЖИДАНИЕ» присваивается инциденту после отправки инструкций / исправлений пользователю.
- Состояние «РЕШЁН» присваивается инциденту в случае положительного ответа пользователя на высланные инструкции / исправления.
- Состояние «ЗАКРЫТ» присваивается инциденту в случае когда пользователь не отвечает длительный период времени (согласно настроек системы) или когда исправление ошибки запланировано на следующий выпуск дистрибутива.
На Helpdesk поступают также и автоматические заявки, в том числе и из Improver, что даёт возможность эффективного взаимодействия службы технической поддержки с волонтёрами-тестировщиками дистрибутива.
Дальнейший этап
На основании результатов тестов Improver составляется список 10 наиболее встречаемых ошибок, превышающих порог срабатывания. Список составляется на периодической основе с периодом от 7 до 30 дней. Далее, инженеры первого уровня проверяют ошибки, описанные в этих заявках, на соответствие действительности. Если проблема, описанная в заявке, может быть решена начальными средствами пользователя, то предлагается решение и отправляется обратно в Improver. Если проблема более сложная, то она передаётся на второй уровень. Инженер второго уровня локализует проблему до уровня пакета и проверяет по базе тикетов в багзилле Мандривы наличие похожей проблемы. Если тикет уже есть, то он обновляется информацией из Improver. Если тикета нет, то создаётся новый. И далее уже ожидается реакция QA Мандривы.
Также в качестве первого рубежа общения с русскоязычными пользователями РОСЫ открыт форум на оф. сайте РОСЫ, где желающие получат возможность задать вопросы и получить ответы. Форум доступен по адресу: http://forum.rosalab.ru/[1]