ahmed m. gamal , j2ee developer @ icraft mohamed maaty , information analyst @ hp

32
Ahmed M. Gamal, J2EE Developer @iCraft Mohamed Maaty , Information Analyst @ hp INTRODUCING JBPM

Upload: aspen-ellison

Post on 31-Dec-2015

27 views

Category:

Documents


2 download

DESCRIPTION

Introducing jBPM. Ahmed M. Gamal , J2EE Developer @ iCraft Mohamed Maaty , Information Analyst @ hp. Agenda. The Challenge. Analyst –Developer communication. bla bla bla bla bla bla bla bla bla. Problem. Business Logic Scattered Everywhere. Continuous Requirement Changes. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Ahmed M.  Gamal ,  J2EE Developer @ iCraft Mohamed  Maaty , Information Analyst @ hp

•Ahmed M. Gamal, J2EE Developer @iCraft

•Mohamed Maaty , Information Analyst @ hp

INTRODUCING JBPM

Page 2: Ahmed M.  Gamal ,  J2EE Developer @ iCraft Mohamed  Maaty , Information Analyst @ hp

Agenda

Java Developer Conference 2010

Page 3: Ahmed M.  Gamal ,  J2EE Developer @ iCraft Mohamed  Maaty , Information Analyst @ hp

The Challenge

Page 4: Ahmed M.  Gamal ,  J2EE Developer @ iCraft Mohamed  Maaty , Information Analyst @ hp

Analyst –Developer communication

bla bla bla bla bla bla bla bla bla

Page 5: Ahmed M.  Gamal ,  J2EE Developer @ iCraft Mohamed  Maaty , Information Analyst @ hp

Problem

Page 6: Ahmed M.  Gamal ,  J2EE Developer @ iCraft Mohamed  Maaty , Information Analyst @ hp

Business Logic Scattered Everywhere

Page 7: Ahmed M.  Gamal ,  J2EE Developer @ iCraft Mohamed  Maaty , Information Analyst @ hp

Continuous Requirement Changes

Page 8: Ahmed M.  Gamal ,  J2EE Developer @ iCraft Mohamed  Maaty , Information Analyst @ hp

Problem Dimensions

Page 9: Ahmed M.  Gamal ,  J2EE Developer @ iCraft Mohamed  Maaty , Information Analyst @ hp

Business Process Management

•Domain Specific languages .•BPM Definition.•BPMN 2.0. •Service Orchestration (PBEL).

Page 10: Ahmed M.  Gamal ,  J2EE Developer @ iCraft Mohamed  Maaty , Information Analyst @ hp

Domain Specific languages.

domain-specific language (DSL) is a programming language or specification language dedicated to a particular problem domain,

Page 11: Ahmed M.  Gamal ,  J2EE Developer @ iCraft Mohamed  Maaty , Information Analyst @ hp

BPM Definition Business process:

A procedure that describes how people and systems work together

Business Process Management (BPM):Optimizing efficiency by automating ,analyzing, describing and improving business processes

Page 12: Ahmed M.  Gamal ,  J2EE Developer @ iCraft Mohamed  Maaty , Information Analyst @ hp

Traditional BPM approach

Page 13: Ahmed M.  Gamal ,  J2EE Developer @ iCraft Mohamed  Maaty , Information Analyst @ hp

Collaboration Common Language

Page 14: Ahmed M.  Gamal ,  J2EE Developer @ iCraft Mohamed  Maaty , Information Analyst @ hp

BPM Key Features Common Communication language.Graphically visualized process.Separation of concerns.Ease of Development and deploy.Ease of change and reuseReduced development time/Time to Market.

Page 15: Ahmed M.  Gamal ,  J2EE Developer @ iCraft Mohamed  Maaty , Information Analyst @ hp

Key Functions Workflow delivers the following functionality

Automation of processes Routing and scheduling of activities Process visibility Process control through escalations and notifications Tracking of activities Collaboration of all parties involved Convergence of process and information Redesign of business processes

Page 16: Ahmed M.  Gamal ,  J2EE Developer @ iCraft Mohamed  Maaty , Information Analyst @ hp

BPMN 2.0 (business-oriented notation) Business Process Modeling Notation (BPMN) is a graphical representation for

