Тема 24. Процессно-ориентированное проектирование — КиберПедия 

Особенности сооружения опор в сложных условиях: Сооружение ВЛ в районах с суровыми климатическими и тяжелыми геологическими условиями...

Адаптации растений и животных к жизни в горах: Большое значение для жизни организмов в горах имеют степень расчленения, крутизна и экспозиционные различия склонов...

Тема 24. Процессно-ориентированное проектирование

2018-01-29 432
Тема 24. Процессно-ориентированное проектирование 0.00 из 5.00 0 оценок
Заказать работу

План лекции

1. Специфика процессно-ориентированного проектирования

2. Концепция сервисно-ориентированной архитектуры ИС (SOA)

3. BPEL – инструмент оркестровки бизнес-процессов

4. От BPMN к BPEL

5. Интеграция приложений оркестровка и хореография

 

1.Специфика процессно-ориентированного проектирования

Процессно-ориентированное проектирование – это современный подход к созданию систем на основе инструментальных средствBPMS.

Современные информационные системы, ориентированныена бизнес-приложения, должны проектироваться на основе концепции постоянного улучшения процессов предприятия – BusinessProcess Management (BPM), реализуемой с помощью программныхпродуктовклассаBusinessProcessManagementSystem (BPMS).

Проектирование систем с использованием BPMS имеет следующую замечательную особенность: стандартные процессы изложениятребований, проектирования, реализации, внедрения, эксплуатациии сопровождения образуют единое целое, в котором весьма условноможно выделить указанные составляющие. После передачи системы в эксплуатацию немедленно начинается оптимизация процессовбизнес-аналитик выполняет поиск «бутылочного горлышка» – наиболее узкого места, которое снижает суммарную эффективность всехпроцессов предприятия. Это возможно благодаря использованиюкомпонентовBusinessActivityMonitoring (BAM) длямониторингаи контроля над исполнением бизнес-процесса, а также благодарявозможностям системы по симулированию исполняемого процесса.

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

Стандартный современный сценарий автоматизации бизнес-процессов состоит из следующих этапов:

1) создание набора компонентов, реализующих элементы бизнес-функциональности; в настоящее время реализация компонентов чащевсего осуществляется в виде веб-сервисов, хотя традиционные приложения, COM- и CORBA-компоненты не запрещены;

2) оркестровка – организация взаимодействия компонентовсервисов, приложений в рамках бизнес-процессов;

3) хореография процессов – организация взаимодействия параллельных бизнес-процессов.

Оркестровка описывает, как сервисы должны взаимодействоватьмежду собой, используя механизм обмена сообщениями, для того, чтобы был реализован конкретный бизнес-процесс. В сервис-ориентированной архитектуре оркестровка сервисов реализуется согласностандартуWS-BPEL (WS–WebServices; BPEL–BusinessProcessExecution Language).

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

Для реализации первого этапа – реализации элементов бизнес-функциональности – может использоваться любой инструментарий, включая очень популярный Eclipse Integrated Development Environment (IDE) иJava™ Platform, StandardEdition (JavaSE) 6. Элементыбизнес-функциональности – это детали, из которых синтезируетсяпрограммный код бизнес-процесса. При всей чрезвычайной важности правильной и эффективной реализации этих элементов все жене они определяют суть бизнес-процесса. Главное в реализации бизнес-процесса – это последовательность вызова элементов бизнес-функциональности, реализованных в виде веб-сервисов или иныхпрограммных компонентов.

Продукты класса BPMS используются для реализации второго этапа современного сценария автоматизации бизнес-процессов. И самэтот этап состоит из нескольких шагов, практически одинаковыхна всех программных платформах. Отличие заключается только в названиях соответствующих программных инструментов. В частности, при использовании платформы Eclipse SOA Tools Platform BPMNModeler оркестровка может быть реализована следующим образом:

1) в инструментальной среде Eclipse SOA Tools Platform (STP) BPMN Modeler в графической форме с использованием нотацииBPMN создается бизнес-модель, что дает представление бизнес-процесса и в виде диаграммы, и в виде ассоциированного XML-кода;

2) XML-код BPMN-диаграммы конвертируется в исполняемыйXML-код языка BPEL с помощью инструментальной системы EclipseATLASTransformationLanguage (ATL), созданнойфирмойBABEL;

3) исполняемый XML-код языка BPEL разворачивается в средеApache Orchestration Director Engine (ODE).

 

Концепция сервисно-ориентированной архитектуры ИС (SOA)

Основа SOA. Главная идея сервисно-ориентированной архитектуры (Service-OrientedArchitecture (SOA)) заключаетсявтом, чтоинформационная система разбивается на несколько функционально законченных узлов, называемых сервисами, которые взаимодействуют друг с другом. Сервисами могут быть любые слабо связанныезаменяемые, возможно, распределенные программные компоненты, имеющие стандартизированные интерфейсы для взаимодействияпо стандартизированным протоколам.

