SlideShare a Scribd company logo
Implementing SOA and BPM in your application



             Wiesław Pilarczyk
              wp@vdel.com

           Ljubljana, 9.10.2008
Agenda

        –   Business requirements and software architectures
        –   SOA&BPM acronym soup
        –   Implementation using FOSS
        –   Example




9.10.2008                   JavaBlend 2008, http://www.javablend.net/
Business requirements

        Support for all enterprise business areas             ERP, CRM, ECM
        Business process management                           BPM
        Application integration                               EAI
        Agile enterprises


        Virtual projects


        Globalization                                         SAAS
        Nonfunctional requirements


        IT infrastructure management                          ITIL
        Return on investment                                  ROI


9.10.2008                    JavaBlend 2008, http://www.javablend.net/
Application Architecture today




9.10.2008    JavaBlend 2008, http://www.javablend.net/
Do you know what is your process?




9.10.2008      JavaBlend 2008, http://www.javablend.net/
BPM Vision




            Ideas are cheap, implementation is hard
            Think big, make small steps
9.10.2008                  JavaBlend 2008, http://www.javablend.net/
Ontology


            Before you start talking to me, define your words
                         (Aristotle paraphrase)


              Specification of conceptualization
             • OWL Web Ontology Language Protégé
             • SBVR Semantics of Business Vocabulary and Rules
             • Repositories of ontologies

9.10.2008                  JavaBlend 2008, http://www.javablend.net/
BPMN for business analysts




            XPDL for model persistence (WfMC)
            BPDM Business Process Definition Metamodel (OMG)
            ActiveVOS from ActiveEndpoints, Intalio

9.10.2008                   JavaBlend 2008, http://www.javablend.net/
BPEL for implementers




            • BPMN-BPEL mapping needed (serious model descrepancies)
            • BPEL4People
            • WS-HumanTask
            • ActiveBPEL from ActiveEndpoints
9.10.2008                   JavaBlend 2008, http://www.javablend.net/
Inside BPEL

                     flow        pick
                                                                              WSDL Message

            sequence               forEach
                                                                           Variables                             partnerLink 1

       Structured Activities                                                                               Partner Links
                                                                        Schema ElementSchema Type
            repeatUntil                scope
                                                                                                                 partnerLink 2

                  if-else       while




                     invoke           reply
                                                                                                                         fault
               receive                 rethrow                                                                        handler

             compensate         compensateScope
                                                                                                       compensation

            assign
                      Basic                         exit
                                                                                                            handler

                     Activities                                                                             Handlers
            extensionActivity                 validate                                                                    termination
                                                                       Correlation Sets                                       handler
                  wait                   throw
                                                                                                                  event
                                                                                                                handler
                              empty                                              property 1

                                                                                 property 2


9.10.2008                                                  JavaBlend 2008, http://www.javablend.net/
ebXML (www.oasis-open.org)




9.10.2008   JavaBlend 2008, http://www.javablend.net/
JBI – JSR 208




            ServiceMix from Apache

9.10.2008                      JavaBlend 2008, http://www.javablend.net/
SCA




            Tuscany from Apache, STP from Eclipse
9.10.2008                      JavaBlend 2008, http://www.javablend.net/
SOA Governance


     Implementing SOA without a solid governance model is the
     equivalent to having an airport without a control tower.
     * Not enough process creates chaos
     * Too much process stifles innovation and deters agility
     * Evolve governance over time
     (Mike Kavis, CIO Magazine)


            ebxmlrr
            Mule Galaxy
            WSO2 Registry
9.10.2008                   JavaBlend 2008, http://www.javablend.net/
Web Services Registry (UDDI)




                                                  Provider




9.10.2008   JavaBlend 2008, http://www.javablend.net/
SOA Reference Architecture
                                                 Internet
                            Desktop                                          Mobile
                                                   RIA



                                               Presentation layer

                           Service coordination (orchestration, choreography)
       Development




                                                                                             Management
                                   Service virtualization and delivery

                                                         Dedicated                Standard
                                                          services                services


                     Platform


                     Application   Application         Application

