ИСПОЛЬЗОВАНИЕ ЯЗЫКА WSDL В ЭЛЕКТРОННЫХ ДОКУМЕНТАХ НОВОГО ПОКОЛЕНИЯ
С.В. Семенов, к.т.н., А.В. Чагрова (Тверь)
Попытки семантического структурирования информационных ресурсов предпринимались относительно давно.
Постепенно пришло понимание, что основу структурированности должны составлять онтологии, языком описания которых является OWL. Но параллельно со структуризацией информации получили развитие и системы с сервис-ориентированной архитектурой (SOA), так как важно не только уметь складывать информацию, но и находить ее вовремя и в нужной форме. Для работы с ресурсами, представляемыми в виде сервисов, используются известные языковые средства описания сервисов. К таким средствам относится и язык Web Services Description Language (WSDL) (последняя версия WSDL 2.0 опубликована 26 июня 2007 г.).
WSDL - это формат XML-схем, определяющий расширенную структуру описания интерфейсов веб-сервисов. WSDL первоначально был разработан компаниями Microsoft и IBM. А затем его поддержали консорциум W3C и еще 25 компаний. WSDL -сердце структуры веб-сервиса, общий способ представления передаваемых в сообщениях типов данных, указывающий действия, которые должны быть выполнены с данным сообщением и согласно которому сообщения привязываются к сетевым транспортам. WSDL предназначен для использования как в процедурно-ориентированных, так и в документно-ориентированных приложениях.
WSDL состоит из трех элементов: определение типов данных, абстрактные операции и связывание сервисов. Каждая составляющая может быть указана в различных XML-документах и импортирована в виде различных комбинаций, что позволяет создавать окончательное описание веб-сервиса. Все составляющие могут быть представлены и в одном XML-документе. Определение типов данных задает структуру и содержание сообщений. Абстрактные операции определяют операции, которые должны быть выполнены с содержанием сообщения, а связывание сервисов подразумевает сетевой транспорт, который доставит сообщение по месту назначения.
Версия 1.1 языка WSDL претерпела значительные изменения:
• атрибут targetNamespace элемента definitions стал обязательным, потому что в язык WSDL добавлена дополнительная семантика;
• удалены конструкции сообщений; теперь они задаются в элементе types при помощи системы типов XML-схемы;
• отсутствует поддержка перегрузки операторов;
• элемент portType переименован как interface; поддержка наследования элемента interface достигается благодаря использованию атрибута extends в элементе interface;
• элемент port переименован в endpoint.
Концептуально описание веб-сервиса можно разделить на две части. В абстрактной части описания веб-сервис описывается в языке WSDL с помощью системы типов, обычно W3C XML-схемы, в терминах сообщений, которые этот сервис отправляет и получает. Шаблоны обмена сообщениями определяют последовательность и количество сообщений. Элемент операции (operation) связывает шаблоны обмена сообщениями с одним или несколькими сообщениями. Элемент интерфейс (interface) группирует операции независимо от транспорта и способа доставки.
В конкретной части описания элементы связывание (binding) задают транспорт и формат доставки для интерфейсов. Элемент сервис (service) связывает сетевой адрес в соответствии с элементом связывание. Наконец, элемент сервис группирует точки применения (endpoint), которые реализуют общий интерфейс.
Веб-сервисы могут использоваться во многих приложениях. Независимо от того, откуда запускаются веб-сервисы, они могут использоваться для обращения к таким Интернет-приложениям, как система предварительных заказов или контроля выполнения заказов. Веб-сервисы пригодны для В2В-интеграции (business-to-business), замыкая приложения, выполняемые различными организациями, в один производственный процесс. Веб-сервисы также могут решать более широкую проблему интеграции приложений предприятия (Enterprise Application Integration, EAI), осуществляя связь нескольких приложений одного предприятия с несколькими другими приложениями, размещенными как до, так и после брандмауэра. Во всех случаях технологии веб-сервисов являются связующим звеном, объединяющим различные части программного обеспечения.
Интерфейсы веб-сервисов получают из сетевой среды стандартные XML-сообщения, преобразуют XML-данные в формат, понимаемый конкретной прикладной программной системой, и отправляют ответное сообщение. Программная реализация веб-сервисов (базовое программное обеспечение, нижний уровень) может быть создана на любом языке программирования с использованием любой операционной системы и любого связующего программного обеспечения (middleware).
Веб-сервисы объединяют программирование и концепции сети и сочетают параметры программных приложений и абстрактные характеристики сети. Современные Интернет-технологии частично достигают своих целей, поскольку они определены на очень высоком отвлеченном уровне, что обеспечивает совместимость с любой операционной системой, любым программным и аппаратным обеспечением. Инфраструктура, основанная на применении веб-серви-
сов, пользуется этим уровнем абстракции и включает в себя связанную с данными семантическую информацию, то есть веб-сервисы определяют не только данные, но и порядок обработки и преобразования этих данных в базовые программные приложения и обратно.
Порядок описания, поиска и взаимодействия веб-сервисов друг с другом определяют стандарты. Взаимодействующие через Интернет программы должны уметь обнаруживать друг друга, находить информацию, позволяющую им осуществить связь, понимать, какая модель контактирования должна
быть применена, и договариваться об использовании таких услуг, как защита информации, подтверждение передачи сообщений и составление сделок. Некоторые из этих сервисов реализуются существующими технологиями и предлагаемыми стандартами. Использующее веб-сервисы сообщество стремится удовлетворить все требования, но это - эволюционный процесс, как и сам Интернет. С самого начала инфраструктура и стандарты веб-сервисов подразумевали возможность расширения, что позволяет использовать их сразу же после появления новых стандартов и технологий.
СИСТЕМА ПОДДЕРЖКИ ПРИНЯТИЯ РЕШЕНИЙ НА ОСНОВЕ КОГНИТИВНОГО МОДЕЛИРОВАНИЯ «ИГЛА»
В.К. Гулаков, к.т.н., Д.Г. Лагерев, А.Г. Подвесовский, к.т.н. (Брянск)
Важнейшим процессом, связывающим основные функции управления социально-экономическими системами, является разработка управленческих решений, так как именно принимаемые решения определяют не только эффективность процесса управления, но и возможность устойчивого развития управляемой системы.
Вместе с тем, для процесса разработки управленческих решений характерен ряд проблем: трудноформали-зуемость большинства его этапов; уникальность возникающих задач; необходимость учета множества факторов и целей, имеющих сложную структуру взаимосвязи, а зачастую противоречащих друг другу. Поэтому наиболее эффективным подходом к разработке решений является сочетание опыта, знаний, интуиции менеджера и современных технологий автоматизированной поддержки принятия решений, позволяющих систематизировать и структурировать имеющуюся информацию, исследовать альтернативные варианты решений и выбирать из них наиболее удачные. В основе указанных технологий лежит математическое моделирование процесса разработки решений.
В целом процесс разработки управленческого решения состоит из трех основных этапов: подготовка, обоснование и принятие решения. На каждом из этих этапов решается множество подзадач, при этом их решение обычно носит параллельный и итерационный характер. Для некоторых подзадач, таких как получение критериальных оценок альтернатив, моделирование предпочтений лица, принимающего решение (ЛПР), выбор оптимального решения и других, существуют достаточно хорошо проработанные подходы к их моделированию. Большинство таких подходов основано на математической теории принятия решений (см.: Э.А. Трах-тенгерц. Компьютерная поддержка принятия решений. М.: СИНТЕГ. 1998). С другой стороны, такие подзадачи, как идентификация проблемы, формирование целей, анализ факторов, характеризующих моделируемую ситуацию, разработка прогноза ее развития, синтез и отбор альтернатив и управляющих стратегий для достижения нечетко поставленной цели, решаются в основном на приближенном уровне с помощью интуиции и нестрогих рассуждений.
Основная сложность, возникающая при построении моделей подобных задач, состоит в том, что аналитиче-
ское описание либо статистическое наблюдение зависимостей между входными и выходными параметрами, характеризующими исследуемую ситуацию, затруднено или невозможно, и, более того, большинство параметров не являются измеримыми и допускают только качественное выражение - подобные ситуации называют слабо структурированными (см.: З.К. Авдеева, С.В. Коврига, Д.И. Макаренко. Когнитивное моделирование для решения задач управления слабоструктурированными системами (ситуациями) // Управление большими системами. Вып. 16. - М.: ИПУ РАН. 2007). Поэтому приходится прибегать к субъективным моделям, основанным на экспертной информации, обрабатываемой с привлечением логики здравого смысла, интуиции и эвристик.
Научным направлением, лежащим в основе исследования слабоструктурированных систем, является методология когнитивного моделирования. В рамках когнитивной модели информация о системе представляется в виде набора понятий (факторов) и связывающей их причинно-следственной сети, называемой когнитивной картой, которая является отражением субъективных представлений эксперта (или группы экспертов) о законах и закономерностях, присущих моделируемой системе. К когнитивной карте применяются методы аналитической обработки, ориентированные на исследование структуры системы и получение прогнозов ее поведения при различных управляющих воздействиях, с целью синтеза эффективных стратегий управления.
Предлагаемая программная система поддержки принятия решений (СППР) «ИГЛА» (Интеллектуальный генератор лучших альтернатив) основана на применении нечетких когнитивных моделей и обеспечивает поддержку группового построения и согласования когнитивной карты, выполнение расчета и анализа ее системных показателей, а также динамического моделирования сценариев развития ситуации (см.: В.Б. Силов. Принятие стратегических решений в нечеткой обстановке М.: ИНПРО-РЕС. 1995). Рассмотрим основные понятия, используемые в СППР.
• Нечеткая когнитивная карта (НКК) представляет собой нечеткую причинно-следственную сеть, вершины которой соответствуют концептам (переменным), характеризующим моделируемую ситуацию, а дуги описывают причинно-следственные связи между ними.