JOpera - Eclipse-based Visual Composition Environment featuring a general language for Heterogeneous...

Preview:

DESCRIPTION

Presentation given on 24.2.2012 at the SCUBE Industry Exchange workshop at Thales, Paris

Citation preview

Jopera Eclipse-based Visual Composition

Environment featuring a General Language for Heterogeneous Service Composition

Cesare Pautasso Faculty of Informatics, USI Lugano, Switzerland c.pautasso@ieee.org http://www.jopera.org http://twitter.com/pautasso 24.2.2012 Associate Member

About Cesare Pautasso • Assistant Professor at the Faculty of Informatics,

University of Lugano, Switzerland (since Sept 2007) • Research Projects:

• SOSOA – Self-Organizing Service Oriented Architectures • CLAVOS – Continuous Lifelong Analysis and Verification

of Open Services LiSA – Liquid Software Architecture

• BPEL/BPMN for REST • Researcher at IBM Zurich Research Lab (2007) • Post-Doc at ETH Zürich

• Software: JOpera: Process Support for more than Web services http://www.jopera.org/

• Ph.D. at ETH Zürich, Switzerland (2004) • Laurea Politecnico di Milano (2000) • More information:

http://www.pautasso.info/ http://twitter.com/pautasso/

©2010 Cesare Pautasso - 21.5.2010 2

Faculty of Informatics (Opened 2004) 17 Professors 75 PhDs + Post-docs

Excellence in Research Innovative Teaching

University of Lugano (USI)

©2012 - Cesare Pautasso 6

(Java-based) Open Process Engine for

Reliable Activities

©2012 - Cesare Pautasso 7

©2012 - Cesare Pautasso 10

©2012 - Cesare Pautasso 14

Many kinds of Services

Service

Synchronous (RPC) Services

Service Asynchronous Services

Service

Streaming Services

Service

Human Services

RESTful Services R

Service

©2012 - Cesare Pautasso 15

Heterogeneous Composition

Service

Service

Service

Service

R

Service R Service Com

position

©2012 - Cesare Pautasso 16

©2012 - Cesare Pautasso 19

Service Interface

Data Flow (input/output parameters)

©2012 - Cesare Pautasso 20

Composition Language

Control Flow dependencies (finished, failed, aborted, etc) cycles allowed, implied by data flow arbitrary synchronization rules possible

©2012 - Cesare Pautasso 21

Recursion

Processes compose tasks (which may themselves invoke or spawn sub-processes)

©2012 - Cesare Pautasso 22

Extensibility

Mapping to service invocation mechanisms and protocols

©2012 - Cesare Pautasso 23

Modeling Viewpoints

Data Flow

Control Flow

Adapter Bindings

HTTP XPATH XSLT JAVA HTML …

©2012 - Cesare Pautasso 25

Control Flow

Control Flow Dependency

©2012 - Cesare Pautasso 26

Service Bindings

HTTP

XSLT

HTML

©2012 - Cesare Pautasso 27

Data Flow

Data Flow (Copy)

©2012 - Cesare Pautasso 28

Demo

©2012 - Cesare Pautasso, Erik Wilde 29

Doodle Map Example

©2012 - Cesare Pautasso, Erik Wilde 30

Doodle Map Architecture

Web Browser Workflow Engine

RESTful Web Services

APIs GET

POST GET

REST

ful A

PI

©2012 - Cesare Pautasso 32

Control Flow

Control Flow Dependency

©2012 - Cesare Pautasso 33

Service Bindings

HTTP

XPATH

XSLT

JAVA

HTML

©2012 - Cesare Pautasso 34

Data Flow

Data Flow (Copy)

36

37

Why Users Like JOpera High Level Workflow Language

Data and Control Aspects (Visual Representation) Recursion, Iteration, Parallelism and Pipelining

Open and Extensible Service Model Efficient invocation of local code snippets (Java, Javascript) Synchronous, Asynchronous, and Streaming interaction Web services support (REST, WS-*) Secure access to remote file systems and hosts (SSH) Basic human task worklist handler

40

Why Users Like JOpera High Level Workflow Language

Data and Control Aspects (Visual Representation) Recursion, Iteration, Parallelism and Pipelining

Open and Extensible Component Model Efficient invocation of local code snippets (Java, Javascript) Synchronous, Asynchronous, and Streaming interaction Web services support (Axis, WSIF) Secure access to remote file systems and hosts (SSH) Basic human task worklist handler

Strong Eclipse Foundation Platform Independent (Eclipse/Java) Flexible, Extensible, Modular and Embeddable

41

A Growing User Community

42

Swiss Institute of Bioinformatics, Swiss National Supercomputing Center, Purdue University, National Center for Supercomputing Applications (NCSA), Singapore Management University, McGill University, University of Kent , SINTEF (Norway), IWU Fraunhofer (Germany) …

43

Conclusion Modeling service composition behavior

Flow-based composition language (Visual & XML) Development and Debugging tools for Eclipse Composition not limited to Web services

Execution of the composition models Efficiency (compiled to Java bytecode) Distributed engine (multicore, cluster, cloud) Autonomic platform (self-healing, self-tuning) Extensibility (Eclipse plug-ins to provide custom service

publishing and invocation adapters)

44

Download http://www.jopera.org/latest

More Information http://www.jopera.org/docs/publications

Cesare Pautasso, c.pautasso@ieee.org, @pautasso

PhD Positions Available

©2011 Cesare Pautasso 45

Cesare Pautasso http://www.pautasso.info/ @pautasso

Recommended