9.10.2008                             JavaBlend 2008, http://www.javablend.net/
Example Implementation
                                                        R
                                                        Richfaces/Ajax4jsf              Mobicents

                                                              Internet
                                       Desktop                                            Mobile
                                                                RIA


                                                 Presentation layer Seam/JBoss Portal
     JBoss Developer Studio




                                        Service coordination layer (orchestration) jBPM
         Development




                                                                                                             Management
                                            Service virtualization and delivery JBoss ESB




                                                                                                                JON
                                                                                                Standard
                                                                                                services
                                                                      Dedicated
                                                                       services                JBoss Rules
                                                                                                Reporting
                                 Platform JBoss AS
                                                                                                Metamatrix



                              Application      Application         Application
9.10.2008                                          JavaBlend 2008, http://www.javablend.net/
Application using BPM and SOA




9.10.2008   JavaBlend 2008, http://www.javablend.net/
BPM and SOA




9.10.2008   JavaBlend 2008, http://www.javablend.net/
jPDL Process Editor




9.10.2008   JavaBlend 2008, http://www.javablend.net/
ESB




9.10.2008   JavaBlend 2008, http://www.javablend.net/
Composite Services




9.10.2008   JavaBlend 2008, http://www.javablend.net/
Enterprise Integration
                                      Patterns




            www.eaipatterns.com
9.10.2008                 JavaBlend 2008, http://www.javablend.net/
ESB Services and Actions




9.10.2008   JavaBlend 2008, http://www.javablend.net/
ESB Content Based Routing




9.10.2008   JavaBlend 2008, http://www.javablend.net/
Externalize Business Rules

    Rules Language

             rule quot;Customer Platinum Statusquot;
                   when
                        customer: Customer(status > 50)
                        order: OrderHeader(orderPriority == 3)
                   then
                        order.setOrderDiscount(8.5);
             end
             rule quot;Customer Gold Statusquot;
                   when
                        customer: Customer(status > 10, status <= 50)
                        order: OrderHeader(orderPriority == 2)
                   then
                        order.setOrderDiscount(3.4);
             end

9.10.2008                           JavaBlend 2008, http://www.javablend.net/
Rule Editor




9.10.2008   JavaBlend 2008, http://www.javablend.net/
DSL




9.10.2008   JavaBlend 2008, http://www.javablend.net/
Decision Tables Excel/OpenOffice)




9.10.2008     JavaBlend 2008, http://www.javablend.net/
Aggregate applications - Portal




9.10.2008   JavaBlend 2008, http://www.javablend.net/
Use what is available




9.10.2008   JavaBlend 2008, http://www.javablend.net/
Control your infrastructure




            RHQ   http://www.rhq-project.org
9.10.2008                JavaBlend 2008, http://www.javablend.net/
Management Console




9.10.2008   JavaBlend 2008, http://www.javablend.net/
Management Console Dashboard




9.10.2008    JavaBlend 2008, http://www.javablend.net/
Are you ready for it yet?




            – BAM                   Business Activity Monitoring
            – EDA , CEP             Esper




9.10.2008                 JavaBlend 2008, http://www.javablend.net/
Business Process Maturity
                                             Model BPMM (OMG)



            Level 1 Not coordinated                             just do it
                   applications
            Level 2 Defined services                            increased effectivity
                   written instructions
            Level 3 Defined processes                           automatization
            Level 4 Process management                          better control
            Level 5 Dynamic process                             full optimalization cycle:
                   optimalization                               define
                                                                implement
                                                                deploy
                                                                monitor
9.10.2008                    JavaBlend 2008, http://www.javablend.net/
Roadmap




            Level 1 Not coordinated                             Application Server
                   applications
            Level 2 Defined services                             ESB
                   written instructions
            Level 3 Defined processes                            BPM
            Level 4 Process management                           Rules
            Level 5 Dynamic process                              BPMS
                   optimalization


9.10.2008                     JavaBlend 2008, http://www.javablend.net/
Q&A
                   Wiesław Pilarczyk
                    wp@vdel.com




9.10.2008   JavaBlend 2008, http://www.javablend.net/

More Related Content

What's hot

5050 dev nation
5050 dev nation5050 dev nation
5050 dev nationArun Gupta
 
04.egovFrame Runtime Environment Workshop
04.egovFrame Runtime Environment Workshop04.egovFrame Runtime Environment Workshop
04.egovFrame Runtime Environment WorkshopChuong Nguyen
 
Java Summit Chennai: JAX-RS 2.0
Java Summit Chennai: JAX-RS 2.0Java Summit Chennai: JAX-RS 2.0
Java Summit Chennai: JAX-RS 2.0Arun Gupta
 
