Document 4705489

advertisement
Интеграция корпоративных приложений
и автоматизация бизнес-процессов
с использованием
Oracle BPEL Process Manager
BPEL
Алексей Сальников
Oracle СНГ
Консультант по интеграционным технологиям
Барьеры на пути к успеху
Сложность инфраструктуры
Предприятие
Клиенты & Агенты
Поставщики & Партнеры
Барьеры на пути к успеху
Негибко, Неэффективно, Дорого
• Интеграция точка-точка
• Файловый обмен как
инструмент
прогнозирования и
отчетности
• Взаимодействие с
поставщиками и клиентами
через телефон/email
Почему бы не запрограммировать?
Inventory
Mgmt
Manufacturing
Inventory
DBMS
Web App
Procurement
HR
Finance
Billing
CRM
Fulfillment
Барьеры на пути к успеху
Негибко, Неэффективно, Дорого
• Не управление ИТ инфраструктурой, а ее
программирование
• Для сопровождения требуется команда программистов
• Обновление даже одного приложения влечет
модификацию (перепрограммирование) всех
сопряженных интерфейсов
• Нелинейное увеличение сложности сопровождения в
зависимости от количества систем
• Кроме приложений, в интеграционные процессы часто
вовлечены еще и пользователи
• Cложность самостоятельной реализации задач Workflow
Что такое SOA?
ПРИЛОЖЕНИЯ
Приложение .NET
Веб приложение
.NET, Java, Basic, MS
Office…
Портал
ЛОГИКА ВЫПОЛНЕНИЯ
BPEL
XSLT
XQuery
Оркестровка
WS-Security
WS-Policy
Управление и Безопасность
WSDL
WSDL
WSDL
WSDL
WSDL
SOAP
JDBC
JMS
JCA
RMI
.NET/Axis
Database
Mainframe
ERP
EJB
СЕРВИСЫ
XML, XML Schema
WSDL/WSIF
SOAP, JCA, JMS
Преимущества сервис
ориентированного подхода
ПРИЛОЖЕНИЯ
Приложение .NET
Веб приложение
Различные
варианты
доступа
Портал
ЛОГИКА ВЫПОЛНЕНИЯ
Повторное
использование
Оркестровка
Адаптивность
Управление и Безопасность
WSDL
WSDL
WSDL
WSDL
WSDL
SOAP
JDBC
JMS
JCA
RMI
СЕРВИСЫ
Реестр сервисов
…
.NET/Axis
Database
Mainframe
ERP
EJB
Пример: активизация тарифного плана
Заявление для обеспечения и активации планов сотового телефона
Telco Activation Services
J2EE Service provisioning systems
Local Service Activation Manager
Approval Rules
Application
Server
Sales/Customer Service Interfaces
New Plan Selection
User Interface
Exception Handling and
Rollback/Re-try
ADF
BPEL
Process Manager
Billing Services
Payment Services
Credit Card Payment Services
Требования к оркестровке процессов
Java Services (EJB)
Messaging Destinations (JMS)
Legacy Applications (JCA, adapters)
Доступ к ИС
Portal
Гетерогенные системы и форматы данных
Поддержка различных API
User Tasks
Синхронизация различных источников данных
Java Platform
?
ADF
Оркестровка
Управление
Асинхронность, Координация потоков,
Преобразования данных, Откат изменений,
Контроль версий, Аудит
Web Services (Sync and Async)
Масштабируемость
Непредсказуемые нагрузки
Управление и безопасность
Контроль доступа, Шифрование, Ведение логфайлов и Метрик, Независимость от сервиса
BPEL
Введение в BPEL
Что такое BPEL?
Язык разметки для организации множества
дискретных сервисов в непрерывный процесс
• Лучшее решение
для интеграции
Веб-сервисов,
а также
Java, JCA и JMS
SAP R/3
start
ИНН не
найден!
• Базируется на
открытых XML
стандартах
• Процесс — это
сервис
Router
Billing
end
BPEL на примере
<variable>
<process>
BPEL Flow
10:00am
start
Credit Rating
<faultHandlers>
Get Rating
<invoke>
<flow>
<partnerLink>
Handle Negative
Credit Exception
Send Loan Application
Send Loan Application
<invoke>
United Loan
<receive>
<partnerLink>
Receive Loan Offer
Receive Loan Offer
</flow>
<switch>
</process>
?
end
Select Lowest Offer
03:00pm
Star Loan
<partnerLink>
Oracle BPEL Process Manager
BPEL
Oracle BPEL Process Manager
Инфраструктурное решение масштаба предприятия для
проектирования в формате BPEL, размещения и
управления бизнес-процессами.
• Полная поддержка
BAM
BPEL
Designer
Oracle BPEL Process Manager
Сервисы адаптеров
BPEL
Console
Трансформация данных
Web Service
JMS
XQuery
XSLT
User
Tasks
BPELJ
JCA
Email
Ядро BPEL
Application Server ( Oracle, BEA, JBoss, IBM)
Адаптеры
спецификации BPEL
• Легкий в использовании
инструмент моделирования
• Масштабируемый и
надежный сервер
• Широкие возможности по
управлению и мониторингу
• Поддержка Oracle AS, JBoss,
БД состояний
(Oracle Database)
WebLogic и WebSphere
Инструмент проектирования
BPEL Designer (JDeveloper / Eclipse)
• Визуальное
моделирование
Drag-and-drop
• Родная, на 100%
стандартная
реализация
спецификации BPEL
• Подготовка и запуск
процесса занимает
меньше 15 минут!
Консоль администрирования
BPEL Console
• Инициализация
процессов
• Визуальный
мониторинг
• Аудит
• Администрирование
Преобразование данных
XSLT Mapper
• Связывание полей
• Drag-and-drop
• Auto-mapping
• Встроенная
библиотека функций
• Встраивание
собственных
функций
• Поддержка списков
и итерации
Адаптеры
• Настраиваются,
не программируются
• Вызовы и события
• Оптимальное
связывание
• Более 250 систем,
любой JCA адаптер
Управление потоками работ (Workflow)
Системы
Люди
BPEL
Oracle BPEL Process Manager позволяет связывать
информационные системы и вовлекать пользователей в
законченные бизнес–процессы
Моделирование потоков работ (workflow)
• Маршрутизация
• Роли
• Вложения
• Санкционирование
• Уведомления через
e-mail, FAX, SMS…
• Интеграция с LDAP
Рабочее место (Worklist Application)
Готовое приложение
с исходными текстами.
Можно изменить внешнее
представление или поведение.
Рабочее место (Worklist Application)
Автоматически создается форма
для ввода/обновления данных.
Исходный текст в формате JSP
доступен для изменения
внешнего вида или поведения.
Эффективность
BPEL
Высокая производительность
BPEL-Optimized
SOAP Stack
BPEL Server
LOAD BALANCER
App. Server
Binary DOM
• Lazy Loading
• Smart Partitioning
• W3C DOM Interface
• Support for Large Documents
BPEL Server
App. Server
Dehydration Store
(Oracle Database)
BPEL Server
Stateless Architecture
• Clustering
• Fail Over
App. Server
Support for large BPEL Processes (20,000+ activities)
Масштабируемость On Demand
• По необходимости
• Без изменения кода
• Легкость
администрирования
Веб-сервисы?! Это XML по HTTP?!
WSDL
HTTP
SOAP
ИНТЕРФЕЙС
ПРИВЯЗКА
Веб сервисы
Приложения .NET
ДА!
НО НЕ ОБЯЗАТЕЛЬНО!
Веб-сервисы?! Это XML по HTTP?!
WSDL
HTTP
SOAP
ИНТЕРФЕЙС
ПРИВЯЗКА
RMI
Веб сервисы
Приложения .NET
Java/J2EE приложения
ПРИВЯЗКА
JDBC
Базы данных
Хранимые процедуры
JCA
Пакетные приложения
Oracle, SAP…
ПРИВЯЗКА
Вовлечение Java/J2EE ресурсов
• Вставка Java кода в процесс BPEL
• Наивысшая производительность
• Реализовано как расширение стандарта BPEL
• Привязка WSIF
• Позволяет вызывать Java объекты из BPEL как Веб-сервисы
• Имеет ограничения по используемым интерфейсам Java
• http://ws.apache.org/wsif/
• Оборачивание Java кода Веб-сервисом (SOAP)
• Используем любой инструмент (например JDeveloper)
• Дополнительные потери производительности
Поддержка различных платформ
Application Server
IDE
• Oracle Application Server
• JDeveloper
• BEA WebLogic
• Eclipse
• IBM WebSphere
• JBoss
Operating Systems
• Linux
Database
• Window …2003
• Oracle Database, Lite
• Solaris
• MS SQL Server
• HP UX
• IBM DB2
• AIX
Пример внедрения
BPEL
Belgacom
Требования
• Консолидация всех сервисов активации в единой стандартной
платформе
• Автоматизация процесса обработки ошибок
• Постоянное изменение и адаптация процессов
Результаты
• BPEL — сердце процессов активации, изменения и ремонта
(DSL, арендованные линии, интерактивное TV)
• Обработка 15 000 ордеров в день
• Начался как маленький проект наращиваемый постепенно в
течении 18 месяцев
• Реализовано 300+ процессов BPEL, некоторые в 100+ шагов
• Существенно снижено количество ошибок
Belgacom
Приложение обеспечения и активации DSL
Activation Services
DSL Activation Manager
SDSL Activation Manager
SLEE Access Manager
Application
Server
Exception Management Task
Order Review Task
Batch
Processor
(Stream of orders)
ADF
BPEL
Process Manager
Reporting Service
Account Management Database
Oracle AS Integration 10g
Adapters
InterConnect
BPEL PM
B2B
Oracle Application Server
BAM
Информация для контактов
Алексей Сальников
Oracle СНГ
Консультант по интеграционным технологиям
Тел. +7 (495) 364-52-54
oracle.com/bpel
Download