Главная  Классификация протоколов сигнализации 

[0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [ 13 ] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39] [40] [41] [42] [43] [44] [45] [46] [47] [48] [49] [50] [51] [52] [53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66] [67] [68] [69] [70] [71] [72] [73] [74] [75] [76] [77] [78] [79] [80] [81] [82] [83] [84] [85] [86] [87] [88] [89] [90] [91] [92] [93] [94] [95] [96] [97] [98] [99] [100] [101] [102] [103] [104] [105] [106] [107] [108] [109] [110] [111] [112] [113] [114] [115] [116] [117] [118] [119] [120] [121] [122] [123] [124] [125] [126] [127] [128] [129] [130] [131] [132] [133] [134] [135] [136] [137] [138] [139] [140] [141] [142] [143] [144] [145] [146] [147] [148] [149] [150] [151] [152] [153] [154] [155] [156] [157] [158] [159] [160] [161] [162] [163] [164] [165] [166] [167] [168] [169]

Нижний тестер


Процедуры координации тестирования

Тестируемая система

Параллельная тестовая компонента (РТС,)


Тестируемая реализация (IUT)

[Предоставление услуг уровня (МЙУ

0 точки наблюдения и управления РСО О точки координации CP

Рис.2.21. Общая архитектура тестирования TTCN

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

В TTCN такое дерево взаимодействий называется деревом поведения. Структура дерева представляется посредством увеличивающихся уровней отступов для показа продвижения по дереву относительно времени (рис. 2.22).

Узел дерева называется линией поведения. Линия поведения содержит следующие компоненты:

• номер линии,

• метку,

• строку описаний,

• ссылку на ограничения,

• вердикт,

• комментарий линии поведения.

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


Представление дерева в TTCN


Время

®

По достижении конца каждой ветви дерева выносится вердикт

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

Поведение тестируемой системы (например, прием или посылка абстрактных



примитивов) описывается при помощи описаний TTCN. Описания бывают трех типов:

события,

действия,

квалификаторы.

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

RECEIVE,

OTHERWISE,

TIMEOUT.

Действия. Некоторые описания всегда будут успешными. Такие описания называются действиями, которые исполняются тестовой системой. Предполагается, что они всегда исполняются успешно. Для действий в TTCN используются следующие описания: SEND,

IMPLICITSEND, ASSIGNMENTLIST, TIMER OPERATION, GOTO.

Квалификаторы. Строки описаний могут включать описания квалификаторов, то есть булевские выражения. Никакие события не могут совпасть и никакие действия не будут исполнены, пока значение квалификатора не станет равным TRUE.

Как уже отмечалось выше, TTCN был разработан с привязкой к абстрактному синтаксису ASN.1 (ISO/IEC 8824:1990). Однако не существует обязательной связи между типами, используемыми в TTCN и в ASN. 1. Это позволяет конструировать типы данных, абстрактные примитивы ASP и блоки данных протокола PDU и без использования ASN. 1, если разработчик теста не желает этого (например, для протоколов низкого уровня, для спецификации которых обычно не используется ASN.1). Однако здесь типы данных TTCN рассматриваться не будут.

TTCN поддерживает асинхронную модель связи. Связь между тестовыми компонентами ТС и тестируемой системой ШТ обеспечивается через точки управления и наблюдения (PCOs -Points of Control and Observation). Связь между самими тестовыми компонентами осуществляется через координационные точки (CPs - Coordination Points).

Для описания модели связи используется система с очередями со следующими свойствами:

• каждая точка РСО/СР имеет две бесконечные очереди FIFO: одна очередь для SEND и одна очередь для RECEIVE,

• ровно два объекта должно быть подсоединено к одной точке РСО или CP,

• очередь SEND одного объекта является очередью RECEIVE другого объекта, и наоборот.

Описание SEND позволяет создателю теста описать необходимость передачи ASP определенного типа через данную точку РСО. Описание SEND обозначается следующим образом: РСО Identifier ! ASP Identifier.

Описание RECEIVE позволяет создателю теста описать необходимость приема абстрактного примитива ASP определенного типа в данной точке контроля и наблюдения РСО. Описание RECEIVE обозначается РСО Identifier ? ASP Identifier.

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

Язык TTCN непосредственно связан с рассматриваемыми в главе 11



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

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

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

Динамическая модель ОМТ также строится из диаграмм двух видов: диаграмм событий и диаграмм перехода состояний.

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

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

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



[0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [ 13 ] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39] [40] [41] [42] [43] [44] [45] [46] [47] [48] [49] [50] [51] [52] [53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66] [67] [68] [69] [70] [71] [72] [73] [74] [75] [76] [77] [78] [79] [80] [81] [82] [83] [84] [85] [86] [87] [88] [89] [90] [91] [92] [93] [94] [95] [96] [97] [98] [99] [100] [101] [102] [103] [104] [105] [106] [107] [108] [109] [110] [111] [112] [113] [114] [115] [116] [117] [118] [119] [120] [121] [122] [123] [124] [125] [126] [127] [128] [129] [130] [131] [132] [133] [134] [135] [136] [137] [138] [139] [140] [141] [142] [143] [144] [145] [146] [147] [148] [149] [150] [151] [152] [153] [154] [155] [156] [157] [158] [159] [160] [161] [162] [163] [164] [165] [166] [167] [168] [169]

0.0011