The Java EE 7 Platform: Productivity & HTML5 at JavaOne Latin America 2012
The Java EE 7 Platform: Productivity & HTML5 at JavaOne Latin America 2012The Java EE 7 Platform: Productivity & HTML5 at JavaOne Latin America 2012
The Java EE 7 Platform: Productivity & HTML5 at JavaOne Latin America 2012Arun Gupta
 
Java EE Technical Keynote at JavaOne Latin America 2011
Java EE Technical Keynote at JavaOne Latin America 2011Java EE Technical Keynote at JavaOne Latin America 2011
Java EE Technical Keynote at JavaOne Latin America 2011Arun Gupta
 
Java EE 7 at JAX London 2011 and JFall 2011
Java EE 7 at JAX London 2011 and JFall 2011Java EE 7 at JAX London 2011 and JFall 2011
Java EE 7 at JAX London 2011 and JFall 2011Arun Gupta
 
The Java EE 7 Platform: Productivity &amp; HTML5 at San Francisco JUG
The Java EE 7 Platform: Productivity &amp; HTML5 at San Francisco JUGThe Java EE 7 Platform: Productivity &amp; HTML5 at San Francisco JUG
The Java EE 7 Platform: Productivity &amp; HTML5 at San Francisco JUGArun Gupta
 
03.eGovFrame Runtime Environment Training Book Supplement
03.eGovFrame Runtime Environment Training Book Supplement03.eGovFrame Runtime Environment Training Book Supplement
03.eGovFrame Runtime Environment Training Book SupplementChuong Nguyen
 
01.egovFrame Training Book I
01.egovFrame Training Book I01.egovFrame Training Book I
01.egovFrame Training Book IChuong Nguyen
 
Spring Day | Behind the Scenes at Spring Batch | Dave Syer
Spring Day | Behind the Scenes at Spring Batch | Dave SyerSpring Day | Behind the Scenes at Spring Batch | Dave Syer
Spring Day | Behind the Scenes at Spring Batch | Dave SyerJAX London
 
Cake Php 1.2 (Ocphp)
Cake Php 1.2 (Ocphp)Cake Php 1.2 (Ocphp)
Cake Php 1.2 (Ocphp)guest193fe1
 
N(i)2 technical architecture 2.0 (v1 1)
N(i)2 technical architecture 2.0 (v1 1)N(i)2 technical architecture 2.0 (v1 1)
N(i)2 technical architecture 2.0 (v1 1)kvz
 
Compatibleone @ OpenStack In Action
Compatibleone @ OpenStack In Action Compatibleone @ OpenStack In Action
Compatibleone @ OpenStack In Action CompatibleOne
 
Building HTML5 WebSocket Apps in Java at JavaOne Latin America 2012
Building HTML5 WebSocket Apps in Java at JavaOne Latin America 2012Building HTML5 WebSocket Apps in Java at JavaOne Latin America 2012
Building HTML5 WebSocket Apps in Java at JavaOne Latin America 2012Arun Gupta
 
OSGi Community Event 2010 - Enterprise OSGi in WebSphere and Apache Aries
OSGi Community Event 2010 - Enterprise OSGi in WebSphere and Apache AriesOSGi Community Event 2010 - Enterprise OSGi in WebSphere and Apache Aries
OSGi Community Event 2010 - Enterprise OSGi in WebSphere and Apache Ariesmfrancis
 
Running your Java EE 6 applications in the Cloud
Running your Java EE 6 applications in the CloudRunning your Java EE 6 applications in the Cloud
Running your Java EE 6 applications in the CloudArun Gupta
 
GIDS 2012: Java Message Service 2.0
GIDS 2012: Java Message Service 2.0GIDS 2012: Java Message Service 2.0
GIDS 2012: Java Message Service 2.0Arun Gupta
 
The State of Java under Oracle at JCertif 2011
The State of Java under Oracle at JCertif 2011The State of Java under Oracle at JCertif 2011
The State of Java under Oracle at JCertif 2011Arun Gupta
 

What's hot (19)

5050 dev nation
5050 dev nation5050 dev nation
5050 dev nation
 
04.egovFrame Runtime Environment Workshop
04.egovFrame Runtime Environment Workshop04.egovFrame Runtime Environment Workshop
04.egovFrame Runtime Environment Workshop
 
Java Summit Chennai: JAX-RS 2.0
Java Summit Chennai: JAX-RS 2.0Java Summit Chennai: JAX-RS 2.0
Java Summit Chennai: JAX-RS 2.0
 
