Jump to content

Принцип детализации услуги

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

Определение

[ редактировать ]

Детализация сервиса — это как проблема предметной области приложения ( детализация бизнеса ), так и проблема проектирования программного интерфейса ( техническая детализация ); это свойство контракта на обслуживание , предоставляемое поставщиком услуг. Это относится к семантике и синтаксису содержимого входящего (запроса) и исходящего (ответного) сообщения, которое можно рассматривать как экземпляры двух общих шаблонов интеграции предприятия : командного сообщения и документального сообщения . По определению операция крупнодетализированной службы имеет более широкую сферу применения, чем мелкодетализированная служба, хотя эти термины относительны. Первый вариант обычно требует большей сложности конструкции, но может уменьшить количество вызовов, необходимых для выполнения задачи. [1]

Критерии

[ редактировать ]

Из-за ошибок распределенных вычислений найти адекватную степень детализации сложно. [2] Единого простого ответа не существует, но существует ряд критериев (см. ниже). Основная цель моделирования сервисов и проектирования с детализацией — добиться слабой связи и модульности , которые являются двумя основными принципами SOA. [3] и удовлетворить другие архитектурно значимые требования .

На степень детализации сервиса влияет множество факторов; [4] Четыре особенно важных фактора, которые следует учитывать при проектировании достаточной детализации, — это производительность, размер сообщения, транзакционность и бизнес-функция:

Бизнес-функция

[ редактировать ]

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

Производительность

[ редактировать ]

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

Размер сообщения

[ редактировать ]

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

Характеристики качества обслуживания, включая транзакционность

[ редактировать ]

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

Существует гораздо больше критериев принятия решений для поиска подходящей степени детализации; глобального оптимума не существует. Шестнадцать таких критериев сопряжения взяты из литературы. [5]

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

  1. ^ Джосуттис, Н. (2007). SOA на практике. Севастополь, Калифорния, США: О'Рейли. ISBN   978-0-596-52955-0 .
  2. ^ Ф. Лейманн «Свободная связь и архитектурные последствия» , основной доклад ESOCC 2016 г.
  3. ^ Крафциг Д., Банке К., Слама Д. (2004). Корпоративная SOA: лучшие практики сервис-ориентированной архитектуры, 1-е издание. Прентикс Холл. ISBN   978-0131465756 .
  4. ^ Страница 21 в Циммерманне, О., Руководящие модели и инструменты принятия решений для SOA, облака и проектирования решений для аутсорсинга, http://resources.sei.cmu.edu/asset_files/Presentation/2011_017_001_24654.pdf
  5. ^ Service Cutter: систематический подход к декомпозиции сервисов, М. Гизель, Л. Кёлбенер и др.. Европейская конференция по сервис-ориентированным и облачным вычислениям, 185-200, ( PDF )
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 588b29df7519389eb43f74509dbe7c8b__1678035120
URL1:https://arc.ask3.ru/arc/aa/58/8b/588b29df7519389eb43f74509dbe7c8b.html
Заголовок, (Title) документа по адресу, URL1:
Service granularity principle - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)