Eclipse SOA Tools Platform Project

36
1 Eclipse SOA Tools Platform | Eric Newcomer | © 2007 by IONA ; made available under the EPL v1.0 Eclipse SOA Tools Platform Project Eric Newcomer IONA Technologies http://www.iona.com

description

Eclipse SOA Tools Platform Project. Eric Newcomer IONA Technologies http://www.iona.com. A Brief Introduction to SOA. S ervice O riented A rchitecture An architectural pattern for modular applications It’s not technology specific SOA provides application building blocks called Services - PowerPoint PPT Presentation

Transcript of Eclipse SOA Tools Platform Project

Page 1: Eclipse SOA Tools Platform Project

1 Eclipse SOA Tools Platform | Eric Newcomer | © 2007 by IONA ; made available under the EPL v1.0

Eclipse SOA Tools Platform Project

Eric NewcomerIONA Technologies

http://www.iona.com

Page 2: Eclipse SOA Tools Platform Project

2 Eclipse SOA Tools Platform | Eric Newcomer | © 2007 by IONA ; made available under the EPL v1.0

A Brief Introduction to SOA

Service Oriented Architecture

An architectural pattern for modular applications

It’s not technology specific

SOA provides application building blocks called Services

Services should be loosely coupled, self contained and independent

Flexible, standardized, reusable

Business Oriented

Not OO

Page 3: Eclipse SOA Tools Platform Project

3 Eclipse SOA Tools Platform | Eric Newcomer | © 2007 by IONA ; made available under the EPL v1.0

A Brief Introduction to SOA

Taking a SOA approach can provide benefits Build applications with less code

Reusable common set of components

Supports incremental adoption

Smaller development teams

Easier training

Cleaner separation of concerns

Ultimately – cost savings

Page 4: Eclipse SOA Tools Platform Project

4 Eclipse SOA Tools Platform | Eric Newcomer | © 2007 by IONA ; made available under the EPL v1.0

Tools for SOA

SOA by itself is an architecture style and technology neutral

SOA networks may be described, implemented and deployed using a range of technologies

SCA, JBI, CORBA, Web Services BPEL, Java, C++, Dynamic Languages

There are a lot of discrete tools that deal with each of these implementation approaches

However most of them derive from OO concepts and techniques (SO is more abstract than OO)

Page 5: Eclipse SOA Tools Platform Project

5 Eclipse SOA Tools Platform | Eric Newcomer | © 2007 by IONA ; made available under the EPL v1.0

Why the SOA Tools Platform?

Unify developer tooling for SOA based applications Provide a consistent and extensible set of tools for:

Developers who need to build, deploy and maintain services

Architects tasked with assembling an SOA Infrastructure

Administrators maintaining, monitoring, or policing SOA based systems

Business analysts recording business processes

Page 6: Eclipse SOA Tools Platform Project

6 Eclipse SOA Tools Platform | Eric Newcomer | © 2007 by IONA ; made available under the EPL v1.0

STP Project Mission Statement

The mission of the SOA Tools Platform project is to build frameworks and exemplary extensible tools that enable the design, configuration, assembly, deployment, monitoring, and management of software designed around a Service Oriented Architecture

Page 7: Eclipse SOA Tools Platform Project

7 Eclipse SOA Tools Platform | Eric Newcomer | © 2007 by IONA ; made available under the EPL v1.0

Project Scope

Analysis Design Implementation Delivery Operations

Service Specification

Process Specification

Policy creation &attachment

Rule-basedValidation

Assemble/Composition

Infrastructureplanning

CodeGeneration

TestGeneration

Policy refinement

Implementation testing

InfrastructureBuild-up

Lookup (Services, Processes, Policies, …)

Packaging

Installation

Activation

DeploymentTesting

Page 8: Eclipse SOA Tools Platform Project

8 Eclipse SOA Tools Platform | Eric Newcomer | © 2007 by IONA ; made available under the EPL v1.0

Contributors

IONA Technologies Sybase ObjectWeb IBM Scapa Technologies EBM WebSourcing Intalio LogicBlaze SymphonySoft Infravio BEA JBoss