The Java EE 7 Platform: Productivity & HTML5 at JavaOne Latin America 2012
The Java EE 7 Platform: Productivity & HTML5 at JavaOne Latin America 2012The Java EE 7 Platform: Productivity & HTML5 at JavaOne Latin America 2012
The Java EE 7 Platform: Productivity & HTML5 at JavaOne Latin America 2012
 
Java EE Technical Keynote at JavaOne Latin America 2011
Java EE Technical Keynote at JavaOne Latin America 2011Java EE Technical Keynote at JavaOne Latin America 2011
Java EE Technical Keynote at JavaOne Latin America 2011
 
Java EE 7 at JAX London 2011 and JFall 2011
Java EE 7 at JAX London 2011 and JFall 2011Java EE 7 at JAX London 2011 and JFall 2011
Java EE 7 at JAX London 2011 and JFall 2011
 
The Java EE 7 Platform: Productivity &amp; HTML5 at San Francisco JUG
The Java EE 7 Platform: Productivity &amp; HTML5 at San Francisco JUGThe Java EE 7 Platform: Productivity &amp; HTML5 at San Francisco JUG
The Java EE 7 Platform: Productivity &amp; HTML5 at San Francisco JUG
 
03.eGovFrame Runtime Environment Training Book Supplement
03.eGovFrame Runtime Environment Training Book Supplement03.eGovFrame Runtime Environment Training Book Supplement
03.eGovFrame Runtime Environment Training Book Supplement
 
groovy
groovygroovy
groovy
 
01.egovFrame Training Book I
01.egovFrame Training Book I01.egovFrame Training Book I
01.egovFrame Training Book I
 
Spring Day | Behind the Scenes at Spring Batch | Dave Syer
Spring Day | Behind the Scenes at Spring Batch | Dave SyerSpring Day | Behind the Scenes at Spring Batch | Dave Syer
Spring Day | Behind the Scenes at Spring Batch | Dave Syer
 
Cake Php 1.2 (Ocphp)
Cake Php 1.2 (Ocphp)Cake Php 1.2 (Ocphp)
Cake Php 1.2 (Ocphp)
 
N(i)2 technical architecture 2.0 (v1 1)
N(i)2 technical architecture 2.0 (v1 1)N(i)2 technical architecture 2.0 (v1 1)
N(i)2 technical architecture 2.0 (v1 1)
 
Compatibleone @ OpenStack In Action
Compatibleone @ OpenStack In Action Compatibleone @ OpenStack In Action
Compatibleone @ OpenStack In Action
 
Building HTML5 WebSocket Apps in Java at JavaOne Latin America 2012
Building HTML5 WebSocket Apps in Java at JavaOne Latin America 2012Building HTML5 WebSocket Apps in Java at JavaOne Latin America 2012
Building HTML5 WebSocket Apps in Java at JavaOne Latin America 2012
 
OSGi Community Event 2010 - Enterprise OSGi in WebSphere and Apache Aries
OSGi Community Event 2010 - Enterprise OSGi in WebSphere and Apache AriesOSGi Community Event 2010 - Enterprise OSGi in WebSphere and Apache Aries
OSGi Community Event 2010 - Enterprise OSGi in WebSphere and Apache Aries
 
Running your Java EE 6 applications in the Cloud
Running your Java EE 6 applications in the CloudRunning your Java EE 6 applications in the Cloud
Running your Java EE 6 applications in the Cloud
 
GIDS 2012: Java Message Service 2.0
GIDS 2012: Java Message Service 2.0GIDS 2012: Java Message Service 2.0
GIDS 2012: Java Message Service 2.0
 
The State of Java under Oracle at JCertif 2011
The State of Java under Oracle at JCertif 2011The State of Java under Oracle at JCertif 2011
The State of Java under Oracle at JCertif 2011
 

Viewers also liked

[Muir] Seam 2 in practice
[Muir] Seam 2 in practice[Muir] Seam 2 in practice
[Muir] Seam 2 in practicejavablend
 
windows linux BEÑAT HAITZ
windows linux BEÑAT HAITZwindows linux BEÑAT HAITZ
windows linux BEÑAT HAITZguest5b2d8e
 
[Strukelj] Why will Java 7.0 be so cool
[Strukelj] Why will Java 7.0 be so cool[Strukelj] Why will Java 7.0 be so cool
[Strukelj] Why will Java 7.0 be so cooljavablend
 
