научная статья по теме МОДЕЛИ В НАГРУЗОЧНОМ ТЕСТИРОВАНИИ Математика

Текст научной статьи на тему «МОДЕЛИ В НАГРУЗОЧНОМ ТЕСТИРОВАНИИ»

ПРОГРАММИРОВАНИЕ, 2011, No 1, с. 20-35

ТЕСТИРОВАНИЕ, ВЕРИФИКАЦИЯ И ВАЛИДАЦИЯ ПРОГРАММ

УДК 681.3.06

МОДЕЛИ В НАГРУЗОЧНОМ ТЕСТИРОВАНИИ

© 2011 г. Б. А. Позин, И. В. Галахов

ЗАО ЕС ЛИЗИНГ E-mail: pozin@ec-leazing, igalakhov@ec-leazing.ru Поступила в редакцию 06.06.2010 г.

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

1. ВВЕДЕНИЕ

В нагрузочном тестировании наиболее активно применяются модели при генерации большого количества виртуальных клиентов для тестирования Web-систем и серверов этих систем с целью определения их нагрузочной способности [1]. Моделированию при этом подвергается структура переходов состояний сервисов, которые предоставляет Web-система с учетом вероятностей реализации сервисов и их последовательностей. Имеются также работы по построению моделей для анализа сетей при их нагрузочном тестировании [2]. Такая достаточно универсальная модель, например, позволяет объединить различные инструментальные средства тестирования в единую технологию на основе нескольких типов, так называемых Universal Probe (UP), описывающих архитектуру, политику взаимодействия элементов системы и ресурсных ограничений.

Однако при практическом тестировании ответственных ИС описанные модели не покрывают потребностей планирования нагрузочного тестирования и оценки адекватности полученных результатов.

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

есть в среде, включающей СУБД, базы данных, системное ПО, развернутые на оборудовании комплекса технических средств информационной системы.

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

Ключевыми аспектами планируемого эксперимента являются:

- постановка задачи, определяющая цели эксперимента; должна быть увязана с требованиями к системе;

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

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

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

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

Такими исходными данными являются:

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

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

- информация о структуре системы с точки зрения вариантов подачи нагрузки и способов измерений;

- информация о планируемой загрузке в структурированном виде.

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

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

о Метамодель системы - описывает структуру системы как сеть систем массового обслуживания (включая состав элементов типа «ресурс»);

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

о Метамодель измерений - определяет состав собираемых характеристик, показателей и

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

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

Для различных видов нагрузочного тестирования и различных систем указанные модели могут отличаться.

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

В разделе 3 предложена классификация видов нагрузочного тестирования ИС и описана предлагаемая технология автоматизированного нагрузочного тестирования с использованием предложенных моделей и инструментальных средств IBM Rational, а также инструментальных средств собственной разработки. Показано, как с использованием базовых понятий и правил строятся конкретные модели тестируемых ИС при планировании нагрузочного тестирования: модель требований к эксплуатационным характеристикам, модель нагрузки на тестируемую ИС, модель системы и модель измерений, которые описывают все исходные данные для автоматизированного нагрузочного тестирования и предполагаемые результаты. Модели позволяют автоматизировать настройку инструментальных средств автоматизации тестирования на параметры конкретного нагрузочного эксперимента.

В заключении приведены основные практические результаты по опыту применения технологии, основанной на моделях, полученные в течение четырех лет при нагрузочном тестировании банковских систем.

2. МЕТАМОДЕЛИ КАК СРЕДСТВО ОПИСАНИЯ СВОЙСТВ АРТЕФАКТОВ НАГРУЗОЧНОГО ЭКСПЕРИМЕНТА

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

2.1. Метамодель требований

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

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

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

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

Е - множество требований к системе; В - множество бизнес-правил; Т - множество технических требований.

Бизнес-правила включают или связаны с технологическими процессами, корпоративными регламентами, политиками, стандартами, законодательными актами, внутрикорпоративными инициативами, учетными практиками, алгоритмами вычислений и т.д.

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

Метамодель требований определяет правила описания вербальной модели требований, содержащей нефункциональные требования системы.

При выборе конкретных значений понятий или конкретных правил фактически, по метамодели, формируется модель конкретных требований тестируемой системы.

2.2. Метамодель системы

Метамодель системы позволяет описать структуру системы как сеть систем массового обслуживания, состоящих из элементов типа «ресурс» и связей между ними.

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

Для метамодели предполагается, что системы определенного класса могут быть представлены некоторой совокупностью понятий и правил их взаимосвязи.

При выборе конкретных значений понятий или конкретных правил, фактически по метамодели, формируется модель конкретной тестируемой системы.

Метамодель системы может быть представлена в следующем виде: * = {{и(р)}, {S},Ks,Ки}, где {и(р)} - множество устройств объекта тестирования с характеристиками производительности р;

{5} - множество программных комплексов (компонент, сервисов);

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

Ки - матрица связей пр

Для дальнейшего прочтения статьи необходимо приобрести полный текст. Статьи высылаются в формате PDF на указанную при оплате почту. Время доставки составляет менее 10 минут. Стоимость одной статьи — 150 рублей.

Показать целиком