get on top of your business processes through automation ... · ibm software group ® get on top of...
TRANSCRIPT
IBM Software Group
®
Get on top of your business processes through automation with WebSphere and WebSphere MQ Workflow Tillmann Schall (anaptecs GmbH)
Alexander Marschoun (IBM Austria)
IBM Software Group | WebSphere software
Agenda
� Introduction
� Integrating WebSphere MQ Workflow into EJB-Environments
� Extending WebSphere MQ Workflow with scheduling functionality
� Summary and Conclusion
� Questions and Answers
IBM Software Group | WebSphere software
Table of contents
Introduction
Integrating WebSphere MQ Workflow into EJB-Environments
Extending WebSphere MQ Workflow with scheduling functionality
Summary and Conclusion
Questions and Answers
IBM Software Group | WebSphere software
Introduction / Background
� Presentation is based on experiences that were made in a projectfor a group of liability insurances in Germany.
� Within this project all business processes were optimized and fully supported by the developed software. All existing legacy systemswere stripped.
IBM Software Group | WebSphere software
Architecture for Workflow Applications
EIS Tier
WebSphere Application Server
WorkflowService
IBM DB2
IBM SecureWay(LDAP-Server)
IBM WebSphere MQ Workflow
IBM Content ManagerUser Access
Management
Persistence-Layer
SchedulingService
Additional Services
(e.g. DocumentService)
Application Client
Web Client
Firewall
IBM Software Group | WebSphere software
Table of contents
Introduction
Integrating WebSphere MQ Workflow into EJB-Environments
Extending WebSphere MQ Workflow with scheduling functionality
Summary and Conclusion
Questions and Answers
IBM Software Group | WebSphere software
WebSphere MQ Workflow Overview
� Who?Persons
� What?Processes
� With?Applications
IBM Software Group | WebSphere software
WebSphere MQ Workflow Overview
BuildtimeBuildtimeWorkflow DefinitionWorkflow Definition(Processes, Staff, (Processes, Staff, ……))
RuntimeRuntimeWorkflow ExecutionWorkflow Execution
FDLFDL
IBM Software Group | WebSphere software
Why integrating the Runtime?
� Need for application with consistent look & feel
� Starting Use Cases which are not executables
� Transferring business data from activity to activity
� Evaluating business data in transition conditions
IBM Software Group | WebSphere software
The Business Process Metamodel
Business Process
Use Case
Business Transaction
IBM Software Group | WebSphere software
Workflow Service Architecture Overview
Application Client
MQ WFClient
MQ WorkflowServer
Workflow Service
Service B
Service A
WebSphereEJB Server
MQ WorkflowBuildtime
FD
L
Worklist
IBM Software Group | WebSphere software
Solution Architecture Details
� WebSphere Application Server 4.0 & MQ Workflow 3.2
� Stateful Session Beans
� Caching Adapter Objects – Presenting Item Data Objects
� Item Identifiers
� Instantiating the Use Cases (Check out, Check in, Transferring Context Data)
IBM Software Group | WebSphere software
Refreshing the Worklist
Application ServerApplication Client
WfS-Stub
WfS-Bean
MQ WFClient
refreshWorklist()
queryWorkitems()
cacheItems()createItemDataObjects()
MQ WFServer
IBM Software Group | WebSphere software
Starting a Use Case
Application ServerApplication Client
WfS-Stub
WfS-Bean
MQ WFClient
startUC(Identifier)
fetchWorkItem(Identifier)
checkOut()evaluateUCName()evaluateInputContext()createUCBeanObject()startUCBean()
MQ WFServer
IBM Software Group | WebSphere software
Context Data Mapping
In MQ WF every activity has Input- and Output-Variables with oneof the following types: String, Float, Long, Binary.
• How to transfer application specific Business Objects between activities (Use Cases)?
• How to evaluate transition conditions based on attributes of Business Objects without spoiling the application code?
IBM Software Group | WebSphere software
Contract
Context Data Mapping
#FE08##FE08#
ABC
Workflow ServiceWorkflow Service
Customer
#4711##4711#
XYZ
#Input#ABC:Customer,…#Output#XYZ:Contract,DEF:Contract.amount,…#
Application View
MQ WF View
IBM Software Group | WebSphere software
Authorization
User Access User Access ManagementManagement
(Application specific – e.g. LDAP)
WebSphere WebSphere MQ WorkflowMQ Workflow
(Authorizations:Processes,Work Items)
IBM Software Group | WebSphere software
Table of contents
Introduction
Integrating WebSphere MQ Workflow in EJB-Environments
Extending WebSphere MQ Workflow with scheduling functionality
Summary and Conclusion
Questions and Answers
IBM Software Group | WebSphere software
Scheduling Service - Meeting real life demands
Business Process Requirements� Most processes are still focused on documents. Returning documents trigger
continuation of running process(es)
� Processes may require delay between business activities (e.g. sending invoice and checking of payment two weeks later)
Restrictions of WebSphere MQ Workflow� No time- / date-triggered business activities
� No triggers to continue suspended processes
� No support for start of new business processes at a certain point of time
Real life?
IBM Software Group | WebSphere software
Modeling Scheduled Use Cases
STATUS = BECAME_DUE
STATUS = MANUAL_STARTED
Use Case sets scheduling parameters
Technical activity ensures that scheduled use case, will not start immediately
Depending on how the technical activity completed, use cases are executed
IBM Software Group | WebSphere software
Scheduling Service Architecture
EIS Tier
WebSphere Application Server
WorkflowService
IBM DB2
IBM SecureWay(LDAP Server)
IBM WebSphere MQ Workflow
User AccessManagement
Persistence Layer
SchedulingService
Desktop
Scheduler
scheduler to start activities
that became due
special work list for scheduled activities
persistent objects to manage scheduling
information
IBM Software Group | WebSphere software
How to access WebSphere MQ Workflow?
WebSphere Application Server
stateless Scheduling
Service BeanWorkflow
Service Bean
stateless Scheduling-
Service Bean
stateless Scheduling
Service Bean
EJB Container 0
stateless Scheduling
Service BeanWorkflow
Service Bean
stateless Scheduling
Service Beanstateless
SchedulingService Bean
EJB Container n-1
Shared Workflow Service bean in each container
. . .
IBM Software Group | WebSphere software
Scheduling Service Programming Model
WebSphere Application Server
SchedulingService
Business Transaction n
begin…create,update, start, delete, search…commit
Business Transaction n+1
Business Transaction n-1
EJB uses container managed transactions
to participate in transaction n
value objects for client- / server-communication
Business Activity
IBM Software Group | WebSphere software
Table of contents
Introduction
Integrating WebSphere MQ Workflow into EJB-Environments
Extending WebSphere MQ Workflow with scheduling functionality
Summary and Conclusion
Questions and Answers
IBM Software Group | WebSphere software
Summary and Conclusion
� Both solutions are working quite well. The developed software system is almost productive, field tests are already running.
� Integrating and extending WebSphere MQ Workflow is quite a lot of work especially when dealing with complex requirements
� Since current version 3.4 integration is much easier due to support for stateless servers and synchronization of user data with LDAPdirectories.
IBM Software Group | WebSphere software
Table of contents
Introduction
Integrating WebSphere MQ Workflow into EJB-Environments
Extending WebSphere MQ Workflow with scheduling functionality
Summary and Conclusion
Questions and Answers
IBM Software Group | WebSphere software
Questions and Answers