Описание программных компонентов
Введение
Назначение документа
Данный документ описывает архитектуру распределенной информационной системы поиска предоставляемых услуг (далее в документе используется сокращенное название «РИС ППУ»), разработанную для обеспечения выполнения требований технического задания (ОАО «Бублики», 2014), а именно:
· разбиение РИС ППУ на составные части до уровня программных компонентов;
· структуру РИС ППУ (статическое представление);
· взаимодействие программных компонентов РИС ППУ при выполнении типичных задач (динамическое представление);
· внутренние и внешние интерфейсы РИС ППУ и его компонентов;
· размещение программных компонентов РИС ППУ на технических средствах распределенной компьютерной системы (РКС).
При разработке данного документа широко использовался унифицированный язык моделирования UML (Unified Modelling Language).
1.2 Используемые сокращения и термины
Используемые сокращения
ЛВС | локальная вычислительная сеть |
ПО | программное обеспечение |
ПС | программное средство |
РИС ППУ | распределенная информационная система поиска предоставляемых услуг |
РКС | распределенная компьютерная система (см. определение термина ниже) |
РП | распределенное приложение (см. определение термина ниже) |
РСРМ | СПО Реализации стандарта распределенного моделирования – название реализации RTI |
СПО | специальное программное обеспечение |
ТЗ | техническое задание |
CRC | central RTI component – приложение из состава СПО РСРМ |
FOM | federation object model – объектная модель федерации |
OMT | object model template – формат описания объектных моделей, заданный стандартом IEEE 1516-2010 |
RRTI | Russian RTI – международное название СПО РСРМ |
RTI | run-time infrastructure – инфраструктура времени выполнения (см. определение термина ниже) |
SOM | simulation object model – объектная модель федерата |
UML | unified modeling language – унифицированный язык моделирования (см. определение термина ниже) |
XML | extensible markup language – расширяемый язык разметки документов |
1.2.2 Используемые термины
Термин | Определение |
Распределенная компьютерная система (РКС) | Система, состоящая из компьютеров (хостов), сетевых устройств и линий связи, а также системного ПО (операционных систем) и обеспечивающего (промежуточного) ПО. В вырожденном случае РКС может состоять из одного компьютера и установленного на нем ПО. |
Распределенное приложение (РП) | Комплекс приложений, который может выполняться в Распределённой компьютерной системе. РП должно быть сконфигурировано для выполнения в Распределённой компьютерной системе. Приложения (программы), составляющие РП, выполняют общую задачу и, как правило, обмениваются данными. Примерами РП могут служить: федерация HLA, RRTI. |
Хост | Компьютер, на котором установлено программное обеспечение. |
RTI | Run-Time Infrastructure – инфраструктура времени выполнения. Транспортная инфраструктура, служащая для связи моделирующих систем. Ее интерфейс и основная функциональность описаны в стандарте IEEE 1516-2010. |
UML | Unified Modelling Language — унифицированный язык моделирования. Язык графического описания для объектного моделирования в области разработки программного обеспечения. UML является языком широкого профиля, это открытый стандарт, использующий графические обозначения для создания абстрактной модели системы, называемой UML-моделью. UML был создан для определения, визуализации, проектирования и документирования в основном программных систем. UML не является языком программирования, но в средствах выполнения UML-моделей как интерпретируемого кода возможна генерация кода. |
Общая архитектура
Область применения
РИС ППУ применяется для облечения поиска услуг, возможность пользования которыми зависит от большого числа меняющихся факторов, в том числе от текущего географического расположения Потребителя и/или Поставщика услуг. Предполагается обслуживать большое количество запросов на получение информации об услугах, доступных при различных условиях.
2.2 Анализ требований ТЗ
Анализ требований ТЗ приведен в таблице ниже.
Таблица 1 Анализ требований ТЗ
Требование ТЗ | Влияние на архитектуру РИС ППУ |
3.1.1. Имеются два типа пользователей РИС ППУ: – поставщики услуг; – потребители услуг. | Определяет наличие в обобщенной архитектуре Программных средств Поставщика и Потребителя услуг. |
3.1.2 РИС ППУ содержит специализированное приложение – Посредник обнаружения, позволяющее Потребителю услуги обнаружить услугу, предоставляемую Поставщиком услуг. | Определяет наличие в обобщенной архитектуре Программной среды поиска предоставляемых услуг |
3.2.1. Поставщик услуги должен иметь возможность зарегистрировать предоставляемую услугу в РИС ППУ для того, чтобы сделать ее доступной для обнаружения Потребителями услуг | Определяет наличие интерфейса SPA – ESSN |
3.2.2. Потребитель услуги должен иметь доступ к среде, позволяющей обнаруживать доступные услуги. | Определяет наличие интерфейса SCA – ESSN |
3.2.3. Потребитель услуги должен иметь возможность оценить качество предоставленной услуги. | Определяет функциональность интерфейса SCA – ESSN. |
3.2.4. Каждой услуге ставится в соответствие область видимости. 3.2.5. Услуга предоставляется, если потребность в услуге у Потребителя услуги совпадает с наличием услуги у Поставщика услуги. 3.2.6. Поставщики и Потребители услуг обладают географическими координатами. 3.2.7. Пользователи могут перемещаться в пространстве, изменяя свои координаты. 3.2.8. Области потребностей изменяются, в частности, из-за изменения координат. | · Определяет наличие интерфейса SPA – ESSN; · Определяет функциональность интерфейса SCA – ESSN; · Определяет функциональность Программной среды поиска предоставляемых услуг. |
3.2.11. Приложения Потребителя услуг должно функционировать на смартфонах и планшетных компьютерах под управлением операционных систем: – Android 4.2 и выше; – iOS 8.1 и выше; – Microsoft Windows Phone 8 и выше. | · Выбираемые утилиты и/или библиотеки функций должны, по возможности, быть доступными для указанных ОС; · Основная часть кода должна быть написана способом, не зависящим от ОС; · Части кода, зависящие от ОС, должны быть выделены в явном виде. |
3.2.4.2.1. РИС ППУ должно обеспечивать возможность реконфигурации своих компонентов при выходе из строя любого узла таким образом, чтобы обеспечить функционирование системы как единого целого при изоляции отказавшего компонента. При этом время на подобную реконфигурацию не должно превышать 30 мин. 3.2.4.2.2. Любое приложение должно иметь возможность в любой момент вступать и выходить из системы без нарушения ее функционирования. 3.2.4.4.1. РИС ППУ должно работать поверх стеков протоколов ТСР/IP. 3.2.4.6.1. РИС ППУ одновременное подключение: – до 100 Поставщиков услуг; – до 10000 Потребителей услуг. | Накладывает ограничения на используемые архитектурные решения. |
3.2.4.4.2. Приложения РИС ППУ должно иметь графический пользовательский интерфейс. | Определяет наличие графических пользовательских интерфейсов у Программных средств Поставщика и Потребителя услуг. |
Варианты предполагаемого использования РИС ППУ описаны в разделе «Варианты использования». Для каждого описанного варианта использования детализирована требующаяся от РИС ППУ функциональность.
Связь принятых архитектурных решений с требованиями ТЗ подробно рассмотрена в разделе «Трассировка проектных решений к требованиям ТЗ».
Архитектура РИС ППУ
Распределенная информационная система поиска предоставляемых услуг, включает в себя:
· Программное средство поставщика услуг (SPA – service provider application);
· Программное средство потребителя услуг (SCA – service consumer application);
· Программную среду поиска предоставляемых услуг (ESSN – enhanced service search network).
Общая схема РИС ППУ приведена в виде диаграммы классов на рисунке ниже.
Рисунок 1 Общая схема РИС ППУ
В верхней части схемы показана РИС ППУ, состоящая из SPA, SCA и ESSN. Отношения показаны как связи типа «compose» и «aggregation».
Количество приложений каждого типа (SPA и SCA) может быть в каждый данный момент любым, что показано на схеме мощностью отношений 0..*. Однако ясно, что общее количество зарегистрированных в Среде поиска Поставщиков и Потребителей услуг должно [существенно] превышать количество одновременно к ней подключающихся приложений-клиентов.
При этом предполагается наличие только одной Среды поиска предоставляемых услуг, доступной постоянно, поэтому указана мощность отношения 1:1.
Компоненты РИС ППУ имеют набор интерфейсов, обеспечивающих взаимодействие компонентов между собой и с пользователями системы:
· Внешние интерфейсы (обеспечивают взаимодействие с пользователями):
o Графический пользовательский интерфейс ПС Поставщика услуг;
o Графический пользовательский интерфейс ПС Потребителя услуг;
o Интерфейс настройки и управления Программной среды поиска предоставляемых услуг;
· Внутренние интерфейсы (обеспечивают взаимодействие компонентов РС ППУ между собой):
o Интерфейс SPA – ESSN – обеспечивает регистрацию услуги в Программной среде;
o Интерфейс ESSN – SPA – обеспечивает информирование поставщика о появившемся интересе со стороны потребителя услуг;
o Интерфейс SCA – ESSN – обеспечивает поиск услуги в Программной среде.
Общая схема интерфейсов РИС ППУ приведена в виде диаграммы компонентов на рисунке ниже.
Рисунок 2 Интерфейсы РИС ППУ
На данной диаграмме (и в описании выше) отсутствуют интерфейсы конфигурирования программных средств Поставщика и потребителя услуг. Предполагается, что они могут быть реализованы либо как часть графического пользовательского интерфейса, либо как редактирование текстового конфигурационного файла.
Более подробно интерфейсы описаны в разделе 4 «Интерфейсы компонентов».
Построение РИС ППУ на базе технологии HLA (IEEE-1516)
Использование в качестве среды обмена данными и обнаружения Поставщиков услуг Потребителями услуг накладывает существенные ограничения на архитектуру РИС ППУ:
· Технология HLA предусматривает только обмен данными между использующими ее компонентами (федератами), поэтому прямые вызовы компонентами друг друга отсутствуют;
· Среда обмена данными HLA RTI не хранит данных, поэтому для реализации функциональности ESSN придется создавать отдельное программное средство;
· HLA RTI не позволяет фильтровать данные по содержанию, поэтому фильтрация запросов будет производиться другими способами.
Схема построения РИС ППУ на базе технологии HLA приведена на рисунке ниже в виде диаграммы компонентов.
Рисунок 3 РИС ППУ на базе технологии HLA
Отметим следующее:
· На диаграмме для упрощения опущены внешние интерфейсы приложений (графические интерфейсы пользователя и интерфейс настройки и управления);
· При использовании технологии HLA различные интерфейсы между приложениями заменены одним стандартным интерфейсом между федератом и RTI (на схеме показан синим цветом);
· Специфичность использования интерфейса «приложение-RTI» определяется SOM, реализуемым конкретным приложением;
· RTI использует общий FOM РИС ППУ для организации обмена данными между приложениями РИС ППУ.
Варианты использования
Общая последовательность действий Поставщика и Потребителя услуг в процессе использования РИС ППУ приведена на рисунке ниже.
Рисунок 4 Основной вариант использования РИС ППУ
Участники
Участники вариантов использования РИС ППУ описаны в таблице ниже.
Каждый «участник» описывает роль, которую играет пользователь в каждом из описанных вариантов использования. Один и тот же человек может играть несколько ролей попеременно. В случаях, когда одну задачу выполняют два и более участника, в описании варианта использования указывается, как именно они взаимодействуют.
Таблица 2 Участники
Участник | Комментарий |
Поставщик услуги | Организация или человек (обычно организация), оказывающая некоторую услугу или услуги. Специфической для РИС ППУ особенностью является наличие зависимости возможности предоставления этой услуги (услуг) от некоторых условий, включая пространственное положение Поставщика, дату и время. |
Потребитель услуги | Организация или человек (обычно человек), испытывающая потребность в получении некоторой услуги. Специфической для РИС ППУ особенностью является наличие зависимости необходимости получения этой услуги от некоторых условий, включая пространственное положение Потребителя, дату и время. |
Интерфейсы компонентов
В данном разделе описаны интерфейсы компонентов РИС ППУ, которые используются для связи компонентов РИС ППУ между собой и с пользователями. Все интерфейсы разбиты на внутренние (то есть такие, которые не выходят за рамки РИС ППУ) и внешние (связывающие компоненты РИС ППУ с пользователями). Схема интерфейсов РИС ППУ приведена выше (см. Рисунок 2).
TBD
Внутренние интерфейсы
Данный раздел описывает внутренние интерфейсы РИС ППУ.
Внешние интерфейсы
Внешние интерфейсы РИС ППУ включают:
· Графический пользовательский интерфейс ПС Поставщика услуг (см. раздел «Пользовательский интерфейс ПС Поставщика услуг»);
· Графический пользовательский интерфейс ПС Потребителя услуг (см. раздел «Пользовательский интерфейс ПС Потребителя услуг»);
· Интерфейс конфигурирования и управления Среды обнаружения (см. раздел «Интерфейс конфигурирования и управления Среды обнаружения»).
Список литературы
TBD
Приложение 1. TBD
TBD
Введение
Назначение документа
Данный документ описывает архитектуру распределенной информационной системы поиска предоставляемых услуг (далее в документе используется сокращенное название «РИС ППУ»), разработанную для обеспечения выполнения требований технического задания (ОАО «Бублики», 2014), а именно:
· разбиение РИС ППУ на составные части до уровня программных компонентов;
· структуру РИС ППУ (статическое представление);
· взаимодействие программных компонентов РИС ППУ при выполнении типичных задач (динамическое представление);
· внутренние и внешние интерфейсы РИС ППУ и его компонентов;
· размещение программных компонентов РИС ППУ на технических средствах распределенной компьютерной системы (РКС).
При разработке данного документа широко использовался унифицированный язык моделирования UML (Unified Modelling Language).
1.2 Используемые сокращения и термины
Используемые сокращения
ЛВС | локальная вычислительная сеть |
ПО | программное обеспечение |
ПС | программное средство |
РИС ППУ | распределенная информационная система поиска предоставляемых услуг |
РКС | распределенная компьютерная система (см. определение термина ниже) |
РП | распределенное приложение (см. определение термина ниже) |
РСРМ | СПО Реализации стандарта распределенного моделирования – название реализации RTI |
СПО | специальное программное обеспечение |
ТЗ | техническое задание |
CRC | central RTI component – приложение из состава СПО РСРМ |
FOM | federation object model – объектная модель федерации |
OMT | object model template – формат описания объектных моделей, заданный стандартом IEEE 1516-2010 |
RRTI | Russian RTI – международное название СПО РСРМ |
RTI | run-time infrastructure – инфраструктура времени выполнения (см. определение термина ниже) |
SOM | simulation object model – объектная модель федерата |
UML | unified modeling language – унифицированный язык моделирования (см. определение термина ниже) |
XML | extensible markup language – расширяемый язык разметки документов |
1.2.2 Используемые термины
Термин | Определение |
Распределенная компьютерная система (РКС) | Система, состоящая из компьютеров (хостов), сетевых устройств и линий связи, а также системного ПО (операционных систем) и обеспечивающего (промежуточного) ПО. В вырожденном случае РКС может состоять из одного компьютера и установленного на нем ПО. |
Распределенное приложение (РП) | Комплекс приложений, который может выполняться в Распределённой компьютерной системе. РП должно быть сконфигурировано для выполнения в Распределённой компьютерной системе. Приложения (программы), составляющие РП, выполняют общую задачу и, как правило, обмениваются данными. Примерами РП могут служить: федерация HLA, RRTI. |
Хост | Компьютер, на котором установлено программное обеспечение. |
RTI | Run-Time Infrastructure – инфраструктура времени выполнения. Транспортная инфраструктура, служащая для связи моделирующих систем. Ее интерфейс и основная функциональность описаны в стандарте IEEE 1516-2010. |
UML | Unified Modelling Language — унифицированный язык моделирования. Язык графического описания для объектного моделирования в области разработки программного обеспечения. UML является языком широкого профиля, это открытый стандарт, использующий графические обозначения для создания абстрактной модели системы, называемой UML-моделью. UML был создан для определения, визуализации, проектирования и документирования в основном программных систем. UML не является языком программирования, но в средствах выполнения UML-моделей как интерпретируемого кода возможна генерация кода. |
Общая архитектура
Область применения
РИС ППУ применяется для облечения поиска услуг, возможность пользования которыми зависит от большого числа меняющихся факторов, в том числе от текущего географического расположения Потребителя и/или Поставщика услуг. Предполагается обслуживать большое количество запросов на получение информации об услугах, доступных при различных условиях.
2.2 Анализ требований ТЗ
Анализ требований ТЗ приведен в таблице ниже.
Таблица 1 Анализ требований ТЗ
Требование ТЗ | Влияние на архитектуру РИС ППУ |
3.1.1. Имеются два типа пользователей РИС ППУ: – поставщики услуг; – потребители услуг. | Определяет наличие в обобщенной архитектуре Программных средств Поставщика и Потребителя услуг. |
3.1.2 РИС ППУ содержит специализированное приложение – Посредник обнаружения, позволяющее Потребителю услуги обнаружить услугу, предоставляемую Поставщиком услуг. | Определяет наличие в обобщенной архитектуре Программной среды поиска предоставляемых услуг |
3.2.1. Поставщик услуги должен иметь возможность зарегистрировать предоставляемую услугу в РИС ППУ для того, чтобы сделать ее доступной для обнаружения Потребителями услуг | Определяет наличие интерфейса SPA – ESSN |
3.2.2. Потребитель услуги должен иметь доступ к среде, позволяющей обнаруживать доступные услуги. | Определяет наличие интерфейса SCA – ESSN |
3.2.3. Потребитель услуги должен иметь возможность оценить качество предоставленной услуги. | Определяет функциональность интерфейса SCA – ESSN. |
3.2.4. Каждой услуге ставится в соответствие область видимости. 3.2.5. Услуга предоставляется, если потребность в услуге у Потребителя услуги совпадает с наличием услуги у Поставщика услуги. 3.2.6. Поставщики и Потребители услуг обладают географическими координатами. 3.2.7. Пользователи могут перемещаться в пространстве, изменяя свои координаты. 3.2.8. Области потребностей изменяются, в частности, из-за изменения координат. | · Определяет наличие интерфейса SPA – ESSN; · Определяет функциональность интерфейса SCA – ESSN; · Определяет функциональность Программной среды поиска предоставляемых услуг. |
3.2.11. Приложения Потребителя услуг должно функционировать на смартфонах и планшетных компьютерах под управлением операционных систем: – Android 4.2 и выше; – iOS 8.1 и выше; – Microsoft Windows Phone 8 и выше. | · Выбираемые утилиты и/или библиотеки функций должны, по возможности, быть доступными для указанных ОС; · Основная часть кода должна быть написана способом, не зависящим от ОС; · Части кода, зависящие от ОС, должны быть выделены в явном виде. |
3.2.4.2.1. РИС ППУ должно обеспечивать возможность реконфигурации своих компонентов при выходе из строя любого узла таким образом, чтобы обеспечить функционирование системы как единого целого при изоляции отказавшего компонента. При этом время на подобную реконфигурацию не должно превышать 30 мин. 3.2.4.2.2. Любое приложение должно иметь возможность в любой момент вступать и выходить из системы без нарушения ее функционирования. 3.2.4.4.1. РИС ППУ должно работать поверх стеков протоколов ТСР/IP. 3.2.4.6.1. РИС ППУ одновременное подключение: – до 100 Поставщиков услуг; – до 10000 Потребителей услуг. | Накладывает ограничения на используемые архитектурные решения. |
3.2.4.4.2. Приложения РИС ППУ должно иметь графический пользовательский интерфейс. | Определяет наличие графических пользовательских интерфейсов у Программных средств Поставщика и Потребителя услуг. |
Варианты предполагаемого использования РИС ППУ описаны в разделе «Варианты использования». Для каждого описанного варианта использования детализирована требующаяся от РИС ППУ функциональность.
Связь принятых архитектурных решений с требованиями ТЗ подробно рассмотрена в разделе «Трассировка проектных решений к требованиям ТЗ».
Архитектура РИС ППУ
Распределенная информационная система поиска предоставляемых услуг, включает в себя:
· Программное средство поставщика услуг (SPA – service provider application);
· Программное средство потребителя услуг (SCA – service consumer application);
· Программную среду поиска предоставляемых услуг (ESSN – enhanced service search network).
Общая схема РИС ППУ приведена в виде диаграммы классов на рисунке ниже.
Рисунок 1 Общая схема РИС ППУ
В верхней части схемы показана РИС ППУ, состоящая из SPA, SCA и ESSN. Отношения показаны как связи типа «compose» и «aggregation».
Количество приложений каждого типа (SPA и SCA) может быть в каждый данный момент любым, что показано на схеме мощностью отношений 0..*. Однако ясно, что общее количество зарегистрированных в Среде поиска Поставщиков и Потребителей услуг должно [существенно] превышать количество одновременно к ней подключающихся приложений-клиентов.
При этом предполагается наличие только одной Среды поиска предоставляемых услуг, доступной постоянно, поэтому указана мощность отношения 1:1.
Компоненты РИС ППУ имеют набор интерфейсов, обеспечивающих взаимодействие компонентов между собой и с пользователями системы:
· Внешние интерфейсы (обеспечивают взаимодействие с пользователями):
o Графический пользовательский интерфейс ПС Поставщика услуг;
o Графический пользовательский интерфейс ПС Потребителя услуг;
o Интерфейс настройки и управления Программной среды поиска предоставляемых услуг;
· Внутренние интерфейсы (обеспечивают взаимодействие компонентов РС ППУ между собой):
o Интерфейс SPA – ESSN – обеспечивает регистрацию услуги в Программной среде;
o Интерфейс ESSN – SPA – обеспечивает информирование поставщика о появившемся интересе со стороны потребителя услуг;
o Интерфейс SCA – ESSN – обеспечивает поиск услуги в Программной среде.
Общая схема интерфейсов РИС ППУ приведена в виде диаграммы компонентов на рисунке ниже.
Рисунок 2 Интерфейсы РИС ППУ
На данной диаграмме (и в описании выше) отсутствуют интерфейсы конфигурирования программных средств Поставщика и потребителя услуг. Предполагается, что они могут быть реализованы либо как часть графического пользовательского интерфейса, либо как редактирование текстового конфигурационного файла.
Более подробно интерфейсы описаны в разделе 4 «Интерфейсы компонентов».
Построение РИС ППУ на базе технологии HLA (IEEE-1516)
Использование в качестве среды обмена данными и обнаружения Поставщиков услуг Потребителями услуг накладывает существенные ограничения на архитектуру РИС ППУ:
· Технология HLA предусматривает только обмен данными между использующими ее компонентами (федератами), поэтому прямые вызовы компонентами друг друга отсутствуют;
· Среда обмена данными HLA RTI не хранит данных, поэтому для реализации функциональности ESSN придется создавать отдельное программное средство;
· HLA RTI не позволяет фильтровать данные по содержанию, поэтому фильтрация запросов будет производиться другими способами.
Схема построения РИС ППУ на базе технологии HLA приведена на рисунке ниже в виде диаграммы компонентов.
Рисунок 3 РИС ППУ на базе технологии HLA
Отметим следующее:
· На диаграмме для упрощения опущены внешние интерфейсы приложений (графические интерфейсы пользователя и интерфейс настройки и управления);
· При использовании технологии HLA различные интерфейсы между приложениями заменены одним стандартным интерфейсом между федератом и RTI (на схеме показан синим цветом);
· Специфичность использования интерфейса «приложение-RTI» определяется SOM, реализуемым конкретным приложением;
· RTI использует общий FOM РИС ППУ для организации обмена данными между приложениями РИС ППУ.
Варианты использования
Общая последовательность действий Поставщика и Потребителя услуг в процессе использования РИС ППУ приведена на рисунке ниже.
Рисунок 4 Основной вариант использования РИС ППУ
Участники
Участники вариантов использования РИС ППУ описаны в таблице ниже.
Каждый «участник» описывает роль, которую играет пользователь в каждом из описанных вариантов использования. Один и тот же человек может играть несколько ролей попеременно. В случаях, когда одну задачу выполняют два и более участника, в описании варианта использования указывается, как именно они взаимодействуют.
Таблица 2 Участники
Участник | Комментарий |
Поставщик услуги | Организация или человек (обычно организация), оказывающая некоторую услугу или услуги. Специфической для РИС ППУ особенностью является наличие зависимости возможности предоставления этой услуги (услуг) от некоторых условий, включая пространственное положение Поставщика, дату и время. |
Потребитель услуги | Организация или человек (обычно человек), испытывающая потребность в получении некоторой услуги. Специфической для РИС ППУ особенностью является наличие зависимости необходимости получения этой услуги от некоторых условий, включая пространственное положение Потребителя, дату и время. |
Описание программных компонентов
В данном разделе описываются программные компоненты (приложения), разрабатываемые в составе РИС ППУ. РИС ППУ включает следующие компоненты (приложения):
· Программное средство Поставщика услуг (SPA);
· Программное средство Поставщика услуг (SPA);
· Программное средство Посредника обнаружения (ESSN).