Смекни!
smekni.com

Работа по дисциплине: «Мировые информационные ресурсы» на тему: «Новые технологии в сети Интернет. Анализ и классификация. Обзор ресурсов» (стр. 3 из 5)

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

Определение сервисно-ориентированной архитектуры

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

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

Переходя в мир абстракций, можно дать следующее, более сильное, определение сервисно-ориентированной архитектуры:

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

Поясним второе определение:

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

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

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

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

Требования к SOA

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

· обеспечивать преемственность инвестиций в IT, сохранение существующих информационных систем и их совместное эффективное использование для повышения ROI от IT-вложений;

· обеспечивать реализацию различных типов интеграции:
- пользовательская интеграция (user integration) - обеспечение взаимодействия информационной системы с конкретным персонифицированным пользователем;
- интеграция приложений (application connectivity) - обеспечение взаимодействия приложений;
- интеграция процессов (process integration) - интеграция бизнес-процессов;
- информационная интеграция (information integration) - интеграция с целью обеспечения доступности информации и данных;
- интеграция новых приложений (build to integrate) - интеграция новых приложений и сервисов в существующие информационные системы.

· обеспечивать поэтапность внедрения вновь созданных и миграции существующих информационных систем;

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

· позволять реализацию различных моделей построения информационных систем, в особенности таких как портальные решения, grid-системы и on-demand-системы.

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

По мере формирования все более открытой для взаимодействия среды, межкорпоративное взаимодействие эволюционировало от личных встреч, почтовой и телефонной связи к факсимильной и также неструктурированной электронной почте. Традиционные формы взаимодействия B2B обладают огромным потенциалом для совершенствования, который может обеспечить бизнес существенными стратегическими преимуществами и мощными источниками повышения эффективности. Технологии Web services, базирующиеся на возможностях Интернет, призваны кардинально улучшить взаимодействие людей и информационных систем друг с другом и обеспечить взаимное проникновение различных систем и процессов. Они образованы из целого ряда стандартных протоколов взаимодействия, средств описания моделей данных и интерфейсов, а также вспомогательных сетевых служб, обеспечивающих доступность бизнес-функций организаций авторизованным пользователям через Интернет с любого подключенного к нему устройства. В частности, в отношении к соответствующим бизнес-процессам организации, Web services позволяют:

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

Таким образом Web services обеспечивают построенную на открытых стандартах информационную инфраструктуру, посредством которой организации могут:

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

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

На чём базируются Web-сервисы.

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

· Создатель конкретного веб-сервиса определяет формат запросов к нему и формат ответов на данные запросы;

· С любого комьютера в Интернет можно сделать запрос к данному веб-сервису;

· Веб-сервис выполняет заданную последовательность действий и отправляет обратно результат.

Таким образом, все Веб-сервисы базируются на применении открытых, утверждаемых консорциумом ИТ-сообщества стандартах и протоколах, ключевыми из которых являются следующие:

  • SOAP (Simple Object Access Protocol) - протокол доступа к простым объектам, т.е. механизм для передачи информации между уделенными объектами на базе протокола HTTP и некоторых других Интернет-протоколов. Более подробную информацию о данном стандарте можно найти на странице "Ссылки";
  • WSDL (Web Services Description Language) - язык описания Web-сервисов. Подробная спецификация находится в разделе "Документы" ;
  • UDDI (Universal Description, Discovery and Integration) - универсальное описание, обнаружение и интеграция - упрощенно говоря, протокол поиска ресурсов в Интернете.

Схема взаимодействия стандартов друг с другом.

Серверы приложений являются хранилищами Web-сервисов и делают их доступными через протоколы HTTP GET, HTTP POST и HTTP SOAP.

Существующие Web-сервисы описываются в WSDL-документах, которые располагаются либо на сервере приложений, либо в специальных XML-хранилищах. WSDL-документ может ссылаться на другие WSDL-документы и документы XSD (XML Schema), в которых описаны типы данных, используемые Web-сервисами. XML-хранилища используются для управления WSDL-документами. Внутри WSDL-документа находится адрес (URL) Web-сервиса. Web-сервисы описаны и проиндексированы в бизнес-реестре, содержащем адреса (URL) WSDL-документов.

В следующих разделах мы рассмотрим три основных Web-стандарта, на которых базируются Web-сервисы SOAP, WSDL и UDDI, более подробно.

· SOAP — Simple Object Access Protocol

SOAP — это стандарт для отсылки и получения сообщений по Internet. Изначально этот протокол был предложен фирмой Microsoft в качестве средства для удаленного вызова процедур (RPC, Remote Procedure Call) по протоколу HTTP, а спецификация SOAP 1.0 (Userland, Microsoft, Developmentor) была тесно связана с Component Object Model. Фирма IBM и ряд других компаний, в том числе Lotus, внесли определенный вклад в развитие этого протокола, и его стандарт был направлен на рассмотрение комитетом W3C.