Методика генерации тестов для протоколов информационного обмена на основе недетерминированного конечного автомата с предикатами

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

Рубрика Программирование, компьютеры и кибернетика
Вид статья
Язык русский
Дата добавления 24.08.2020
Размер файла 208,7 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

Методика генерации тестов для протоколов информационного обмена на основе недетерминированного конечного автомата с предикатами

Авторы:

Парамохина Т.М., Еременко А.В.

The methods of test generation for information exchange protocols based on pseudo-equivalence criterion of not determined final automatic device (NDFAD) are described in the article. Search of unique sequence in NDFAD, search of unique entrance area and procedures of identification of conditions NDFAD which allowed to estimate the maximal length of covering sequence and to optimize search procedure of transition covering are considered

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

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

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

Для конечных автоматов разработан ряд методов генерации тестовых последовательностей: уникальных последовательностей (УП); различающих последовательностей и характеристических последовательностей [1]. По типу описываемого протокола данные методы можно разделить на методы, использующие сигнал «надежного сброса», и методы, не использующие сигнал «надежного сброса». Функция «надежного сброса», как правило, присутствует в современных технических средствах в виде возможности выполнения цикла включения/выключения (или перезагрузки устройства). В процессе перезагрузки оперативная память средства информационного обмена (СИО) в силу конструктивных особенностей гарантированно очищается, поэтому факт возврата в исходное состояние при перезагрузке не требует дополнительной проверки.

Оценивая количество циклов перезагрузки, которые включают в себя тесты, построенные с использованием УП (UIO-метод, W-метод) и отвечающие критерию n-покрытия, установлено, что тест, полученный W-методом, содержит (n2 + n2p) сигналов "надежный сброс", тест, полученный UIOv-методом, содержит n2L+np сигналов "надежный сброс". Учитывая, что количество состояний и количество различных входных сигналов в ПИО может достигать нескольких десятков, количество сигналов «надежный сброс» в тесте может достигать нескольких сотен. Как правило, в современных СИО цикл перезагрузки занимает достаточно длительное время - от нескольких секунд до нескольких минут. В таких случаях большую часть времени исполнение теста будет приходиться на перезагрузки. Часто перезагрузить СИО можно только по команде с консоли управления либо разрывая его цепи питания, что затрудняет исполнение теста в полностью автоматическом режиме. Поэтому тесты, использующие сигнал «надежный сброс» как можно меньше, являются более предпочтительными с практической точки зрения.

Для тестирования протоколов без функции "надежный сброс" были предложены модификации W-метода и UIOv-метода [2]. Данные методы значительно сложнее своих аналогов, использующих "надежный сброс". В то же время более простые методы не позволяют в теории достичь 100%-го покрытия при критерии псевдо-эквивалентности. Ниже проведены результаты исследования покрытия версии метода УП для протоколов без сигнала "надежный сброс", показывающие, что метод УП позволяет при сохранении относительной простоты и тестах небольшой длины достичь практически 100%-го покрытия.

Рассмотрим процедуру построения УП для недетерминированного конечного автомата. Будем считать, что НКА полностью определен. Отношение переходов h1(s, б) возвращает множество состояний, в которые входная последовательность может перевести автомат, первоначально находящийся в состоянии s. Отношение выходов h2(s, а) возвращает множество выходных последовательностей, которое может выдать автомат при подаче на него в состоянии s входной последовательности а. d-последовательностью автомата, переводящей автомат из состояния si в состояние sj, будем называть aij:

h1(si, aij) =sj;

|h1 (sj, aij)| = 1;

|h2(si, aij)| = 1.

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

Уникальная последовательность для состояния si, используемая в детерминированном безусловном тесте, должна обладать следующими свойст-вами:

1) детерминированностью: |h1(si, )| = 1;

2) уникальностью: не существует такого состояния s', в котором для входной последовательности может быть получена выходная последователь-ность, идентичная выходной последовательности для состояния s:

Путем НКА назовем последовательность смежных переходов. Пусть Т* - множество путей автомата. Т1 - множество путей графа автомата, имеющих длину 1; Т1 Т*. Рассмотрим ряд вложенных разбиений множества Т1, позволяющих выделить УП.

DS-группой назовем подмножество путей, исходящих из состояния s и помеченных входной последовательностью б:

= {psб: psб П(s, б)}.

D-группой назовем множество всех DS-групп:

Da = {, sS}.

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

D-разбиением назовем множество D-rpynn:

