Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Тема: sdl-ориентированная методология






ПРИЛОЖЕНИЕ 1

Л А Б О Р А Т О Р Н А Я Р А Б О Т А 01

ТЕМА: SDL-ОРИЕНТИРОВАННАЯ МЕТОДОЛОГИЯ

 

ЦЕЛЬ РАБОТЫ:

Изучить:

§ структуру языка описаний и спецификаций SDL;

§ принципы использования символов при построении SDL –диаграмм;

§ принципы построения спецификаций SDL –диаграмм.

Уяснить:

§ методы построения SDL – диаграмм и их чтения.

 

ВРЕМЯ: 1 час.

 

1. Общие положения

Язык SDL (Specification and Description Language) – язык описаний и спецификаций, разработанном Международным союзом электросвязи (ITU-T), в сочетании с двумя другими языками спецификаций ASN.1 (Abstract Syntax Notation One) и MSC, также предусмотренными Рекомендациями ITU-T серии Z.100 в версии Белой книги.

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

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

• хорошие аналитические возможности;

• хорошие выразительные возможности.

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

• SDL - графической SDL/GR;

• программноподобной SDL/PR

Методология спецификации протоколов сигнализации предусматривает следующие шаги:

• определение границ SDL-системы;

• определение каналов SDL-системы и передаваемых по этим каналам сигналов;

• разбиение системы на SDL-блоки;

• разбиение SDL-блоков на взаимодействующие процессы;

• определение входных и выходных сигналов, состояний и внутренних переходов для каждого из SDL-процессов;

• составление SDL-диаграмм процессов.

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

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

Такой автомат имеет конечное число внутренних состояний и оперирует с конечным дискретным множеством входов и выходов. Под автоматом с конечным числом состояний понимается объект, находящийся в одном из дискретных состояний S1, S2,..., Sn, на вход которого поступают извне некоторые сигналы I1, I2,..., Im, а на выходе которого имеется набор выходных сигналов J1, J2..., Jk. Под влиянием входных сигналов автомат переходит из одного состояния в другое, которое может совпадать с предыдущим, и выдает выходной сигнал. При этом для каждого состояния Si и для каждого входного сигнала Ij однозначно известно, в какое состояние St перейдет автомат и какой выходной сигнал Jo он при этом выдаст.

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

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

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

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

Пример процесса «Тастатура» приведен на рис. 1.2. Пустой символ в верхнем левом углу означает начало процесса. Он ведет к исходному состоянию, в котором процесс может принять два входных сигнала: «Клавиша» или «Готово». Все переменные являются локальными для процесса. Символы ниже входных сигналов являются символами задачи для внутренних действий процесса. Задача может быть формальной или содержать неформальный текст в одинарных кавычках, как это имеет место на рис 1.2. Под правым символом задачи находится символ выхода «Передача (посылка)», который означает передачу сигнала. Содержанием сигнала является значение локальной переменной.

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

Первые выпуски Рекомендации Z.100, издаваемые МККТТ, включали специальную линейку-трафарет (шаблон) для рисования SDL-диаграмм с использованием графического синтаксиса SDL. Этот шаблон изображен на рис. 1.3.

В шаблоне присутствуют следующие символы:

ввод, вывод, решение, опция, процесс, старт, задача, состояние, коннектор, останов, сохранение.

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

• Символы старта процедуры и входа в макро конструируются из символа старта.

• Символ выхода из макро получается из символа коннектора.

• Символ возврата из процедуры является комбинацией символов коннектора и останова.

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

С появлением мощных графических инструментальных средств современных компьютеров актуальность такого разделения постепенно теряется. Эти современные инструментальные средства поддержки SDL включают:

• графические редакторы для диаграмм;

• трансляторы между диаграммой (графическим представлением) и программно подобным представлением;

• статические анализаторы для поиска синтаксических ошибок, таких, как неопределенные имена и несовместимые интерфейсы;

• генераторы кодов;

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

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

Граф процесса в представлении SDL состоит из набора графических символов, соединенных направленными линиями потоков. Каждому символу приписывается имя. Если в диаграмме присутствует несколько символов состояния с одним и тем же именем, то все они означают одно и то же состояние. В символах, представляющих ввод, вывод и сохранение, должно присутствовать имя соответствующего сигнала. Аналогичным образом текст помещается в символах задачи и решения.

Правила соединения символов в диаграммы:

• за символом состояния может следовать только символ ввода или символы ввода и сохранения;

• символ ввода (сохранения) может следовать только за символом состояния;

• за символом ввода может следовать любой (один) символ, кроме ввода и сохранения;

• за символом задачи или вывода следует любой (один) символ, кроме ввода или сохранения;

• за символом решения следует n (n³ 2) символов, которые могут быть какими угодно, кроме символов ввода, сохранения;

• за символом сохранения не следует ничего.

Правила процесса построения SDL-диаграмм проиллюстрированы на рис.1.4.

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

Правила при вычерчивании и чтения графических SDL-диаграмм:

• обычная последовательность чтения диаграмм – сверху - вниз и слева - направо;

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

• связный сегмент диаграммы по возможности представляется на одной странице;

• текст предпочтительно размещать в символах, а если это не удается - в символах расширения текста.

Основные фукции объектов SDL-диаграмм:

Процесс в SDL – некий объект, который находится в состоянии ожидания получения входного сигнала либо в переходе. Состояние определяется как условие, в котором действие процесса временно приостановлено в ожидании ввода (рис. 2.5).