[Roblek] Distributed computing in practice
[Roblek] Distributed computing in practice[Roblek] Distributed computing in practice
[Roblek] Distributed computing in practicejavablend
 
Portfólio - Zarabatana Digital 360
Portfólio - Zarabatana Digital 360 Portfólio - Zarabatana Digital 360
Portfólio - Zarabatana Digital 360 Sergio Akash
 

Viewers also liked (7)

Bryanpulido
BryanpulidoBryanpulido
Bryanpulido
 
[Muir] Seam 2 in practice
[Muir] Seam 2 in practice[Muir] Seam 2 in practice
[Muir] Seam 2 in practice
 
windows linux BEÑAT HAITZ
windows linux BEÑAT HAITZwindows linux BEÑAT HAITZ
windows linux BEÑAT HAITZ
 
.
..
.
 
[Strukelj] Why will Java 7.0 be so cool
[Strukelj] Why will Java 7.0 be so cool[Strukelj] Why will Java 7.0 be so cool
[Strukelj] Why will Java 7.0 be so cool
 
[Roblek] Distributed computing in practice
[Roblek] Distributed computing in practice[Roblek] Distributed computing in practice
[Roblek] Distributed computing in practice
 
Portfólio - Zarabatana Digital 360
Portfólio - Zarabatana Digital 360 Portfólio - Zarabatana Digital 360
Portfólio - Zarabatana Digital 360
 

Similar to [Pilarczyk] Adrenaline programing implementing - SOA and BPM in your application

Pure Ejb Within An Agile Context
Pure Ejb Within An Agile ContextPure Ejb Within An Agile Context
Pure Ejb Within An Agile ContextNoam Bunder
 
Pointwest. Agility Defined.
Pointwest. Agility Defined.Pointwest. Agility Defined.
Pointwest. Agility Defined.Pointwest
 
2009 Q2 WSO2 Technical Update
2009 Q2 WSO2 Technical Update2009 Q2 WSO2 Technical Update
2009 Q2 WSO2 Technical UpdateWSO2
 
Resource Oriented Architecture in Wireless Sensor Network
Resource Oriented Architecture in Wireless Sensor NetworkResource Oriented Architecture in Wireless Sensor Network
Resource Oriented Architecture in Wireless Sensor NetworkThomas Pham
 
SOA/SCA FraScAti
SOA/SCA FraScAtiSOA/SCA FraScAti
SOA/SCA FraScAtiInria
 
Framework Engineering
Framework EngineeringFramework Engineering
Framework EngineeringYoungSu Son
 
Spark IT 2011 - Java EE 6 Workshop
Spark IT 2011 - Java EE 6 WorkshopSpark IT 2011 - Java EE 6 Workshop
Spark IT 2011 - Java EE 6 WorkshopArun Gupta
 
Adopting Agile Tools & Methods In A Legacy Context
Adopting Agile Tools & Methods In A Legacy ContextAdopting Agile Tools & Methods In A Legacy Context
Adopting Agile Tools & Methods In A Legacy ContextXavier Warzee
 
Gemini WEB and Virgo
Gemini WEB and VirgoGemini WEB and Virgo
Gemini WEB and VirgoHristo Iliev
 
NIG 系統開發指引
NIG 系統開發指引NIG 系統開發指引
NIG 系統開發指引Guo Albert
 
10 reasons why Nuxeo is using GlassFish
10 reasons why Nuxeo is using GlassFish10 reasons why Nuxeo is using GlassFish
10 reasons why Nuxeo is using GlassFishNuxeo
 
What's new in Nuxeo 5.2? - Solutions Linux 2009
What's new in Nuxeo 5.2? - Solutions Linux 2009What's new in Nuxeo 5.2? - Solutions Linux 2009
What's new in Nuxeo 5.2? - Solutions Linux 2009Stefane Fermigier
 
Balconies, Patios, Terraces, and Bridges. Architectural approaches for moving...
Balconies, Patios, Terraces, and Bridges. Architectural approaches for moving...Balconies, Patios, Terraces, and Bridges. Architectural approaches for moving...
Balconies, Patios, Terraces, and Bridges. Architectural approaches for moving...mfrancis
 
Sun Java EE 6 Overview
Sun Java EE 6 OverviewSun Java EE 6 Overview
Sun Java EE 6 Overviewsbobde
 
Dan Vulpe - JavaFX 2 - Developing RIA with Java
Dan Vulpe - JavaFX 2 - Developing RIA with JavaDan Vulpe - JavaFX 2 - Developing RIA with Java
Dan Vulpe - JavaFX 2 - Developing RIA with JavaCodecamp Romania
 