D1 = {Da; б X1}.

D-группу Da назовем si-уникальной, если существует принадлежащая ей DS-группа, состоящая из одного пути, причем выходная последовательность, помечающая этот путь, не совпадает с выходными последовательностями, помечающими остальные пути в данном автомате:

Рассмотрим алгоритм поиска УП в недетерминированном автомате.

Обозначения:

D, Е - D-группы;

D_QUEUE - очередь D-rpynn;

UTO - множество УП;

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

EXTRACT_UIO(D) - функция, выделяющая УП из s-уникальной D-группы;

X = {х1 .., хm} - множество входных сигналов;

S = {s1, .., sn} - множество состояний;

IS_UNIQUE(D) - функция, возвращающая 1, когда D-группа D является уникальной;

PATH (D, i) - функция, возвращающая путь р в i-й паре <р, в> P(D);

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

Алгоритм 1. Поиск набора уникальных последовательностей для НКА

Рассматриваемый метод УП отличается от UIOv-метода отсутствием проверки наличия n состояний, для которых найденные УП сохраняют уникаль-ность. Сегменты теста, проверяющие отдельные переходы, не разделяются сиг-налами "сброс", а "склеиваются" в единую последовательность. Ниже пред-ставлена процедура получения УП-теста.

1. Tseg:=Ш

// тестируем все nр переходов

2. for j:=l,.., n do

3. for i:=l,.., p do Tseg := Tseg @ Qд(1>Tseg), i @ <i/л(j, i)> @ UIOд(j, i)

Оценка покрытия теста выполнялась с помощью вычислительного эксперимента, в процессе которого генерировались автоматы с внесенной по отношению к эквивалентной модели ошибкой. Для сгенерированных автоматов эмулировалось выполнение теста. Результаты эксперимента позволяют сделать вывод, что для автоматов, моделирующих ПИО, метод УП без использования сигнала «надежный сброс» позволяет достичь 99,99%-го покрытия с доверительной вероятностью 0,99.

Это позволяет рассмотреть НКА с предикатами в виде целочисленных линейных неравенств (далее НКА с предикатами); может рассматриваться, как упрощенная модель расширенного авто-мата и использоваться для построения частичного теста расширенного автома-та.

На рис.1 показан пример расширенного автомата и включающего его недетерминированного автомата. При представлении расширенного автомата недетерминированным автоматом УП найденные для недетерминированного автомата будут оставаться уникальными и для расширенного автомата. Для нахождения УП может использоваться алгоритм 1. Как видно из примера, приведенного на рис. 1, для расширен-ного автомата существует множество включающих его НКА, различающихся размером входного алфавита. В общем случае максимальный размер входного алфавита будет составлять |I|, где I - множество входных сигналов расширенно-го автомата. УП существуют практически для всех известных детерминирован-ных конечных автоматов, моделирующих протоколы информационного обмена [4].

Рисунок 1 - Пример расширенного автомата и покрывающих его недетерминированных конечных автоматов.

Однако при использовании недетерминированного автомата вероятность на-хождения УП снижается. При переходе от детерминированного автомата к недетерминированному выполняется объединение группы состояний в одно состояние, а группы входных сигналов в один сигнал. Это объединение может быть выполнено различными способами.

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

Для идентификации состояний в НКА с предикатами введем аналог уникальной последовательности - уникальной входной области (УВО). УВО можно интерпретировать следующим образом: не существует таких начальных состояний (s0, ), (si, ) и входных последовательностей , что, подавая на НКА с предикатами в состоянии (s0, ), a на НКА с предикатами в состоянии (si, ), будут получены одинаковые выходные последова-тельности. На основе представленного алгоритма поиска УП для НКА можно построить алгоритм поиска УВО для НКА с предикатами. Единственным различием в алгоритмах поиска УП для НКА и УВО для НКА с предикатами будет реализация функции IS_UNIQUE.

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

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

- TS = < In, Out >;

- In = < x > - входная последовательность;

- Out = <y >0 - выходная последовательность.

Можно доказать, что необходимым условием применимости разработанной процедуры является выполнение свойства «корректности» НКА с предикатами.

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

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

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

Литература

информационный автомат тестирование

1.Еременко В.Т. Моделирование процессов информационного обмена в распределенных управляющих системах: Монография./ Под общ. Редакцией И.С. Константинова. - М.: Машиностроение-1, 2004.- 224с.

