Сервисно-ориентированная архитектура

Сервисно-ориентированная архитектура

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

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

Компоненты программы могут быть распределены по разным узлам сети, и предлагаются как независимые, слабо связанные, заменяемые сервисы-приложения. Программные комплексы, разработанные в соответствии с SOA, часто реализуются как набор веб-сервисов, интегрированных при помощи известных стандартных протоколов (WSDL, и т. п.)

Интерфейс компонентов SОА-программы предоставляет инкапсуляцию деталей реализации конкретного компонента (ОС, платформы, языка программирования, вендора, и т. п.) от остальных компонентов. Таким образом, SOA предоставляет гибкий и элегантный способ комбинирования и многократного использования компонентов для построения сложных распределённых программных комплексов.

SOA хорошо зарекомендовала себя для построения крупных корпоративных программных приложений. Целый ряд разработчиков и интеграторов предлагают инструменты и решения на основе SOA (например, платформы WebSphere, Oracle/BEA Aqualogic, Windows Communication Foundation, SAP NetWeaver, ИВК Юпитер,

Содержание

Определение SOA

OASIS (Организация по распространению открытых стандартов структурированной информации) определяет SOA следующим образом (OASIS Reference Model for Service Oriented Architecture V 1.0): Сервисно-ориентированная архитектура – это парадигма организации и использования распределенных информационных ресурсов таких как: приложения и данные, находящихся в сфере ответственности разных владельцев, для достижения желаемых результатов потребителем, которым может быть: конечный пользователь или другое приложение.

Введение

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

Цели

Для крупных информационных систем, уровня предприятия, и выше:

Принципы SOA

  1. Архитектура, как таковая, не привязана к какой-то определённой технологии,
  2. Независимость организации системы от используемой вычислительной платформы (платформ),
  3. Независимость организации системы от применяемых языков программирования,
  4. Использование сервисов, независимых от конкретных приложений, с единообразными интерфейсами доступа к ним,
  5. Организация сервисов как слабо-связанных компонентов для построения систем

Другие SOA-Концепции

Архитектура не привязана к какой-то определённой технологии. Она может быть реализована с использованием широкого спектра технологий, включая такие технологии как RPC, DCOM, веб-сервисы. SOA может быть реализована используя один из этих протоколов и, например, может использовать, дополнительно, механизм файловой системы, для обмена данными.

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

Elements of SOA, by Dirk Krafzig, Karl Banke, and Dirk Slama. Enterprise SOA. Prentice Hall, 2005

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

Таким образом, системы, основанные на SOA, могут быть независимы от технологий разработки и платформ (таких как .NET и т.д.). К примеру, сервисы, написанные на C#, работающие на платформах .Net и сервисы на Java, работающие на платформах Java EE, могут быть с одинаковым успехом вызваны общим составным приложением. Приложения, работающие на одних платформах, могут вызывать сервисы, работающие на других платформах, что облегчает повторное использование компонентов.

SOA может поддерживать интеграцию и консолидацию операций в составе сложных систем, однако SOA не определяет и не предоставляет методологий или

Языки высокого уровня, такие как порталов.

Использование компонентной архитектуры (SCA) для реализации SOA -- это область текущих исследований.

См. также


Wikimedia Foundation. 2010.

Игры ⚽ Нужен реферат?

Полезное


Смотреть что такое "Сервисно-ориентированная архитектура" в других словарях:

  • Сервисно-ориентированная архитектура баз данных — Сервис ориентированная архитектура баз данных  развитие архитектуры SOA. База данных является хранилищем сообщений, промежуточных состояний, метаинформации об очередях сообщений и сервисах. Отправка сообщений в очередь и прием сообщений из… …   Википедия

  • 1С:Сеть — является EDI сервисом компании 1С, встроенным в программные продукты 1С и представляет собой попытку решения дилеммы EDI: легкость подключения выгода от эксплуатации. Идея сервиса 1С:Сеть состоит в том, чтобы встроив подключение к EDI в каждую… …   Википедия

  • СОА — Сервис ориентированная архитектура (англ. модульный подход к разработке программного обеспечения, основанный на использовании сервисов (служб) со стандартизированными интерфейсами. В основе SOA лежат принципы многократного использования… …   Википедия

  • ООАП — Объектно ориентированное программирование (ООП) парадигма программирования, в которой основными концепциями являются понятия объектов и классов (либо, в менее известном варианте языков с прототипированием прототипов). Класс это тип, описывающий… …   Википедия

  • Объектно-ориентированный подход — Объектно ориентированное программирование (ООП) парадигма программирования, в которой основными концепциями являются понятия объектов и классов (либо, в менее известном варианте языков с прототипированием прототипов). Класс это тип, описывающий… …   Википедия

  • TQM — Всеобщее управление качеством (англ. Total Quality Management, TQM)  общеорганизационный метод непрерывного повышения качества всех организационных процессов. Содержание 1 История 2 Что такое Всеобщее управление качеством 3 …   Википедия

  • Soft — Запрос «Software» перенаправляется сюда. Cм. также другие значения. Программное обеспечение (произношение обеспечение не рекомендуется[1][2][3], точнее, не рекомендовалось[4]) наряду с аппаратными средствами, важнейшая составляющая информационных …   Википедия

  • Software — Запрос «Software» перенаправляется сюда. Cм. также другие значения. Программное обеспечение (произношение обеспечение не рекомендуется[1][2][3], точнее, не рекомендовалось[4]) наряду с аппаратными средствами, важнейшая составляющая информационных …   Википедия

  • Total Quality Management — Всеобщее управление качеством (англ. Total Quality Management, TQM)  общеорганизационный метод непрерывного повышения качества всех организационных процессов. Содержание 1 История 2 Что такое Всеобщее управление качеством 3 …   Википедия

  • Компьютерное программное обеспечение — Запрос «Software» перенаправляется сюда. Cм. также другие значения. Программное обеспечение (произношение обеспечение не рекомендуется[1][2][3], точнее, не рекомендовалось[4]) наряду с аппаратными средствами, важнейшая составляющая информационных …   Википедия


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»