Решение – выбор одного из альтернативных действий в зависимости от результатов анализа проверки параметров, связанных с входными сигналами, и хранимой в памяти процесса информации, существенных для дальнейшего функционирования процесса. Другими словами, символ решения определяет выбор одного среди нескольких (п³ 2) путей для продолжения перехода процесса.

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

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

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

К ним относятся:

Звездочка (*), означает «все» или «все, кроме» (* [ ]);

Тире (-), означает «то же самое» (рис. 1.8, 1.9).

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

o Пользоваться краткими обозначениями нужно с осторожностью, т.к. использование «*» и «-» может изменить смысл диаграммы настолько, что это приведет к непредсказуемому результату.

Дивергенция внутри перехода в диаграмме SDL может возникнуть в одной из следующих ситуаций:

• между символом состояния и соответствующими ему символами ввода и сохранения;

• после символа решения; после символа опции (рис. 1.10).

В рамках тематики данной книги описанную выше Вкачестве примера иерархия описаний (SDL-система, блок, процессы, каналы, сигналы) продемонстрированы на реальном примере SDL-спецификаций одночастотной системы сигнализации 2600 Гц на рис. 1.12-1.14, где приведены фрагменты SDL-спецификаций линейной сигнализации на внутризоновой сети, например, между центральной станцией (ЦС) или сельско-пригородным узлом (УСП) и междугородной станцией (АМТС) по заказно-соединительным линиям (ЗСЛ) и соединительным междугородным линиям (СЛМ).

2. Развитие и перспективные направления SDL

Основные свойства SDL – ориентированной методологии определены в методологии описаний и спецификаций SDL – 88. Последующая методология SDL-92 харктеризуется введением объектно-ориентированных свойств. В сфере объектно-ориентированных разработок SDL-92 соответствует новым промышленным стандартам, таким как C++ в программировании. Приэтом предусмотрено, что определение процесса можно повторно использовать, определяя его как тип, путем добавления ключевого слова тип и двух интерфейсов (шлюзов), которые описывают принимаемые и передаваемые сигналы. Это иллюстрирует рис. 1.15, являющийся развитием рис. 1.2.

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

Использование различных инструментальных средств в SDL породило требование: способность передачи SDL-диаграмм между различными платформами различных инструментальных систем. Это особенно важно для организаций, занимающихся стандартами, в первую очередь для различных Исследовательских комиссий самого ITU-T. При этом крайне желательно сохранение основной графической информации при переводе спецификаций SDL от одной инструментальной платформы к другой.

Разрабатываемый проект единого формата взаимообмена (Common Interchange Format - CIF) базируется на текстуальном представлении SDL/PR, и включает вопрос минимальной передачи такой графической информации, которая позволяет пользователям распознавать спецификации. Передача ограничена человеческим фактором распознавания, те информацией постраничной организации и относительным позиционированием, детали при этом опускаются. Планируется, что CIF будет передавать только законченные элементы спецификаций такие как система, блок и диаграммы процесса.

С точки зрения дальнейшего развития SDL достаточно сложно обеспечить равновесие между требованием стабильности текущей версии языка, которое разделяют специалисты других исследовательских комиссий ITU-T, промышленных организаций, НИИ и администраций связи, давно использующих SDL, и интересами новых пользователей SDL

Основой варианта версии SDL-2000 является упрощение языка.

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

Определение типов данных основано на принципе ACT-ONE, который одинаков в SDL и в языке LOTOS. При введении этого принципа полагалось, что это наилучший способ для формализованного описания системы данных. Хотя этот принцип действительно весьма привлекателен теоретически, однако в практических применениях значительная часть данных почти никогда не используется. Последнее также иллюстрируется слабой поддержкой этого принципа существующими инструментальными средствами SDL. Версия языка SDL-92 была дополнена ACT-ONE с более традиционным алгоритмическим подходом, а новая рекомендация Z.105 идет дальше и предписывает определение данных в SDL, основывающееся на стандарте языка ASN.1. Но, к сожалению, и этот алгоритмический подход, и описание данных по Z.105 преобразуются затем в семантическую модель, основанную на том же принципе ACT-ONE. Во время работы над SDL-92 стало ясно, что привлекательные свойства объектного ориентирования, такие как общие типы и полиморфизм, достаточно сложно совместить с принципом ACT-ONE. В связи с этим имеется очевидная тенденция к отходу в будущем от принципа ACT-ON в описании данных. Сегодня трудно предположить направление этой тенденции, разве что можно ожидать в последующей версии SDL-2000 более полный переход к ASN 1, чем это сегодня предусматривает рекомендация Z.105.

Объектно-ориентированные свойства SDL-92 делают SDL привлекательным для спецификаций и описаний систем в соответствии с моделью Открытых распределенных процессов (Basic Reference Model of Open Distributed Processing - ODP). Однако необходимость совместимости SDL-92 с предыдущими версиями SDL привела к усложнению интерпретации некоторых концепций ODP в SDL-92, например, в адресации одиночного интерфейса к объекту. Хотя упомянутое выше обобщение концепции процесса и может привести к решению некоторых из этих проблем в SDL-2000, но, в целом, соответствие ODP также потребует значительных усилий.

На рис 1.16 представлена последовательность использования стандартов Исследовательской комиссии 10 ITU-T для описания телекоммуникационных протоколов в данной книге. Эта последовательность состоит из трех базовых элементов:

• текстовые описания систем сигнализации;

• диаграммы SDL, специфицирующие режимы поведения процесса обработки этой сигнализации;

• сценарии обмена сигналами и сообщениями на языке MSC.

 

3. Контрольные вопросы

ПРИЛОЖЕНИЕ 2






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.