Автор: Пользователь скрыл имя, 12 Января 2011 в 15:58, доклад
Service Oriented Architecture (SOA) - технология разработки распределенных систем, функциональность которых обеспечивается с помощью сервисов (служб). Службы взаимодействуют между собой посредством сообщений и реализуют бизнес-функции и правила, описанные их контрактом (интерфейсом). W3C определяет SOA как
Service
Oriented Architecture (SOA) - технология разработки
распределенных систем, функциональность
которых обеспечивается с помощью сервисов
(служб). Службы взаимодействуют между
собой посредством сообщений и реализуют
бизнес-функции и правила, описанные их
контрактом (интерфейсом). W3C определяет
SOA как
Набор компонент, которые
могут быть вызваны,
и чье описание может
быть опубликовано и
найдено
Службы предоставляют доступ к данным,
бизнес-процессам и другим информационным
системам. Вызов служб может быть как синхронным,
так и асинхронным. SOA-системы обычно разрабатываются
на основе web-служб и, поэтому, могут быть
использованы в гетерогенных системам,
состоящих из большого числа приложений,
работающих на различных платформах и
созданных с помощью разных языков программирования.
Однако для реализации SOA web-службы не обязательны,
как и любая система, построенная на основе
web-служб, не обязательно соответствует
SOA. SOA система может быть построена и на
применении COM/DCOM, EJB, CORBA. Преимуществом
web-служб является то, что они основаны
на открытых стандартах технологий (XML,
SOAP, UDDI, WS-*), которые реализованы на многих
платформах.
Кроме технологического аспекта SOA содержит стратегии, методы и платформы приложений, с помощью которых создаются, работают и вызываются службы. Примером такой платформы приложений может служить .NET Framework компании Microsoft. Web-службы в .NET Framework являются частью платформы для разработки web-приложений ASP.NET.
Основными выгодами от использования SOA являются:
Все компоненты SOA-приложений могут быть условно разделены на 3 группы: службы, клиенты служб и брокеры служб, предоставляющие услуги по публикации информации о службах и по поиску служб.
Сами службы состоят из интерфейса и реализации этого интерфейса. Интерфейс предоставляет метаданные о службе, данные для идентификации службы и описание входных/выходных параметров методов службы. Реализация интерфейса для клиента службы представляет собой "черный ящик".
Клиентом службы может быть настольное приложение, работающее на компьютере пользователя, серверное приложение, другое web-приложение или служба.
Брокером в случае использования web-служб может быть UDDI-сервер, содержащий регистр служб, или собственное решение, использующее расширения WSE.
В случае использования web-служб доступ к службам происходит через сеть по стандартным протоколам. Сами службы описываются на стандартном языке (контракт службы) и публикуют эту информацию при помощи брокера. Службы разделяют свой интерфейс и его реализацию. Для вызова службы клиентскому приложению нужно только описание интерфейса службы - информация же о реализации службы не нужна клиентам. Реализация службы может меняться, не затрагивая клиентов и без необходимости предоставлять клиентам новую версию описания службы - в этом и проявляется низкая связанность частей системы (loose coupling). Другим преимуществом разделения интерфейса и реализации является возможность выбора клиентом службы из нескольких служб с одинаковым интерфейсом путем простого указания адреса нужной службы. В этом скрыта возможность для расширения и масштабирования системы после ее создания. В систему можно добавлять новые службы или новых клиентов служб, не нарушая уже существующую функциональность. Причем для добавления новой функциональности к системе не нужно иметь доступ к ее исходному коду.
Службы можно условно поделить на пять типов:
SOA является очередным
этапом в архитектуры
BPM (Business Process Management) - одна из современных управленческих методик включающая в себя совокупность идеологии и программного обеспечения управления бизнес-процессами.
BPM
представляет собой молодой
С точки зрения философии управления, BPM призывает отойти от функционального осмысления деятельности организации к её видению как совокупности бизнес-процессов пересекающих функциональные границы. Здесь, в отличие от реинжиниринга, ориентация происходит на непрерывный процесс усовершенствования бизнес-процессов компании. Кроме того, концепция BPM предполагает фокус на взаимодействии как между людьми, так и системами и аппаратными средствами.
Однако сам подход BPM прочно связан с BPMS - Business Process Management System/Solution, технологической составляющей BPM. (Следует заметить, что в настоящее время термины BPM и BPMS применяются равнозначно для общего названия подхода). С этой стороны BPM представляет собой интегрированный набор инструментов, позволяющий моделировать процессы, автоматически их исполнять и контролировать эффективность.
Для реализации этих трех аспектов процессного управления BPMS состоит из трех глобальных элементов:
Средство моделирования: Для описания и моделирования бизнес-процессов BPM не использует такие общепринятые в реинжиниринге нотации как IDEF, и другие. Моделирование бизнес-процессов больше похоже на средства инструментов класса Workflow, достаточно упрощенное для возможности моделирования бизнес-процессов непрофессионалами. Однако разработчики BPMS так же пошли по пути стандартизации, и в настоящий момент существует нотация BPMN и стандарт BPEL.
Средство исполнения: Исполнение начинается со схемы бизнес-процесса, которая загружается в «движок», где происходит запуск процесса. Исполнение подразумевает автоматическое прохождение шагов процесса, а так же реализацию контроля. При этом каждый исполнитель, задействованный в функционировании бизнес-процесса, видит требуемое от него задание. Реализация исполнения бизнес-процессов так же связана со стандартом BPEL.
Средство мониторинга: Мониторинг подразумевает возможность оперативно, в реальном времени, отслеживать прохождение процесса по этапам и исполнителям, а также позволяет формировать отчетность и оценивать результативность и показатели процесса.
Важно понимать, что BPMS не представляет собой отдельную, независимую систему, способную единолично создать информационную инфраструктуру предприятия. С этой точки зрения BPMS – средство интеграции, способное обеспечивать взаимодействие различных корпоративных систем и приложений, и, что особенно важно с точки зрения идеологии BPM, людей, с этими приложениями работающими.
В общем виде можно представить, что BPM впитала в себя наработки следующих подходов и методик:
К основным принципам и эффектам BPM относят способность системы удовлетворять информационные потребности на конкретных рабочих местах, в необходимом объеме и в нужное время, прозрачность и контролируемость процессов, способность быстро и гибко реагировать на изменения, что, в свою очередь, представляет собой одну из предпосылок идеологии BPM.
Нотация моделирования бизнес процессов (Business Process Modeling Notation, BPMN) — графическая нотация для моделирования бизнес процессов.
Спецификация BPMN описывает графическую нотацию для отображения бизнес-процессов в виде диаграмм бизнес процессов (ДБП). BPMN ориентирована как на технических специалистов, так и на бизнес пользователей. Для этого язык использует базовый набор интуитивно понятных элементов, которые позволяют определять сложные семантические конструкции. Кроме того, спецификация BPMN определяет как диаграммы, описывающие бизнес процесс, могут быть трансформированы в исполняемые модели на языке BPEL.
Основная цель BPMN — создание стандартной нотации понятной всем бизнес пользователям. Бизнес пользователи включают в себя бизнес аналитиков, создающих и улучшающих процессы, технических разработчиков, ответственных за реализацию процессов и менеджеров, следящих за процессами и управляющих ими. Следовательно, BPMN призвана служить связующим звеном между фазой дизайна бизнес процесса и фазой его реализации.
В
настоящий момент существует несколько
конкурирующих стандартов для моделирования
бизнес процессов. Распространение BPMN
поможет унифицировать способы
представления базовых концепци
Моделирование в BPMN осуществляется посредством диаграмм с небольшим числом графических элементов. Это помогает пользователям быстро понимать логику процесса. Выделяют четыре основные категории элементов:
Элементы этих четырёх категорий позволяют строить простейшие диаграммы бизнес процессов (ДБП). Для повышения выразительности модели спецификация разрешает создавать новые типы объектов потока управления и артефактов.