specifying business processes in a business process model. The objective of BPMN is to support business process management for both technical users

and business users .

Page 17: Ahmed M.  Gamal ,  J2EE Developer @ iCraft Mohamed  Maaty , Information Analyst @ hp

Service Orchestration (BPEL)Business Process Execution Language (BPEL) is a XML-based language

used to define enterprise business processes within Web services.Service orchestration is to be seen in the context of an Enterprise Service

Bus. An enterprise service bus is a central communication backbone on a corporate level. It integrates many diverse systems and it is based on XML technology.

Page 18: Ahmed M.  Gamal ,  J2EE Developer @ iCraft Mohamed  Maaty , Information Analyst @ hp

Service Orchestration (BPEL ):Example Example

Suppose you have services A, B and C on your enterprise service bus. Service orchestration is a graph based execution language for writing a new services as a function of existing services. E.g. A new service D can be written as a function of existing services A, B and C in an orchestration script.

Page 19: Ahmed M.  Gamal ,  J2EE Developer @ iCraft Mohamed  Maaty , Information Analyst @ hp

jBPM

•Overview jBPM•jBPM Architecture •Keyword .•jPDL•Process Deployment•Process Execution

Page 20: Ahmed M.  Gamal ,  J2EE Developer @ iCraft Mohamed  Maaty , Information Analyst @ hp

OverviewJBoss jBPM is a workflow, process

automation, that enables coordination between disparate applications and services, resulting in the deployment of new revenue generating business processes

Page 21: Ahmed M.  Gamal ,  J2EE Developer @ iCraft Mohamed  Maaty , Information Analyst @ hp

Architecture JBoss Enterprise Framework that delivers workflow, business process

management (BPM) and service orchestration in a multi-process language platform and in a scalable and flexible product footprint.

Page 22: Ahmed M.  Gamal ,  J2EE Developer @ iCraft Mohamed  Maaty , Information Analyst @ hp

Keywords

API

Page 23: Ahmed M.  Gamal ,  J2EE Developer @ iCraft Mohamed  Maaty , Information Analyst @ hp

jPDLjPDL stands for : JBoss Process Definition languageDomain specific language based on XML

Page 24: Ahmed M.  Gamal ,  J2EE Developer @ iCraft Mohamed  Maaty , Information Analyst @ hp

Process Modeling Cont.

Page 25: Ahmed M.  Gamal ,  J2EE Developer @ iCraft Mohamed  Maaty , Information Analyst @ hp

Process Modeling Cont.

Page 26: Ahmed M.  Gamal ,  J2EE Developer @ iCraft Mohamed  Maaty , Information Analyst @ hp

Process Modeling Cont.

Page 27: Ahmed M.  Gamal ,  J2EE Developer @ iCraft Mohamed  Maaty , Information Analyst @ hp

Tasks

Page 28: Ahmed M.  Gamal ,  J2EE Developer @ iCraft Mohamed  Maaty , Information Analyst @ hp

JPDL ElementsjPDL has a number of process constructs

start-state task-nodeTransitionDecisionFork / Joinprocess-stateend-state

Page 29: Ahmed M.  Gamal ,  J2EE Developer @ iCraft Mohamed  Maaty , Information Analyst @ hp

Process Deployment

Page 30: Ahmed M.  Gamal ,  J2EE Developer @ iCraft Mohamed  Maaty , Information Analyst @ hp

Process Execution Cont.

Page 31: Ahmed M.  Gamal ,  J2EE Developer @ iCraft Mohamed  Maaty , Information Analyst @ hp

PersistenceProcess and execution can be persisted

Without persistence, the execution state of a process could not be stored and later retrieved.

Standard Let Hibernate manage the connection or... Provide your connection to jBPM Combine your DB updates with jBPM In one transaction on the JDBC connection

Enterprise Configure hibernate to participate in JTA transaction

Page 32: Ahmed M.  Gamal ,  J2EE Developer @ iCraft Mohamed  Maaty , Information Analyst @ hp

Demo•Environment Setup (runtime, IDE, examples )•Design simple process.•Deployment.•Web console.•API •Advanced jBPM features .