webinar - spagic: beyond the soa/bpm frontiers, towards a complete open cooperative environment

22
1 www.spagic.org Beyond the SOA/BPM frontiers Beyond the SOA/BPM frontiers Towards a complete open cooperative environment Towards a complete open cooperative environment This presentation has been used during a webinar delivered within SpagoWorld Webinar Center: http://www.spagoworld.org/xwiki/bin/view/SpagoWorld/WebinarCenter Visit it regularly to check the available webinars!

Upload: spagoworld

Post on 28-Nov-2014

1.142 views

Category:

Technology


0 download

DESCRIPTION

The presentation supported the webinar delivered by Antonietta Miele, Spagic Developer, on 28th July 2011, within SpagoWorld Webinar Center. http://www.spagoworld.org/

TRANSCRIPT

Page 1: Webinar - Spagic: Beyond the SOA/BPM frontiers, towards a complete open cooperative environment

1www.spagic.org

Beyond the SOA/BPM frontiers Beyond the SOA/BPM frontiers Towards a complete open cooperative environmentTowards a complete open cooperative environment

This presentation has been used during a webinar delivered within SpagoWorld Webinar Center:http://www.spagoworld.org/xwiki/bin/view/SpagoWorld/WebinarCenterVisit it regularly to check the available webinars!

Page 2: Webinar - Spagic: Beyond the SOA/BPM frontiers, towards a complete open cooperative environment

2www.spagic.org

Overview

Page 3: Webinar - Spagic: Beyond the SOA/BPM frontiers, towards a complete open cooperative environment

3www.spagic.org

Application

Back End

Mission / A new pattern for the development of applications

…instead of services thatreference to each other, in different ways

Application

ApplicationApplication

Front End

Business Service

Business Service

Back End

Front End

Business Service

Back End

Front End

Business Service

Business Service

Back End

Front End

Business Service

Business Service

Business Service

Page 4: Webinar - Spagic: Beyond the SOA/BPM frontiers, towards a complete open cooperative environment

4www.spagic.org

Mission / From middleware to Spagic Environment

Business

Business Modelin

g

Modeling and M

anagement

and Management

Integration

Integration//Cooperation

Cooperation Middleware

Middleware

eFormeFormLifecycleLifecycle

BPMBPMmodelingmodeling

Business RulesBusiness Rulesmanagementmanagement

Process & Process & Service Service

managementmanagement

Business Business Activity Activity

monitoringmonitoring

Go

vern

ance

Go

vern

ance

SOA SOA Application Application

(Web(Web--Mobile)Mobile)

Integration Integration ESBESB

Cooperation Cooperation ConnectorsConnectors

BPM/ETL BPM/ETL EngineEngine

Page 5: Webinar - Spagic: Beyond the SOA/BPM frontiers, towards a complete open cooperative environment

5www.spagic.org

Back End

Mission / A new pattern for the development of applications/2

Application

Application

Front End

Application

Front EndFront End

Application

Front End

Business ServiceBusiness Service

Business ServiceBusiness Service

Business ServiceBusiness Service

… a full user-oriented application, which retrieves the information from a business area, accessing it using a common, defined and standardiz ed communication

Page 6: Webinar - Spagic: Beyond the SOA/BPM frontiers, towards a complete open cooperative environment

6www.spagic.org

Overview / ESB – Integration/Cooperation middleware

� SOA middleware for integration and cooperation

� Messaging, dynamic routing and transformation services, provided in a reliable way

� Virtualization of heterogeneous and distributed services

� Middleware layer supporting the communication among distributed and heterogeneous systems

� SOA middleware for integration and cooperation

� Messaging, dynamic routing and transformation services, provided in a reliable way

� Virtualization of heterogeneous and distributed services

� Middleware layer supporting the communication among distributed and heterogeneous systems

Messaging MQ Routing Transformation

Adapters Web ServicesData services

SOA Applications Orchestration

BPMCustom bundes

Custom application

CHATDBMS

ETL/DataWarehouse

LegacySystem

eBusiness XML

RSS

SMS & Wireless

EDI HL7

SOAP JMS

FILE / FTP

Connectors

Page 7: Webinar - Spagic: Beyond the SOA/BPM frontiers, towards a complete open cooperative environment

7www.spagic.org

Overview / Business Modeling and Management

Process ModelingProcess Modeling

� Standard BPMN� Business vision� Technical extension (services, security)

Historical & real-time analysisHistorical & real-time analysis

Metadata &Historical / real-time info

BPM

Connectors

� Different installation models available as� Stand-alone server� Application service

� Independence from BPM Engine

� Full compatible with existing authorization policy (ex. LDAP or DBMS)

BPM EngineBPM Engine

Business

Technical

Tec

hnic

al p

aram

eter

Deploy / tuning

Analysis / tuningBusiness Modeling

Page 8: Webinar - Spagic: Beyond the SOA/BPM frontiers, towards a complete open cooperative environment

8www.spagic.org

Overview / Business Rules Management

