joget workflow integration architecture
Post on 18-Jan-2015
11.091 Views
Preview:
DESCRIPTION
TRANSCRIPT
Workflow
Integration Architecture
www.joget.org
Overview
• A high level introduction to Joget Workflow architecture:
– To whom each Joget Workflow component is targeted at?
– How we can achieve 2-way integration with external systems?
– Most importantly, how to do more and code less
2
3
THE CODELESS WAY
Do More with Joget Workflow
4
Process Analyst:Using Workflow Designer
5
Process Analyst:Using Workflow Designer• Workflow Designer is a web-based (Java Web Start)
process designer to design XPDL-compliant process diagram using intuitive interface.
• Examples of process components that can be drawn using Workflow Designer are:– Participant– Activity– Route (logical comparison)– Transition– Tool (integration to external system)
• Business process design can be deployed / updated into Workflow Engine from Workflow Designer.
6
Process Analyst:Using Workflow Management Console
7
Process Analyst:Using Workflow Management Console
• The participants and activities designed in Workflow Designer are notations to illustrate a process design. They must be further configured in Workflow Management Console, to map:– Human participant to user(s), user group(s),
organization chart entit(ies), or workflow variable.
– Activity to data form or system tool (plugin).
• A process package can be imported to / exported from Workflow Management Console to ease collaboration and deployment.
8
Administrator:Using Workflow Management Console
9
Administrator:Using Workflow Management Console
• Monitor running & completed processes
• Generate service level report
• Setup users, groups and organization chart
• Manage system setup, plugins, form variables and messages (internationalization)
10
End-User:Using Workflow Management Console
11
End-User:Using Workflow Management Console
• Run process
• Perform tasks assigned
• View task history
12
End-User:Using Userview
13
End-User:Using Userview
• Userview is a customizable web application front-end that allows users to:
– Submit form data
– View submitted data
– View activities requiring his/her attention
– View aggregated report of all records submitted for an activity
– Search submitted data
14
JUST BY SETTING CONFIGURATIONS
Do More with Joget Workflow
15
Plugin Oriented Architecture
• Enhance and extend Joget Workflow functionalities
• Integrate to external systems
• Reuse 1 plugin in multiple business processes
• Free to use any plugin contributed into the open source world
• Free to develop new plugins
16
Integrator:Using Plugins
17
Integrator:Using Plugins
18
SOAP Plugin
MySQL Plugin Email Plugin
Integrator:Configuring Plugin (Email Plugin)
19
Integrator:Configuring Plugin (MySQL Plugin)
20
Integrator:Plugins for System Integration
21
• Database integration– Database Plugin– MySQL Plugin– Enterprise MySQL Plugin
• Active Directory / LDAP integration– LDAP Plugin
• SOAP / REST integration– JSON Plugin– SOAP Plugin– XML Plugin
• Custom programming– BeanShell Plugin (Java syntax)
Software Developer:Developing Plugins
• As Joget Workflow is aimed to be a generic workflow management system, specific requirements for integration to external system can be catered by developing a plugin:
– Write a Java class file that conforms to an interface
– Package the class file as OSGi JAR
– Upload the plugin package using Workflow Management Console
22
BY CODING LESS
Do More with Joget Workflow
23
Software Developer:Using APIs
• Download Developer Reference from http://sourceforge.net/projects/jogetworkflow/files/
24
Software Developer:Build Domain Specific Solution
• Assuming you are developing a HR system
• Coded in any platform you prefer
• Using Joget Workflow to automate the workflow
• Easily integrate into Joget Workflow from HR application system using JSON and JavaScript
• And the processes (e.g. leave approval, claim approval, appraisal process) can be flexibly and easily modified anytime
25
Software Developer:Using Ajax JavaScript API
• Embed Task Inbox and Process List into external web application (such as portlet, SharePoint web part, intranet application)
• User authentication (login, logout) from external application
• Complete an assignment / activity from external application
26
Software Developer:Using HTTP JSON API• If you have an external application built, and would like
to use Joget Workflow to automate the workflow within this application, you can call the HTTP JSON APIs to integrate into Joget Workflow from external system.
• For example, upon submission of a Leave Application Form from Leave Module – an external application, developer can insert a HTTP JSON call to start a designated process in Joget Workflow.
• Output, if any, will be returned from the JSON API in JSON format.
27
Examples of API Use Case
1. Display Joget Workflow task inbox in other web applications, such as portal (SharePoint, Liferay) and content management system (Joomla!, WordPress, Alfresco).
28
Examples of API Use Case
2. Start a process in Joget Workflow, from external system.
29
PHP
MySQL
1. Data saved into external database
2. Start evaluation and approval process in Joget Workflow
JSON API
Examples of API Use Case
3. Complete a workflow activity from external system, and pass a workflow variable value.
30
A .NET library Complete a workflow activity in
Joget Workflow, and inform JogetWorkflow of the status, by setting a workflow variable value
JavaScript API
Examples of API Use Case
4. Single-sign-on from external application.
31
Web Application SSO into Joget Workflow from
external web application, even when both applications are using different user base
JavaScript API
Map Activity to External URL
32
Infinite Possibilities
33
MySQL SQL Server Oracle
Workflow Engine for Process Automation
Java EE .NET PHP
DMS HR Suite ERP CMSGrant
ApprovalE-
PaymentHospitalMngt
Various process-driven solutions
Varying platforms, integrate using JSON & JavaScript API
Persistence layer built on Hibernate, to achieve database compatibility with a number of DBMS
DO MORE, CODE LESS
with Joget Workflow, you too can
34
top related