Термин «слабая связанность» означает слабую связь компонента (сервиса) с его потребителем. Практически эта связь отсутствует, поскольку компоненты создаются без каких-либо допущений о томкто будет их использовать. Определяется только механизм использования – интерфейс. С понятием «интерфейс» связано описаниереализуемой функциональности и способа доступа к ней. Слабаясвязанность позволяет изолировать реализации сервисов и их потребителей. Каждый сервис может заменяться другим (более эффективным), требуется только сохранение реализуемой функциональностии способа доступа, т. е. сохранение интерфейса. Любой сервис можетиспользоваться любым потребителем функциональности, предоставляемой сервисом.

Выделим следующее:

1) веб-сервисы – это современная прогрессивная, но все же частная разновидность сервисов в рамках SOA;

2) для осуществления взаимодействия различных сервисов могутиспользоваться различные механизмы. Например, веб-сервисы могутвзаимодействовать по протоколу SOAP (Simple Object Access Protocol), удаленные объекты Java – посредством интерфейса RMI (RemoteMethodInvocation), компонентыCORBA–попротоколуIIOP (Internet INTERORB Protocol), многофункциональные десктоп-приложенияи Enterprise-системы – посредством динамической модульной шиныOSGI (Open Services Gateway Initiative);

3) каждый сервис можно интерпретировать как «черный ящик, который умеет получать, обрабатывать и выдавать информацию.

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

Концепция SOA – это дальнейшее развитие идеи компонентного проектирования систем. Появились новые формы строительных блоков – веб-сервисы, взаимодействующие по собственномупротоколу SOAP, которые становятся доминирующими формамикомпонентов информационной системы. Поэтому новая архитектура и называется сервисно-ориентированной, а не просто компонентной.

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

Лобовое решение данной проблемы заключается в создании конвертеров данных из формата одного сервиса в форматы всех другихсервисов, с которым он взаимодействует. Трудоемкость такого решения имеет верхнюю асимптотическую оценку O (n 2), где n – числосервисов в системе.

Альтернативное и более рациональное решение имеет сервиснаяшинапредприятия (EnterpriseServiceBus (ESB)). ESB – это посредник между сервисами, обеспечивающий унификацию формата обмена: при использовании сервисной шины достаточно написать длякаждого сервиса один конвертер – в формат шины. Верхняя асимптотическая оценка трудоемкости этой процедуры O (n). На ESBвозлагаются функции синхронизации и управления обменом междусервисами.

Практически каждый крупный поставщик типовых проектныхрешений предлагает собственную реализацию сервисной шины. Всебольшую популярность в настоящее время получают следующие реализацииESB:

- OPENESB отфирмы Sun Microsystems;

- IBM WEBSPHERE ESB от IBM;

- ALSB (AQUALOGIC Service Bus) от BEA Systems (куплена Oracle);

- Application Server 10g+ WEBSERVICE Manager от Oracle;

- JBOSS ESB+ JBOSS Web Services от JBOSS.

SOA основывается на открытых стандартах и обеспечивает платформонезависимую интеграцию функциональности. В то же времяона сама имеет единую основу, на которой базируется взаимодействие ее составных частей. Этой основой является XML (EXTENSIBLEMarkup Language) – рекомендованный Консорциумом Всемирнойпаутины расширяемый язык разметки, представляющий собой набор общих синтаксических правил. XML – это текстовый форматхранения структурированных данных, предназначенных для обменаинформацией между программами, а также для создания более специализированных языков разметки, таких как XHTML. XML является упрощенным подмножеством языка SGML (Standard GeneralizedMarkup Language).

XML является фундаментом практически всех стандартов веб-сервисов, втомчислеXMLSchema, SOAP, WSDL (WebServicesDescriptionLanguage) иUDDI (UniversalDescription, DiscoveryandIntegration). Эти стандарты опираются на XML как на поддерживаемыйво всем мире формат обмена информацией между провайдерамисервисов и инициаторами запросов в SOA.

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

Наиболее известные основанные на XML стандарты. BPML(BusinessProcessModelingLanguage) –предшественникBPEL, концептуально более полный язык реализации бизнес-процессов, появившийся в марте 2001 г. К сожалению, инициатор работ по поддержке BPM – некоммерческая организация Business Process Management Initiative (BPMI) – отреклась от BPML в пользу более простогоязыка BPEL. Оба языка (BPML и BPEL) имеют блочную структуру.

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

BPEL поддерживается некоммерческой организацией BPMI (подвлиянием корпораций IBM и Microsoft), BPML – рабочей группойOMG (Object Management Group), до 2005 г. в союзе с компанией SAP.