UI innovation with SAP NetWeaver Gateway
UI innovation with SAP NetWeaver GatewayUI innovation with SAP NetWeaver Gateway
UI innovation with SAP NetWeaver GatewayJohn Moy
 
Rapid Network Application Development with Apache MINA
Rapid Network Application Development with Apache MINARapid Network Application Development with Apache MINA
Rapid Network Application Development with Apache MINAtrustinlee
 

Similar to [Pilarczyk] Adrenaline programing implementing - SOA and BPM in your application (20)

Introducing spring
Introducing springIntroducing spring
Introducing spring
 
Pure Ejb Within An Agile Context
Pure Ejb Within An Agile ContextPure Ejb Within An Agile Context
Pure Ejb Within An Agile Context
 
Pointwest. Agility Defined.
Pointwest. Agility Defined.Pointwest. Agility Defined.
Pointwest. Agility Defined.
 
2009 Q2 WSO2 Technical Update
2009 Q2 WSO2 Technical Update2009 Q2 WSO2 Technical Update
2009 Q2 WSO2 Technical Update
 
Resource Oriented Architecture in Wireless Sensor Network
Resource Oriented Architecture in Wireless Sensor NetworkResource Oriented Architecture in Wireless Sensor Network
Resource Oriented Architecture in Wireless Sensor Network
 
SOA/SCA FraScAti
SOA/SCA FraScAtiSOA/SCA FraScAti
SOA/SCA FraScAti
 
Framework Engineering
Framework EngineeringFramework Engineering
Framework Engineering
 
Spark IT 2011 - Java EE 6 Workshop
Spark IT 2011 - Java EE 6 WorkshopSpark IT 2011 - Java EE 6 Workshop
Spark IT 2011 - Java EE 6 Workshop
 
Jspx Jdc2010
Jspx Jdc2010Jspx Jdc2010
Jspx Jdc2010
 
Java EE 7 - Overview and Status
Java EE 7  - Overview and StatusJava EE 7  - Overview and Status
Java EE 7 - Overview and Status
 
Adopting Agile Tools & Methods In A Legacy Context
Adopting Agile Tools & Methods In A Legacy ContextAdopting Agile Tools & Methods In A Legacy Context
Adopting Agile Tools & Methods In A Legacy Context
 
Gemini WEB and Virgo
Gemini WEB and VirgoGemini WEB and Virgo
Gemini WEB and Virgo
 
NIG 系統開發指引
NIG 系統開發指引NIG 系統開發指引
NIG 系統開發指引
 
10 reasons why Nuxeo is using GlassFish
10 reasons why Nuxeo is using GlassFish10 reasons why Nuxeo is using GlassFish
10 reasons why Nuxeo is using GlassFish
 
What's new in Nuxeo 5.2? - Solutions Linux 2009
What's new in Nuxeo 5.2? - Solutions Linux 2009What's new in Nuxeo 5.2? - Solutions Linux 2009
What's new in Nuxeo 5.2? - Solutions Linux 2009
 
Balconies, Patios, Terraces, and Bridges. Architectural approaches for moving...
Balconies, Patios, Terraces, and Bridges. Architectural approaches for moving...Balconies, Patios, Terraces, and Bridges. Architectural approaches for moving...
Balconies, Patios, Terraces, and Bridges. Architectural approaches for moving...
 
Sun Java EE 6 Overview
Sun Java EE 6 OverviewSun Java EE 6 Overview
Sun Java EE 6 Overview
 
Dan Vulpe - JavaFX 2 - Developing RIA with Java
Dan Vulpe - JavaFX 2 - Developing RIA with JavaDan Vulpe - JavaFX 2 - Developing RIA with Java
Dan Vulpe - JavaFX 2 - Developing RIA with Java
 
UI innovation with SAP NetWeaver Gateway
UI innovation with SAP NetWeaver GatewayUI innovation with SAP NetWeaver Gateway
UI innovation with SAP NetWeaver Gateway
 
Rapid Network Application Development with Apache MINA
Rapid Network Application Development with Apache MINARapid Network Application Development with Apache MINA
Rapid Network Application Development with Apache MINA
 

Recently uploaded

Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...UiPathCommunity
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...Product School
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
 
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxIOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxAbida Shariff
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...Product School
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...Product School
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
 
