phone +7 (495) 66 014 66

× Общий раздел

Численная оценка эффекта от изменения условий функционирования системы

5 года 3 нед. назад #4919 от Дмитрий
Численная оценка эффекта от изменения условий функционирования системы

Краткое содержание:

В статье приведена методика решения следующей задачи:
- Имеется реально работающая информационная система.
- Необходимо численно оценить эффект, который будет получен при изменении каких-либо условий функционирования системы (изменение аппаратной конфигурации, переход на новую версию ПО и т.п.).
- Оценка эффекта должна проводиться до внесения реальных изменений в работающую систему на автоматическом тесте, который не требует работы реальных пользователей системы
- Тест должен быть максимально реалистичным, то есть приближенным к работе реальных пользователей системы.

Условия задачи:
Необходимо численно оценить эффект, который будет получен при изменении некоторых (любых) условий функционирования системы. Примеры изменения условий функционирования:
• Изменение аппаратной конфигурации. Например, оценка эффекта от использования другого сервера
• Изменение кода конфигурации. Оценка эффекта от оптимизации кода конфигурации или от внесения дополнительной функциональности (контроль качества вносимых изменений)
• Изменений версий ПО. Например, версии платформы 1С:Предприятия, СУБД и т.п.
Оценка эффекта должна проводиться до внесения реальных изменений в работающую систему.
Оценка эффекта должна проводиться на автоматическом тесте, который не требует работы реальных пользователей системы. При этом тест должен
быть максимально реалистичным, то есть приближенным к работе реальных пользователей системы.

Решение:
Для решения задачи можно использовать 1С:ТестЦентр и сценарий «Эмуляция работы пользователей по вводу документов».
Идея заключается в том, чтобы провести тестирование с использованием идентичного сценария в старых и в новых условиях, а затем сравнить полученные результаты.

Последовательность действий:

1. Подготовка рабочей информационной базы
Сначала необходимо подготовить систему к автоматизированному нагрузочному тестированию. Для этого нужно скачать 1С:ТестЦентр и объединить его конфигурацию с конфигурацией рабочей информационной базы. Конфигурация 1С:ТестЦентр содержит объекты метаданных и общие модули, необходимые для проведения тестирования. Объединение рабочей конфигурации с конфигурацией 1С:ТестЦентр никак не сказывается на работоспособности и производительности рабочей информационной базы.
Подробнее о 1С:ТестЦентре
Скачать текущую версию 1С:ТестЦентра

2. Подготовка тестовых баз
Необходимо создать две копии рабочей информационной базы. Назовем их «Копия 1» и «Копия 2». Копия 1 будет использована для автоматизированного тестирования в текущих («старых») условиях. Копия 2 - для автоматизированного тестирования в новых условиях.
Затем необходимо скачать комплект поставки сценария «Эмуляция работы пользователей по вводу документов». Данный сценарий «умеет» воспроизводить работу пользователей по вводу документов за заданный промежуток времени.
На базе «Копия 1» необходимо сгенерировать сценарий для тестирования. Генерация сценария осуществляется при помощи обработки, входящей в комплект поставки сценария.
При генерации сценария следует учитывать следующие требования:
• Следует выбрать период времени, в котором происходила наиболее интенсивная работа пользователей
• Это период времени должен быть достаточно большим. Не рекомендуется использовать периоды менее 4 часов
• Работа в заданном периоде должна включать проведение всех видов документов, критичных с точки зрения бизнес-процессов предприятия
• При проведении первоначального тестирования коэффициент сжатия времени не указывается, то есть тестирование проводится в реальном масштабе времени
Скопировать сгенерированный сценарий в базу «Копия 2» при помощи процедуры экспорта/импорта сценариев (входит в состав 1С:ТестЦентра).
Затем нужно обеспечить функционирование базы «Копия 1» в текущих («старых») условиях, а базы «Копия 2» - в новых.
Перед проведением тестирования рекомендуется сделать полный backup баз «Копия 1» и «Копия 2».

3. Тестирование производительности
Провести нагрузочное тестирование при помощи сгенерированного сценария для баз «Копия 1» и «Копия 2».
При тестировании следует учитывать, что все условия тестирования (за исключением одного - оцениваемого условия) в обоих базах должны быть идентичны. Например, если мы оцениваем эффект от перехода на новую версию платформы, то все кроме версии платформы в обоих тестах должно быть идентично:
• Один и тот же сервер SQL и сервер 1С:Предприятия
• Клиентские рабочие места запускаются на одних и тех же компьютерах
Желательно обеспечить полное отсутствие «побочной» нагрузки на оборудование, которое занято в тестировании. То есть, тестирование следует проводить либо на отдельных серверах либо в нерабочее время. 1С:ТестЦентр позволяет осуществлять отложенный запуск теста. Вы можете настроить тест и указать, что запустить его следует, например, ночью, когда будет полностью отсутствовать другая активность в системе.
ВНИМАНИЕ!!! При проведении нагрузочного тестирования при помощи этого сценария, будут удалены некоторые данные (документы) баз «Копия 1» и «Копия 2». Кроме того, будут изменены пароли пользователей. После проведения теста информационная база не будет находиться в том же состоянии, что и перед выполнением. Если необходимо провести повторное тестирование, то желательно восстановить копию базы из backup'а.

4. Анализ результатов
Необходимо сравнить результаты тестирования для «Копии 1» и «Копии 2». Сравнение осуществляется при помощи обработки, поставляемой вместе со сценарием тестирования. По результатам сравнения составляется сводная таблица следующего вида:
Показатель База 8.0 (Копия 2) База 8.1 (Копия 1) Отклонение (%)
ПоказательСтарые условия (Копия 1)Новые условия (Копия 2)Отклонение (%)
Время проведения по всем видам документов
Суммарное
Среднее
Максимальное
Время проведения по документам <Вид документа 1>
Суммарное
Среднее
Максимальное
Время проведения по документам <Вид документа 2>
...



На основании данных этой таблицы можно будет численно оценить эффект, полученный от изменения условий функционирования системы и принять решение о внесении этих изменений в систему. Например:
• Если оценивался эффект от использования нового оборудования, то можно оценить, насколько рентабельным является такой upgrade
• Если оценивалось качество изменений, внесенных в код системы, то показатели производительности в новых условиях (с изменениями) должны быть как минимум, не хуже, чем в старых условиях (на текущей версии)
• Если оценивалось изменение версии ПО (например, переход на новую версию платформы или типовой конфигурации), то тестирование покажет, насколько оправданным является переход на новую версию.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Время создания страницы: 0.130 секунд