В 2005 г. OMG объединилась с BPMI и официально присоединиласьк процессу продвижения BPEL. В начале 2008 г. SAP также заявилао переходе к поддержке BPEL.

XLANG/s (XML Language) – язык бизнес-процессов на базе XMLпредшественник BPEL. Он опубликован в декабре 2000 г. корпорацией Microsoft, использовался в Microsoft BIZTALK Server для управления приложениями и веб-сервисами. Разработан этот язык дляиспользования интернетовских стандартов, таких как XML, XSD,WSDL. Он имеет встроенную поддержку работы с.NET-объектамии сообщениями. XLANG/s может рассматриваться как язык передачи сообщений с некоторыми из возможностей языка C#. В то жевремя XLANG/s-программы не переносимы в C#. Аналогично BEPLи BPML он имеет блочную структуру, не имеет жесткой привязкик веб-сервисам, предполагает активное использование.NET-приложений в качестве сервисов ИС.

WSFL (WebServicesFlowLanguage) –языкнаосновеXMLдляописания веб-сервисов как части определения бизнес-процесса; он описывает композицию произвольного типа веб-служб в рамках одной модели потоков (Flow Model). Композиция описываетсяпоследовательностью точек доступа к функциям, предоставляемымразличными службами. Порядок запуска сервисов определяется с помощью потоков управления и потоков данных между веб-службамиWSFL опубликован корпорацией IBM через 3 мес после публикацииXLANG/s. IBM разработала WSFL, опираясь на спецификации таких существующих стандартов, как SOAP, UDDI, WSDL и XMLP.

Основной признак этого языка – наличие реализации модели потоков. В отличие от BEPL, BPML и XLANG он не имеет блочнойструктуры.

XPDL (XMLProcessDefinitionLanguage) –XML-языкописаниярабочих процессов, относящихся к любым сферам деятельности. Онявляется аналогом WSFL – также реализует модель потоков и не имеет блочной структуры. Язык XPDL является конкурентом BEPL, BPML и XLANG. Он не имеет жесткой привязки к веб-сервисамвместо них используется абстрактное понятие внешнего приложения. Разработан этот язык компанией Workflow Management Coalition (WFMC) в качестве стандарта для импорта-экспорта описанийбизнес-процессов. На его основе решается задача интеграции программных средств разных производителей: разработчики графических средств для моделирования и реинжиниринга бизнес-процессоввстраивают в свои продукты возможность экспорта в формате XPDL, а разработчики BPM-систем – возможность импорта. Это облегчаеторганизациям, уже использующим средства моделирования бизнес-процессов, путь к внедрению BPM-решений: они могут использоватьуже имеющиеся у них схемы бизнес-процессов.

SOAP – простой, основанный на XML протокол, позволяющийприложениям обмениваться информацией по транспортным протоколам, таким как HTTP. Благодаря XML протокол SOAP имеетследующие свойства:

1) пригодность для использования в Интернете;

2) структурированность, удобочитаемость (благодаря текстовойприроде XML);

3) платформонезависимость.

Благодаря этим преимуществам SOAP является рекомендованными самым широко используемым коммуникационным протоколом длявеб-сервисов. Поскольку веб-сервисы являются базой SOA, то этотпротокол является основным коммуникационным протоколом длявсех решений в рамках SOA.

WSDL (WebServicesDescriptionLanguage) –основанныйнаязыкеXML язык описания веб-сервисов и их интерфейсов. WSDL-описания применяются в процессно-ориентированном проектированииИС на основе языков исполнения бизнес-процессов и архитектурыSOAP.

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

1) types – определение типов данных – отправляемых и получаемых сервисом XML-сообщений;

2) message – элементы данных – сообщения, используемые веб-сервисом;

3) PORTTYPE – абстрактные операции – список операций, выполнение которых может быть инициировано сообщениями;

4) binding – связывание сервисов – способ, которым сообщениебудетдоставлено.

EBXML (Electronic Business using EXTENSIBLE Markup Language –

язык, являющийся стандартным средством определения бизнес-транзакций, которые могут выполняться между различными бизнес-субъектами. Язык EBXML определяет стандартные методы дляобмена сообщениями, устанавливая торговые связи и регистрируябизнес-процессы между компаниями.

 


Поделиться с друзьями:

Индивидуальные очистные сооружения: К классу индивидуальных очистных сооружений относят сооружения, пропускная способность которых...

Общие условия выбора системы дренажа: Система дренажа выбирается в зависимости от характера защищаемого...

Историки об Елизавете Петровне: Елизавета попала между двумя встречными культурными течениями, воспитывалась среди новых европейских веяний и преданий...

Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначен­ные для поддерживания проводов на необходимой высоте над землей, водой...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.01 с.