� Give more value to business knowledge managing company policy repository� Give more value to business knowledge managing company policy repository

� Using BPM and/or a rule engine inside the system gives more flexibility to and makes easier analysts’ activities.

� Using rules externally, defined by the components, increases the maintainability of the services and improves their adaptability to new business requirements.

Rules in Excel/Openoffice or inside IDE

BPMN process

Page 9: Webinar - Spagic: Beyond the SOA/BPM frontiers, towards a complete open cooperative environment

9www.spagic.org

Overview / BPM - Collaboration Middleware

� Processes composed of collaborative services through the definition of human tasks

� Generation of documents (PDF) and management of their lifecycle within the processes

� User notification by mail, sms, web services …

� Real-time interaction among user, processes and the external system, using web forms or docs (PDF)

� Different use models: � calling a ready-to-use web worklist� API Java e Web Services

� Processes composed of collaborative services through the definition of human tasks

� Generation of documents (PDF) and management of their lifecycle within the processes

� User notification by mail, sms, web services …

� Real-time interaction among user, processes and the external system, using web forms or docs (PDF)

� Different use models: � calling a ready-to-use web worklist� API Java e Web Services

Page 10: Webinar - Spagic: Beyond the SOA/BPM frontiers, towards a complete open cooperative environment

10www.spagic.org

Governance / Monitoring Tools

� Information is available in real-time

� Each piece of information can be involved from different points of view

� Information is available in real-time

� Each piece of information can be involved from different points of view

� Monitoring� Management� Business Intelligence & BAM

Page 11: Webinar - Spagic: Beyond the SOA/BPM frontiers, towards a complete open cooperative environment

11www.spagic.org

Technology Architecture / OSGi overview

Extensions

Execution environment

Modules

Life Cycle

Registry

ServicesS

ecur

ity

OSGi (Open Source Gateway Initiative ) is the technology used to implement the collaboration and management of software modules composing Spagic

OSGi (Open Source Gateway Initiative ) is the technology used to implement the collaboration and management of software modules composing Spagic

� Services and connectors implements the Component Model pattern

� Each component provides services and can refer to other ones

� The dynamic behaviour of services is implemented with OSGi Declarative Services

Page 12: Webinar - Spagic: Beyond the SOA/BPM frontiers, towards a complete open cooperative environment

12www.spagic.org

Technology Architecture / BPM middleware

� BPMN editor as a tool of Process Modeling� Orchestration of internal modules (OSGi Bundles) and external systems (OSGi Connectors)� Deploy and publishing in the BPM engine (JBPM OSGi bundles, Apache ODE BPEL Server)

Page 13: Webinar - Spagic: Beyond the SOA/BPM frontiers, towards a complete open cooperative environment

13www.spagic.org

Technology Architecture / Message Bus & BPM

Normalized Message RouterNormalized Message Router

OSGi Event AdminOSGi Event Admin

Normalized Message Router� is responsible for the communication among the components

� Spagic communication pattern based on xml messages

� Built over OSGi Event Admin Service.

Mes

sag

eB

us

laye

rB

PM

laye

r

Page 14: Webinar - Spagic: Beyond the SOA/BPM frontiers, towards a complete open cooperative environment

14www.spagic.org

Technology Architecture / Monitoring – Management - BAM

� Connector� Service� Process

� Connector� Service� Process

Monitor & ManagementMonitor & Management

� SLA� PKI

BAM

� Networking� Applic.& Web Server� SOA� DBMS

System MonitorBPM

Spagic Universal Middleware

Bundles Eventlistener Spagic JMX

Spagic MetaDB

� Plugin Eclipse� Design� Deploy

� Plugin Eclipse� Design� Deploy

Spagic StudioSpagic Studio

Using a listener (Eclipse Event Admin) all information spread through messages between nodes are collected and shared through monitoring tools.

Optional External SystemsOptional Optional ExternalExternal SystemsSystems

Page 15: Webinar - Spagic: Beyond the SOA/BPM frontiers, towards a complete open cooperative environment

15www.spagic.org

User Interface Processes & Rules Components

Governance / Project Organization

Governance

Governance

User Interface Design

Widget Researchfrom Provisioning Registry

Ajax UI Development

Business LogicUI Development

PublishingProvisioning Registry

Proxy Configuration

Release Application(WAR)

Process Definition(BPMN)

Rules Definition(rules engine)

New ComponentsDesign

New ComponentsDevelopment

Component Researchfrom Provisioning Registry

PublishingConfiguration

Technical CompletionBPMN

PublishingProvisioning Registry

Architect/Developer Architect/DeveloperAnalyst

Page 16: Webinar - Spagic: Beyond the SOA/BPM frontiers, towards a complete open cooperative environment

16www.spagic.org

Technology Architecture / User Services & MVP

Presentation UI

Widget Base Widget composite

Business Logic(user)

Data Access Interface(RPC Client)

Data Access Implementation(RPC Server)

Business Logic(procedure)

Clie

nt

(RIA

)M

idd

lew