Page 9: Eclipse SOA Tools Platform Project

9 Eclipse SOA Tools Platform | Eric Newcomer | © 2007 by IONA ; made available under the EPL v1.0

STP Subprojects

STP SOA System (SOAS) Package, Configure, Deploy

STP Service Creation (SC) Service Creation

STP Core Frameworks (CF) Core frameworks and models

STP BPMN (BPMN) Business Process Modeling Notation Graphical design editor

STP BPEL 2 Java (B2J) BPEL to Java translator

Page 10: Eclipse SOA Tools Platform Project

Eclipse SOA Tools Platform | Eric Newcomer | © 2007 by IONA ; made available under the EPL v1.0

STP Core Framework

http://www.eclipse.org/stp/cf/stp-core-model.html

The core models and frameworks for the STP project SCA model for Service Assembly

Frameworks to access and construct assembly model

Language components for SCA syntax support (Java)

Support for extensions of SCA model

Validation

Reference management

Page 11: Eclipse SOA Tools Platform Project

11 Eclipse SOA Tools Platform | Eric Newcomer | © 2007 by IONA ; made available under the EPL v1.0

Project Scope

Analysis Design Implementation Delivery Operations

Service Specification

Process Specification

Policy creation &attachment

Rule-basedValidation

Assemble/Composition

Infrastructureplanning

CodeGeneration

TestGeneration

Policy refinement

Implementation testing

InfrastructureBuild-up

Lookup (Services, Processes, Policies, …)

Packaging

Installation

Activation

DeploymentTesting

Page 12: Eclipse SOA Tools Platform Project

12 Eclipse SOA Tools Platform | Eric Newcomer | © 2007 by IONA ; made available under the EPL v1.0

And for the future…

JBI Infrastructure description and modeling

Enterprise Integration Patterns approach to infrastructure construction

Repository/Registry/Catalog APIs

Page 13: Eclipse SOA Tools Platform Project

13 Eclipse SOA Tools Platform | Eric Newcomer | © 2007 by IONA ; made available under the EPL v1.0

STP Service Creation

Frameworks and extensions for editors to create STP services Contract Editors

Service editors (create services that can be deployed on supported runtimes)

Resource creation Wizards

Component Type editors

Binding Editors / Policy

Service Discovery tools

Page 14: Eclipse SOA Tools Platform Project

14 Eclipse SOA Tools Platform | Eric Newcomer | © 2007 by IONA ; made available under the EPL v1.0

QuickTime™ and aTIFF (Uncompressed) decompressor

are needed to see this picture.

STP Service Creation

Europa Release

JAX-WS code-first service development

WSDL-first JAX-WS service development

SCA Java Service development

Page 15: Eclipse SOA Tools Platform Project

15 Eclipse SOA Tools Platform | Eric Newcomer | © 2007 by IONA ; made available under the EPL v1.0

STP Service Creation

XML editor SCDL support

Online Help

Many bug fixes

Building technical documentation, tutorials

QuickTime™ and aTIFF (Uncompressed) decompressor

are needed to see this picture.

Page 16: Eclipse SOA Tools Platform Project

16 Eclipse SOA Tools Platform | Eric Newcomer | © 2007 by IONA ; made available under the EPL v1.0

STP Service Creation

Java Annotation View Helper

Java Annotation Validator

JAX-WS Runtime Provider

SC Java Runtime Provider

BPMN Diagram Annotation Decorator

QuickTime™ and aTIFF (Uncompressed) decompressor

are needed to see this picture.

QuickTime™ and aTIFF (Uncompressed) decompressor

are needed to see this picture.

Page 17: Eclipse SOA Tools Platform Project

17 Eclipse SOA Tools Platform | Eric Newcomer | © 2007 by IONA ; made available under the EPL v1.0

STP Service Creation

Java 5 Annotation Helper Extension Point Add an extension here if you wish to drive the annotations view

Used for JAX-WS and SCA Java service creation Useful for other approaches too, e.g. REST markup like JSR 311

QuickTime™ and aTIFF (Uncompressed) decompressor