UiPath Test Automation using UiPath Test Suite series, part 1
UiPath Test Automation using UiPath Test Suite series, part 1UiPath Test Automation using UiPath Test Suite series, part 1
UiPath Test Automation using UiPath Test Suite series, part 1DianaGray10
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform EngineeringJemma Hussein Allen
 
Demystifying gRPC in .Net by John Staveley
Demystifying gRPC in .Net by John StaveleyDemystifying gRPC in .Net by John Staveley
Demystifying gRPC in .Net by John StaveleyJohn Staveley
 
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptxUnpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptxDavid Michel
 
IoT Analytics Company Presentation May 2024
IoT Analytics Company Presentation May 2024IoT Analytics Company Presentation May 2024
IoT Analytics Company Presentation May 2024IoTAnalytics
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesThousandEyes
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaRTTS
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor TurskyiFwdays
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)Ralf Eggert
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...Elena Simperl
 

Recently uploaded (20)

Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxIOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
UiPath Test Automation using UiPath Test Suite series, part 1
UiPath Test Automation using UiPath Test Suite series, part 1UiPath Test Automation using UiPath Test Suite series, part 1
UiPath Test Automation using UiPath Test Suite series, part 1
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
Demystifying gRPC in .Net by John Staveley
Demystifying gRPC in .Net by John StaveleyDemystifying gRPC in .Net by John Staveley
Demystifying gRPC in .Net by John Staveley
 
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptxUnpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
 
IoT Analytics Company Presentation May 2024
IoT Analytics Company Presentation May 2024IoT Analytics Company Presentation May 2024
IoT Analytics Company Presentation May 2024
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
 