are

(Sp

agic

)

VIEW

Presenter

Model

MVP MVP PatternPattern

� Presentation Pattern: from MVC to MVP � Separation between user services (VIEW & PRESENTER) / backend � Open widget libraries (ex. GWT)� Browser Compatibility � Support to W3C ARIA accessibility requirements� Internationalization

Page 17: Webinar - Spagic: Beyond the SOA/BPM frontiers, towards a complete open cooperative environment

17www.spagic.org

WAR - backend servicesWAR WAR -- backend servicesbackend services

Technology Architecture / SOA Application

DBMSData application

DBMSDBMSData Data applicationapplication

Spagic CommandSpagicSpagic CommandCommand

Business logicBusiness Business logiclogic

Spagicpersistence

SpagicSpagicpersistencepersistence

Other Spagicservices

OtherOther SpagicSpagicservicesservices

WAR - User Services App.WAR WAR -- UserUser ServicesServices App.App.

ServletServletServletGWTwidgetGWTGWT

widgetwidget

Spagic ClientSpagicSpagic ClientClient

WAR - User Services App.WAR WAR -- UserUser ServicesServices App.App.

ServletServletServletGWTwidgetGWTGWT

widgetwidget

Spagic ClientSpagicSpagic ClientClient

Spagicconnectors

SpagicSpagicconnectorsconnectors

ApplicationApplication NodeNode (es. (es. JBossJBoss o Apache o Apache TomcatTomcat))

Remote Spagic NodeRemote Remote SpagicSpagic NodeNode

External systemExternal system

JVM

Remote Spagic NodeRemote Remote SpagicSpagic NodeNode

Remote

JPA (Eclipse Link)

Remote

� Definition of a command pattern to implement the business logic� Configurable interaction among the components – Application composition.

� Different front-end layers versus a unique back-end layer� Different deployment models that can be set by configuration

� Monolithic� Enterprise node� In VM

� Different front-end layers versus a unique back-end layer� Different deployment models that can be set by configuration

� Monolithic� Enterprise node� In VM

Business Analysts

Page 18: Webinar - Spagic: Beyond the SOA/BPM frontiers, towards a complete open cooperative environment

18www.spagic.org

Business case / Web Portal for Artistic Heritage

Page 19: Webinar - Spagic: Beyond the SOA/BPM frontiers, towards a complete open cooperative environment

19www.spagic.org

backend servicesbackend servicesbackend services

Business case / Web Portal for Artistic Heritage

DBMSData application

DBMSDBMSData Data applicationapplication

SpagicOrchestration

SpagicSpagicOrchestrationOrchestration

Process(BPMN)ProcessProcess(BPMN)(BPMN)

Spagicpersistence

SpagicSpagicpersistencepersistence

DynamicSearch

DynamicDynamicSearchSearch

Web Portal RIA Web Web PortalPortal RIA RIA

GWTwidgetGWTGWT

widgetwidget

Spagic ClientSpagicSpagic ClientClient

Spagicconnectors

SpagicSpagicconnectorsconnectors

ApplicationApplication NodeNode (es. (es. JBossJBoss o Apache o Apache TomcatTomcat))

External WSExternal WS

JVM

JPA (Eclipse Link)UpgradingLocal DB

UpgradingUpgradingLocalLocal DBDB

DynamicSearch

DynamicDynamicSearchSearchDynamic

SearchDynamicDynamicSearchSearch

UI Developers Service Developers

Business Analysts

Page 20: Webinar - Spagic: Beyond the SOA/BPM frontiers, towards a complete open cooperative environment

20www.spagic.org

Technology Architecture / XaaS

Distinct organization for :� Applications� Integration middleware � Services for governance

CooperationCooperation btwbtw applicationsapplications through ESBthrough ESB

Everything is developed through distributed nodes that provide specialized services:� SaaS Software (front-end & back-end)� PaaS Platform� CaaS Communication

Outsourcing Outsourcing basedbased on on XaaSXaaS patternpattern

A new approach for an innovative designA new approach for an innovative design

Page 21: Webinar - Spagic: Beyond the SOA/BPM frontiers, towards a complete open cooperative environment

21www.spagic.org

Technology Architecture / XaaS - OSGi - Spagic

XaaS (Everything as a Service)

User Services

SaaSSoftware as a Service

PaaSPlatform as a Service

CaaSCommunication as a Service

EclipseEquinox

Eclipse ECF (MQ)

Eclipse P2

EclipseLink

JBossJBPM

JBossDrools

Spagic Service Manager

Spagic BPMApp.bundles Spagic bundles

Spagic Connectors(HTTP, WS, JMS, DB, File, FTP,..)

GWTGWTRichRich Internet Internet ApplicationApplication

Page 22: Webinar - Spagic: Beyond the SOA/BPM frontiers, towards a complete open cooperative environment

22www.spagic.org

• Downloads : http://forge.ow2.org• WebSite : www.spagic.org

For more information...

…thanks for your attention!

Antonietta Miele

[email protected]