Модульный подход к разработке ПО, основанный на использовании сервисов (служб) со стандартизированными интерфейсами. В основе SOA лежат принципы многократного использования функциональных элементов ИТ, ликвидации дублирования функциональности в ПО, унификации типовых операционных процессов, обеспечения перевода операционной модели компании на централизованные процессы и функциональную организацию на основе промышленной платформы интеграции.
Компоненты программы могут быть распределены по разным узлам сети, и предлагаются как независимые, слабо связанные, заменяемые сервисы-приложения. Программные комплексы, разработанные в соответствии с SOA, часто реализуются как набор веб-сервисов, интегрированных при помощи известных стандартных протоколов (SOAP, WSDL, и т. п.). Интерфейс компонентов SОА-программы предоставляет инкапсуляцию деталей реализации конкретного компонента (ОС, платформы, языка программирования, вендора, и т. п.) от остальных компонентов. SOA предоставляет гибкий и элегантный способ комбинирования и многократного использования компонентов для построения сложных распределённых программных комплексов. В ситуации роста популярности облачных систем для создания гибридных центров обработки данных сервисная архитектура является необходимым условием. Одной из причин неудач SOA была чрезмерная ориентированность на техническую сторону. Необходимо представлять SOA в виде архитектурного подхода, а не технического решения, считают аналитики. Сервис-ориентированные среды требуют более высокого уровня абстракции в проектировании.
|
|