[Pilarczyk] Adrenaline programing implementing - SOA and BPM in your application

  • 1. Implementing SOA and BPM in your application Wiesław Pilarczyk wp@vdel.com Ljubljana, 9.10.2008
  • 2. Agenda – Business requirements and software architectures – SOA&BPM acronym soup – Implementation using FOSS – Example 9.10.2008 JavaBlend 2008, http://www.javablend.net/
  • 3. Business requirements  Support for all enterprise business areas ERP, CRM, ECM  Business process management BPM  Application integration EAI  Agile enterprises  Virtual projects  Globalization SAAS  Nonfunctional requirements  IT infrastructure management ITIL  Return on investment ROI 9.10.2008 JavaBlend 2008, http://www.javablend.net/
  • 4. Application Architecture today 9.10.2008 JavaBlend 2008, http://www.javablend.net/
  • 5. Do you know what is your process? 9.10.2008 JavaBlend 2008, http://www.javablend.net/
  • 6. BPM Vision Ideas are cheap, implementation is hard Think big, make small steps 9.10.2008 JavaBlend 2008, http://www.javablend.net/
  • 7. Ontology Before you start talking to me, define your words (Aristotle paraphrase) Specification of conceptualization • OWL Web Ontology Language Protégé • SBVR Semantics of Business Vocabulary and Rules • Repositories of ontologies 9.10.2008 JavaBlend 2008, http://www.javablend.net/
  • 8. BPMN for business analysts XPDL for model persistence (WfMC) BPDM Business Process Definition Metamodel (OMG) ActiveVOS from ActiveEndpoints, Intalio 9.10.2008 JavaBlend 2008, http://www.javablend.net/
  • 9. BPEL for implementers • BPMN-BPEL mapping needed (serious model descrepancies) • BPEL4People • WS-HumanTask • ActiveBPEL from ActiveEndpoints 9.10.2008 JavaBlend 2008, http://www.javablend.net/
  • 10. Inside BPEL flow pick WSDL Message sequence forEach Variables partnerLink 1 Structured Activities Partner Links Schema ElementSchema Type repeatUntil scope partnerLink 2 if-else while invoke reply fault receive rethrow handler compensate compensateScope compensation assign Basic exit handler Activities Handlers extensionActivity validate termination Correlation Sets handler wait throw event handler empty property 1 property 2 9.10.2008 JavaBlend 2008, http://www.javablend.net/
  • 11. ebXML (www.oasis-open.org) 9.10.2008 JavaBlend 2008, http://www.javablend.net/
  • 12. JBI – JSR 208 ServiceMix from Apache 9.10.2008 JavaBlend 2008, http://www.javablend.net/
  • 13. SCA Tuscany from Apache, STP from Eclipse 9.10.2008 JavaBlend 2008, http://www.javablend.net/
  • 14. SOA Governance Implementing SOA without a solid governance model is the equivalent to having an airport without a control tower. * Not enough process creates chaos * Too much process stifles innovation and deters agility * Evolve governance over time (Mike Kavis, CIO Magazine) ebxmlrr Mule Galaxy WSO2 Registry 9.10.2008 JavaBlend 2008, http://www.javablend.net/
  • 15. Web Services Registry (UDDI) Provider 9.10.2008 JavaBlend 2008, http://www.javablend.net/
  • 16. SOA Reference Architecture Internet Desktop Mobile RIA Presentation layer Service coordination (orchestration, choreography) Development Management Service virtualization and delivery Dedicated Standard services services Platform Application Application Application 9.10.2008 JavaBlend 2008, http://www.javablend.net/
  • 17. Example Implementation R Richfaces/Ajax4jsf Mobicents Internet Desktop Mobile RIA Presentation layer Seam/JBoss Portal JBoss Developer Studio Service coordination layer (orchestration) jBPM Development Management Service virtualization and delivery JBoss ESB JON Standard services Dedicated services JBoss Rules Reporting Platform JBoss AS Metamatrix Application Application Application 9.10.2008 JavaBlend 2008, http://www.javablend.net/
  • 18. Application using BPM and SOA 9.10.2008 JavaBlend 2008, http://www.javablend.net/
  • 19. BPM and SOA 9.10.2008 JavaBlend 2008, http://www.javablend.net/
  • 20. jPDL Process Editor 9.10.2008 JavaBlend 2008, http://www.javablend.net/
  • 21. ESB 9.10.2008 JavaBlend 2008, http://www.javablend.net/
  • 22. Composite Services 9.10.2008 JavaBlend 2008, http://www.javablend.net/
  • 23. Enterprise Integration Patterns www.eaipatterns.com 9.10.2008 JavaBlend 2008, http://www.javablend.net/
  • 24. ESB Services and Actions 9.10.2008 JavaBlend 2008, http://www.javablend.net/
  • 25. ESB Content Based Routing 9.10.2008 JavaBlend 2008, http://www.javablend.net/
  • 26. Externalize Business Rules Rules Language rule quot;Customer Platinum Statusquot; when customer: Customer(status > 50) order: OrderHeader(orderPriority == 3) then order.setOrderDiscount(8.5); end rule quot;Customer Gold Statusquot; when customer: Customer(status > 10, status <= 50) order: OrderHeader(orderPriority == 2) then order.setOrderDiscount(3.4); end 9.10.2008 JavaBlend 2008, http://www.javablend.net/
  • 27. Rule Editor 9.10.2008 JavaBlend 2008, http://www.javablend.net/
  • 28. DSL 9.10.2008 JavaBlend 2008, http://www.javablend.net/
  • 29. Decision Tables Excel/OpenOffice) 9.10.2008 JavaBlend 2008, http://www.javablend.net/
  • 30. Aggregate applications - Portal 9.10.2008 JavaBlend 2008, http://www.javablend.net/
  • 31. Use what is available 9.10.2008 JavaBlend 2008, http://www.javablend.net/
  • 32. Control your infrastructure RHQ http://www.rhq-project.org 9.10.2008 JavaBlend 2008, http://www.javablend.net/
  • 33. Management Console 9.10.2008 JavaBlend 2008, http://www.javablend.net/
  • 34. Management Console Dashboard 9.10.2008 JavaBlend 2008, http://www.javablend.net/
  • 35. Are you ready for it yet? – BAM Business Activity Monitoring – EDA , CEP Esper 9.10.2008 JavaBlend 2008, http://www.javablend.net/
  • 36. Business Process Maturity Model BPMM (OMG) Level 1 Not coordinated just do it applications Level 2 Defined services increased effectivity written instructions Level 3 Defined processes automatization Level 4 Process management better control Level 5 Dynamic process full optimalization cycle: optimalization define implement deploy monitor 9.10.2008 JavaBlend 2008, http://www.javablend.net/
  • 37. Roadmap Level 1 Not coordinated Application Server applications Level 2 Defined services ESB written instructions Level 3 Defined processes BPM Level 4 Process management Rules Level 5 Dynamic process BPMS optimalization 9.10.2008 JavaBlend 2008, http://www.javablend.net/
  • 38. Q&A Wiesław Pilarczyk wp@vdel.com 9.10.2008 JavaBlend 2008, http://www.javablend.net/