are needed to see this picture.

Page 18: Eclipse SOA Tools Platform Project

18 Eclipse SOA Tools Platform | Eric Newcomer | © 2007 by IONA ; made available under the EPL v1.0

STP Service Creation

Java annotation validation rules framework

Validation rules drive markers in the source view

QuickTime™ and aTIFF (Uncompressed) decompressor

are needed to see this picture.

Page 19: Eclipse SOA Tools Platform Project

19 Eclipse SOA Tools Platform | Eric Newcomer | © 2007 by IONA ; made available under the EPL v1.0

STP Service Creation

Multiple rule sets may be configured and viewed in prefs

Page 20: Eclipse SOA Tools Platform Project

20 Eclipse SOA Tools Platform | Eric Newcomer | © 2007 by IONA ; made available under the EPL v1.0

STP Service Creation

SCA and JAX-WS Runtimes are pluggable Right now we test against Apache Tuscany and Apache CXF

Use these extension points to switch to RI, or others

QuickTime™ and aTIFF (Uncompressed) decompressor

are needed to see this picture.

Page 21: Eclipse SOA Tools Platform Project

21 Eclipse SOA Tools Platform | Eric Newcomer | © 2007 by IONA ; made available under the EPL v1.0

Project Scope

Analysis Design Implementation Delivery Operations

Service Specification

Process Specification

Policy creation &attachment

Rule-basedValidation

Assemble/Composition

Infrastructureplanning

CodeGeneration

TestGeneration

Policy refinement

Implementation testing

InfrastructureBuild-up

Lookup (Services, Processes, Policies, …)

Packaging

Installation

Activation

DeploymentTesting

Page 22: Eclipse SOA Tools Platform Project

22 Eclipse SOA Tools Platform | Eric Newcomer | © 2007 by IONA ; made available under the EPL v1.0

And for the future…

Policy Editing Framework

SCA Service Development

Support beyond Java

Rules creation framework

Page 23: Eclipse SOA Tools Platform Project

23 Eclipse SOA Tools Platform | Eric Newcomer | © 2007 by IONA ; made available under the EPL v1.0

STP SOA System (SOAS) Subproject

Tools and frameworks for packaging and installing Services to runtime Servers

Extensible package profile editor Package profile models

Extensible package builders

Extensible Deployment profile editor Deployment profile models

Page 24: Eclipse SOA Tools Platform Project

24 Eclipse SOA Tools Platform | Eric Newcomer | © 2007 by IONA ; made available under the EPL v1.0

Project Scope

Analysis Design Implementation Delivery Operations

Service Specification

Process Specification

Policy creation &attachment

Rule-basedValidation

Assemble/Composition

Infrastructureplanning

CodeGeneration

TestGeneration

Policy refinement

Implementation testing

InfrastructureBuild-up

Lookup (Services, Processes, Policies, …)

Packaging

Installation

Activation

DeploymentTesting

Page 25: Eclipse SOA Tools Platform Project

25 Eclipse SOA Tools Platform | Eric Newcomer | © 2007 by IONA ; made available under the EPL v1.0

And for the future…

Supporting many container technologies and packaging approaches

JBI

Strong integration with WTP Server/Facet frameworks Huge take-up of these APIs

Support for headless automation of deployment For effective testing and provisioning

Page 26: Eclipse SOA Tools Platform Project

26 Eclipse SOA Tools Platform | Eric Newcomer | © 2007 by IONA ; made available under the EPL v1.0

STP BPEL 2 Java

Generate Java from BPEL Code uses any ‘engine’

which implements theframework APIs

BPEL 2 Java engineframework Runs the generated

class files

Includes local/remoteengine implementations

Page 27: Eclipse SOA Tools Platform Project

27 Eclipse SOA Tools Platform | Eric Newcomer | © 2007 by IONA ; made available under the EPL v1.0

Project Scope

Analysis Design Implementation Delivery Operations

Service Specification

Process Specification

Policy creation &attachment

Rule-basedValidation

Assemble/Composition

Infrastructureplanning

CodeGeneration

TestGeneration

Policy refinement