2.Еременко В.Т. Концепция обнаружения и коррекции логических ошибок в реализациях профилей протоколов безопасности // Телекоммуникации - 2003. - №8. - С.30-35.

3.Еременко В.Т., Парамохина Т.М. Методика оценки неопределенных данных при аттестационном тестировании реализации профилей протоколов информационного обмена // Вестник компьютерных и информационных технологий - 2005. - №8. - с.45-48.

4.Фунтиков В.Б. Проблемы автоматизированного построения аттестационных тестов для протоколов передачи данных. - сборн. «Перспективы развития российского сегмента Интернет», деп. в ЦНТИ «Информсвязь», №2166 от 14.04.2000. - с.38-49.

Размещено на Allbest.ru

...

Подобные документы

  • Построение праволинейной грамматики, автоматной грамматики по полученным результатам. Построение недетерминированного конечного автомата. Сведение недетерминированного конечного автомата к детерминированному. Описание программы и контрольного примера.

    курсовая работа [674,9 K], добавлен 13.06.2012

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

    курсовая работа [210,8 K], добавлен 05.12.2013

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

    курсовая работа [903,9 K], добавлен 14.07.2012

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

    дипломная работа [1,8 M], добавлен 18.08.2013

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

    дипломная работа [3,6 M], добавлен 18.07.2012

  • Составление формальной грамматики, недетерминированный конечный автомат. Построение конечного автомата, программное моделирование работы конечного автомата. Граф детерминированного автомата, Синтаксическая диаграмма. Блок-схемы, примеры разбора строк.

    курсовая работа [486,2 K], добавлен 19.11.2010

  • Понятие, виды и функции тестов, компьютерное тестирование. Государственные стандарты создания компьютерных тестов и практическая реализация комплекса генерации тестов: СУБД и язык программирования, пользовательский интерфейс, экономическая эффективность.

    дипломная работа [2,1 M], добавлен 29.06.2012

  • Устройство управления и синхронизации в структуре микропроцессора. Порядок синтеза конечного автомата (КА) для устройства управления ЭВМ. Алгоритм функционирования КА, заданный с помощью графа, функции переходов. Состояние триггеров в микросхеме.

    методичка [1019,0 K], добавлен 28.04.2009

  • Механизм создания и обмена пакетами в сети передачи информации на основе стека протоколов ZigBee. Принцип действия, особенности работы и коммутации с другими протоколами, определение основных методов и способов защиты информации, передаваемой в сети.

    курсовая работа [2,6 M], добавлен 12.09.2012

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

    курсовая работа [234,1 K], добавлен 04.08.2009

  • Общая характеристика протокола ICMP, его назначение и формат сообщений. Анализ применимости протокола ICMP при переходе с набора протоколов IP v4 на набор IP v6. Свойства и принцип работы, сферы применения протоколов обмена маршрутной информацией.

    курсовая работа [210,8 K], добавлен 24.08.2009

  • Минимизация абстрактного автомата Мили, моделирование его работы. Синтез схемы конечного автомата, микропрограммного автомата и счетчика числа микрокоманд. Разработка цифровой линии задержки. Построение граф-схем исходного и оптимизированного автоматов.

    курсовая работа [823,8 K], добавлен 19.07.2012

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

    дипломная работа [1,9 M], добавлен 12.03.2013

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

    курсовая работа [971,6 K], добавлен 30.01.2018

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

    контрольная работа [215,8 K], добавлен 22.06.2012

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

    курсовая работа [3,4 M], добавлен 05.02.2013

  • Методика минимизации абстрактного автомата. Порядок построения графа полученного минимизированного автомата. Синтез на элементах ИЛИ-НЕ и Т-тригерах. Составление таблицы переходов. Разработка микропрограммного автомата, реализующего микропрограмму.

    курсовая работа [997,7 K], добавлен 28.03.2011

  • Понятие, последовательность построения и схемная реализация цифрового автомата. Описание форм представления функций алгебры логики. Принципы минимизации функций выходов и переходов автомата, их перевода в базис. Сведенья о программе Electronics Workbench.

    курсовая работа [2,0 M], добавлен 27.10.2010

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

    контрольная работа [1,5 M], добавлен 15.12.2015

  • Примеры построения тестов и технологии исследования алгоритмов на их основе. Построение тестов на основе метода покрытия решений и проведение исследования соответствующего исходного алгоритма и алгоритма с ошибками в операторах проверки условий.

    контрольная работа [224,8 K], добавлен 24.05.2016

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.