2.2 Содержательная постановка задачи

Имеется ПО типа "клиент–сервер". Сервер обслуживает запросы от N программ–клиентов (далее просто клиенты, рис.7). В ПО равномерно по области определения входных данных (ООД) (A, B) расположены Er ошибок.

Ошибками (отказами) ПО являются:

Отказы в программе. Если ПО не модифицируется, то интенсивность его отказов остаётся постоянной.

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

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

Рисунок 7 – Типовая клиент-серверная структура

Сервер сложнее программ–клиентов с точки зрения разработки ПО в S раз. S – коэффициент сложности сервера по отношению к клиентам. Каждый k–ый (k = 1, 2, …, N) клиент порождает пуассоновский поток данных к серверу интенсивностью lобр. Данные от клиента распределены по ООД по нормальному закону с характеристиками mk и sk, где mk распределено между клиентами равномерно по всей области входных данных, 3sk – распределено равномерно на меньшем из участков отсекаемых mk на оси области данных. Это нужно для имитации неравномерности использования ООД при малом количестве клиентов.

На запрос клиента сервер отвечает данными, которые распределены равномерно по всей области определения данных (A, B).

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

Рисунок 8 – Распределение запросов k–го клиента на области данных

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

P – количество программистов, обслуживающих систему;

K – количество программ–клиентов;

a – ширина одного запроса клиента как доля от ООД (от 0 до 1, где 1 – это вся ООД);

Dt – шаг итерации (сутки);

s – коэффициент сложности сервера по сравнению с программой–клиентом;

lобр – интенсивность потока обращений одного клиента к серверу (1/сутки);

lиспр – интенсивность потока исправления ошибки одним программистом (1/сутки);

lвнес – интенсивность внесения ошибки при исправлении одним программистом (1/сутки) или

pвнес – вероятность внести ошибку при исправлении одним программистом;

M – количество итераций (количество попыток обращений программ–клиентов к серверу в одном розыгрыше);

R – количество розыгрышей для усреднения;

Er – начальное количество ошибок.

Для моделирования потоков запросов в ПО применяется метод Монте–Карло.

Также есть возможность оценить первоначальное количество ошибок по следующему алгоритму: Принимаем ООД за единицу. Каждый клиент в запросе генерирует долю a от ООД. За время Dt клиент обратиться к серверу (Dt*lобр) раз. За время Dt все клиенты обратятся к серверу (Dt*lобр*K) раз. И объем данных, который будет затронут в ООД при этом равен (Dt*lобр*K*a). Так как в нашей модели ошибки распределены равномерно по ООД, то за время Dt будет обнаружено (Dt*lош), где lош – первоначальная интенсивность ошибок в системе. Если бы за время Dt клиенты затронули всю ООД, то было бы обнаружены все Er ошибок. Поэтому можно записать следующую пропорцию:

.

Отсюда находим Er:

.

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

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

расчет текущего времени наработки до отказа;

расчет среднего времени наработки до отказа за все время моделирования работы системы;

расчет вероятности отказа ПО в единицу

расчёт коэффициента готовности

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

Данная задача имеет смысл для систем типа "клиент-сервер" с целью определения надёжности системы на этапе тестирования.

 



Информация о работе «Разработка программно–алгоритмических средств для определения надёжности программного обеспечения на основании моделирования работы системы типа "клиент–сервер"»
Раздел: Информатика, программирование
Количество знаков с пробелами: 104437
Количество таблиц: 5
Количество изображений: 35

Похожие работы

Скачать
249681
5
8

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

Скачать
104513
2
0

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

Скачать
141641
20
15

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

Скачать
176646
13
0

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

0 комментариев


Наверх