Implementation testing

InfrastructureBuild-up

Lookup (Services, Processes, Policies, …)

Packaging

Installation

Activation

DeploymentTesting

Page 28: Eclipse SOA Tools Platform Project

28 Eclipse SOA Tools Platform | Eric Newcomer | © 2007 by IONA ; made available under the EPL v1.0

And for the future…

Integration with the BPEL designerproject

Integration with well-known OpenSource BPEL engines

Advanced features Debugging

Simulation

QuickTime™ and aTIFF (Uncompressed) decompressor

are needed to see this picture.

Page 29: Eclipse SOA Tools Platform Project

Eclipse SOA Tools Platform | Eric Newcomer | © 2007 by IONA ; made available under the EPL v1.0

STP BPMN Editor

Business Process Modeling is an activity performed by business analysts within an organization

These analysts use modeling tools to depict both the current state of an enterprise and the desired future state

The relationships of a business process in the context of the rest of the enterprise create greater capabilities in analyzing and planning a change

Page 30: Eclipse SOA Tools Platform Project

30 Eclipse SOA Tools Platform | Eric Newcomer | © 2007 by IONA ; made available under the EPL v1.0

STP BPMN Editor

Business Process Modeling Notation is a standardized graphical notation for drawing business processes in a workflow

Framework for BPMN diagram based editors

Exemplary implementation of BPMN editor

Page 31: Eclipse SOA Tools Platform Project

31 Eclipse SOA Tools Platform | Eric Newcomer | © 2007 by IONA ; made available under the EPL v1.0

BPMN Diagram Annotation Decorator

Updates the BPMN diagram with decorations on the nodes

Covered in online tutorial at

http://wiki.eclipse.org/index.php/STP_BPMN_Presentation_Hands_on_tutorial

QuickTime™ and aTIFF (Uncompressed) decompressor

are needed to see this picture.

QuickTime™ and aTIFF (Uncompressed) decompressor

are needed to see this picture. becomes

Page 32: Eclipse SOA Tools Platform Project

32 Eclipse SOA Tools Platform | Eric Newcomer | © 2007 by IONA ; made available under the EPL v1.0

Drag and drop

Modeler extension allows custom annotations to be dragged onto the domain model

http://wiki.eclipse.org/index.php/Reusing_the_modeler

QuickTime™ and aTIFF (Uncompressed) decompressor

are needed to see this picture.

QuickTime™ and aTIFF (Uncompressed) decompressor

are needed to see this picture.

Page 33: Eclipse SOA Tools Platform Project

33 Eclipse SOA Tools Platform | Eric Newcomer | © 2007 by IONA ; made available under the EPL v1.0

BPMN Modeler

BPMN Factory Generates BPMN artifacts and diagrams

Example of generating BPMN pool from BPEL program at

http://wiki.eclipse.org/index.php/STP_BPMN_Presentation_%28Part_2%29

QuickTime™ and aTIFF (Uncompressed) decompressor

are needed to see this picture.

Page 34: Eclipse SOA Tools Platform Project

34 Eclipse SOA Tools Platform | Eric Newcomer | © 2007 by IONA ; made available under the EPL v1.0

Project Scope

Analysis Design Implementation Delivery Operations

Service Specification

Process Specification

Policy creation &attachment

Rule-basedValidation

Assemble/Composition

Infrastructureplanning

CodeGeneration

TestGeneration

Policy refinement

Implementation testing

InfrastructureBuild-up

Lookup (Services, Processes, Policies, …)

Packaging

Installation

Activation

DeploymentTesting

Page 35: Eclipse SOA Tools Platform Project

35 Eclipse SOA Tools Platform | Eric Newcomer | © 2007 by IONA ; made available under the EPL v1.0

And for the future…

Refine the diagramming

Work on the BPMN creation API

Hook BPMN model into code generation

Page 36: Eclipse SOA Tools Platform Project

36 Eclipse SOA Tools Platform | Eric Newcomer | © 2007 by IONA ; made available under the EPL v1.0

Summary

www.eclipse.org/stp

Follow the Wiki link for most information

[email protected]