Ориентация на сервисы — это парадигма проектирования программного обеспечения в форме услуг . Принципы ориентированной на сервисы разработки подчеркивают разделение задач в программном обеспечении. Применение ориентации на сервисы приводит к разделению единиц программного обеспечения на дискретные, автономные и доступные по сети единицы, каждая из которых предназначена для решения индивидуальной задачи. Эти единицы квалифицируются как услуги. [1] [2]
Ориентация на сервисы привлекла много внимания с 2003 года [3] из-за преимуществ, которые она обещает. К ним относятся повышенная окупаемость инвестиций , организационная гибкость и совместимость , а также лучшее согласование между бизнесом и ИТ . Она в значительной степени основывается на более ранних парадигмах проектирования и улучшает их с помощью стандартизации, слабой связанности и вовлеченности бизнеса. [4] Парадигма потеряла импульс в 2009 году; [5] с 2014 года возобновление интереса можно наблюдать под псевдонимом Microservices . В технологии платформы SOA разных поставщиков использовали разные определения ориентации на сервисы. Некоторые поставщики продвигают разные принципы и догматы по сравнению с другими, но существует изрядная доля общности. [6]
Ориентация на сервисы наследует небольшое количество принципов из более ранних парадигм, включая объектно-ориентированное программирование , компонентно-ориентированную программную инженерию и открытую распределенную обработку. Общепризнанно, что несколько принципов ориентации на сервисы имеют свои корни в объектно-ориентированной парадигме проектирования: эти две парадигмы являются взаимодополняющими, и всегда будет потребность в обеих. [7] Услуги также наследуют ряд особенностей программных компонентов, включая
Open Distributed Processing (ODP) объединяет концепции открытых систем и распределенных вычислений, которые являются существенными характеристиками сервис-ориентации. Все ключевые особенности ODP унаследованы сервис-ориентацией, включая федерацию, совместимость, гетерогенность, прозрачность и торговлю/посредничество.
Дон Бокс был одним из первых, кто предложил набор рекомендаций по проектированию, названных им «четырьмя принципами сервис-ориентированности», которые он описал в первую очередь в отношении платформы Microsoft Indigo (впоследствии Windows Communication Foundation ), которая появилась в то время:
Другие поставщики и независимые консультанты опубликовали свои определения сервис-ориентации и SOA, например, N. Josuttis в "SOA in Practice" и D: Krafzig et al. в "Enterprise SOA". Статья в выпуске IBM System Journal за декабрь 2005 г. [8] под названием "Влияние сервис-ориентации на уровень бизнеса" [9] предоставила исследование того, как парадигма сервис-ориентации соотносится с фундаментальной компонентизацией и IBM Component Business Model (CBM).
Пол Аллен определяет ориентацию на сервис как (бизнес) парадигму с тремя основными компонентами: бизнес-архитектура, сервисно-ориентированная архитектура и программно-ориентированное управление. В книге Аллена определяются семь сервисно-ориентированных точек зрения (обозначенных как SOV7): Аллен, Пол (2006). Стратегии и передовой опыт сервисно-ориентированной ориентации . Cambridge University Press. ISBN 978-0521843362.
Аллен использует точки зрения в качестве отправной точки для постановки вопросов в процессе проектирования.
Ориентация на сервисы продолжает получать все большее признание как важная часть ландшафта сервисно-ориентированных вычислений и обоснованный подход к проектированию для достижения сервисно-ориентированной архитектуры .