SlideShare uma empresa Scribd logo
1 de 39
BPMN for REST

Cesare Pautasso
Faculty of Informatics, USI Lugano, Switzerland
c.pautasso@ieee.org
http://www.pautasso.info
@pautasso

21.11.2011
BPM         REST

©2010 - Cesare Pautasso          3
Business
                           RESTful
              Process
                           Web Services
              Management



©2010 - Cesare Pautasso                   4
WS-* Standards Stack




©2009-2010 - Cesare Pautasso - 30.6.2010   5
WS-* Standards Stack

                                    BPM                             Management
    Interoperability
                       Metadata
                                           Reliability




                                                                      Transactions
                                                         Security



                                                                                     State
                                                         Messaging

©2009-2010 - Cesare Pautasso - 30.6.2010                                                     6
BPM                       Management
    Interoperability
                       Metadata
                                   Reliability




                                                              Transactions
                                                 Security



                                                                             State
                                     Messaging
                                   Can you do                                 it
                                   with REST?
©2010 - Cesare Pautasso                                                              7
RESTful APIs…




©2011 - Cesare Pautasso   8
RESTful APIs…




©2011 - Cesare Pautasso   9
From REST-*



       “      We believe there is huge potential to
           marrying REST with workflow and BPM.




                                                         http://www.jboss.org/reststar/specifications/workflow.html
                               […]
           Combined with the architecture of the Web,
           a workflow service can provide both a truly
           simple, portable, and flexible way to build
           workflow driven integrations and


                          ”
           applications.




©2011 - Cesare Pautasso                                  10
BPM          REST
                  resource   resource


©2010 - Cesare Pautasso                 11
REST in one slide
  Web Services expose their
   data and functionality trough      PUT
   resources identified by URI
                                             R
  Uniform Interface constraint:       GET
   Clients interact with resources       POST
   through a fix set of verbs.                   DELETE
   Example HTTP:
   GET (read), POST (create), PUT (update), DELETE
  Multiple representations for the same resource
  Hyperlinks model resource relationships and valid
   state transitions for dynamic protocol description
   and discovery
©2011 - Cesare Pautasso                                   12
From REST-*



       “   We believe there is huge potential to
       marrying REST with workflow and BPM.




                                                        http://www.jboss.org/reststar/specifications/workflow.html
      The HATEOAS (hypermedia and linking)
       principal of REST is logically a dynamic state
       machine and fits very well with how
       workflow and BPM systems are designed.
      Combined with the architecture of the Web,
       a workflow service can provide both a truly
       simple, portable, and flexible way to build
       workflow driven integrations and
       applications.

©2011 - Cesare Pautasso                                 13
BPMN Levels




                             From Bruce Silver
    1.Descriptive Modeling

    2.Analytical Modeling

    3.Executable Modeling


©2011 - Cesare Pautasso      14
BPMN Primitives

                          Web
                          Service     Service Task


                          Web
                          Service   Send/Receive Task




©2011 - Cesare Pautasso                                 15
REST as a new connector

                          RPC                 BUS
                                         Publish/Subscribe
                          Call


                                 REST/HTTP

                             Get/Put/Post/Delete


©2010 - Cesare Pautasso                                      16
Outline
   1. Goal: use a business process model to:
       orchestrate a set of distributed resources
       specify the behavior of stateful resources

   2. BPMN for REST Extension
       Resource Symbol
       Invoking external resources
       Publishing process elements as
        resources

   3. Examples
©2011 - Cesare Pautasso                              17
Modeling questions
    Which are the resources that a process depends
     upon for a successful execution?
    Which are the resources that are affected by the
     execution of a process?
    Can we reason about the behavior of stateful
     resources using a process model?
    Which are the tasks of a process that have been
     made accessible to clients as a resource?
    Which are the possible requests that can be sent
     to a resource whose behavior is specified by a
     process?



©2011 - Cesare Pautasso                                 18
BPMN 2.0 Notation




©2011 - Cesare Pautasso   19
REST Triangle

 Resources                              Representations
                                                   (Multiple,
(Multiple,
                                                    Negotiable)
Globally Addressable)


                          R
                              (Fixed,
                              Uniform Interface)
                              Verbs
©2011 - Cesare Pautasso                                           20
Resource Icon




                          R


©2011 - Cesare Pautasso       21
Resource Icon and Tasks




                          Task published as a resource




©2011 - Cesare Pautasso                                  22
Resource Icon and Events




                  Resource Request Event Signal
           (BPMN for REST)            (BPMN 2.0)


©2011 - Cesare Pautasso                            23
Resource Icon and Data




                           External Resource
                          (RESTful Datastore)


©2011 - Cesare Pautasso                         24
Invoking External Resources
                          GET PUT DELETE POST
                              Message Flows
                           (Visualize the semantics
                             of the HTTP method)



                                External
                               Resources:
                           (Resource lifecycle is
                               independent
                           of process instance)
©2011 - Cesare Pautasso                               25
Abstraction




           GET message flow        Synchronous RPC
         with external resource   with participant lane
            (BPMN for REST)             (BPMN)
©2011 - Cesare Pautasso                               26
Publishing X as Resources




              Process                  Task
       published as resource   published as resource


©2011 - Cesare Pautasso                                27
Publishing X as Resource




                               SubProcess
                          published as resource

©2011 - Cesare Pautasso                           28
Publish Process as Resource
                                     List the
               GET /process          deployed         Get a form
                                     processes      describing how
                GET /process/name                     to start the
                                                        process
                                         Start a new
                POST /process/name       process
                                         instance      Check what
                                                       is the state
                GET /process/name/instance                 of the
                                                         instance
                DELETE /process/name/instance
                                                      Clean up
                                                   (once it is done)
©2010 - Cesare Pautasso                                                29
Publish Task as Resource
                                  List links to the
                                  active tasks
             GET /task            instances             Get a form
                                                      describing how
              GET /task/name/instance                 to interact with
                                                          the task
                                              Complete a
              PUT /task/name/instance
                                              task
                                                        Retrieve final
               GET /task/name/instance                  state of task




©2010 - Cesare Pautasso                                                  30
Publishing X as Resource




©2011 - Cesare Pautasso    31
Handling Resource Requests




                          The event models the arrival of a
                          specific resource request method
©2011 - Cesare Pautasso                                       32
Local Search Mashup




©2011 - Cesare Pautasso   33
Loan Approval Example




©2011 - Cesare Pautasso   34
RESTBucks Example




   ©2011 - Cesare Pautasso   35
Conclusion
  RESTful business process can be modeled using
   our simple BPMN for REST notation extension
  Processes interact with external resources
   (e.g., Web 2.0 APIs) which are fully decoupled
   from their lifecycle
  Processes publish their state as a resource:
         Entire Tasks and SubProcesses
         Use Events to model Resource Requests
  The graphical syntax and extended semantics of
   BPMN for REST was only informally sketched,
   more work is needed to specify the XML meta-
   model for the extension and its formal semantics
©2011 - Cesare Pautasso                             36
10th International Conference on
                     Business Process Management
                                (BPM 2012)

                  September 3-6 2012, Tallinn, Estonia
                        http://bpm2012.ut.ee
©2010 - Cesare Pautasso                                  37
16-20 April 2012, Lyon, France
                             http://ws-rest.org/2012
©2010 - Cesare Pautasso                                    38
PhD Positions Available




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

©2011 Cesare Pautasso                               39
Raj Balasubramanians,
                          Benjamin Carlyle,
                          Thomas Erl,
                          Cesare Pautasso,
                          SOA with REST,
                          Prentice Hall, 2012

                          http://soabooks.com/rest/




©2011 - Cesare Pautasso                               40

Mais conteúdo relacionado

Mais procurados

How to benchmark the maturity of your saas solution
How to benchmark the maturity of your saas solutionHow to benchmark the maturity of your saas solution
How to benchmark the maturity of your saas solutionkanimozhin
 
Core Banking Sharing: Finacle on AWS
Core Banking Sharing: Finacle on AWS Core Banking Sharing: Finacle on AWS
Core Banking Sharing: Finacle on AWS Amazon Web Services
 
Data Migration Steps PowerPoint Presentation Slides
Data Migration Steps PowerPoint Presentation Slides Data Migration Steps PowerPoint Presentation Slides
Data Migration Steps PowerPoint Presentation Slides SlideTeam
 
How Bayer Stopped Payments Pain with ISO20022
How Bayer Stopped Payments Pain with ISO20022How Bayer Stopped Payments Pain with ISO20022
How Bayer Stopped Payments Pain with ISO20022Nasreen Quibria
 
Magestore POS - An Omnichannel POS for Magento Retail
Magestore POS - An Omnichannel POS for Magento RetailMagestore POS - An Omnichannel POS for Magento Retail
Magestore POS - An Omnichannel POS for Magento RetailAlex Nguyen
 
Order management, provisioning and activation
Order management, provisioning and activationOrder management, provisioning and activation
Order management, provisioning and activationVijayIndra Shekhawat
 
Is Customer Success Worth It?
Is Customer Success Worth It? Is Customer Success Worth It?
Is Customer Success Worth It? Gainsight
 
Process Automation Powerpoint Presentation Slides
Process Automation Powerpoint Presentation SlidesProcess Automation Powerpoint Presentation Slides
Process Automation Powerpoint Presentation SlidesSlideTeam
 
Business Process Model and Notation (BPMN)
Business Process Model and Notation (BPMN)Business Process Model and Notation (BPMN)
Business Process Model and Notation (BPMN)Peter R. Egli
 
How Customer Success is Revolutionizing Open Source Companies
How Customer Success is Revolutionizing Open Source CompaniesHow Customer Success is Revolutionizing Open Source Companies
How Customer Success is Revolutionizing Open Source CompaniesGainsight
 
Case study: Camunda BPM in PwC project
Case study: Camunda BPM in PwC projectCase study: Camunda BPM in PwC project
Case study: Camunda BPM in PwC projectcamunda services GmbH
 
Digital banking on AWS
Digital banking on AWSDigital banking on AWS
Digital banking on AWSPham Anh Vu
 
Deliver New Customer Experiences Through AI-enabled Chatbots
 Deliver New Customer Experiences Through AI-enabled Chatbots Deliver New Customer Experiences Through AI-enabled Chatbots
Deliver New Customer Experiences Through AI-enabled ChatbotsAmazon Web Services
 
Managing Risk as a CSM
Managing Risk as a CSMManaging Risk as a CSM
Managing Risk as a CSMGainsight
 
Intelligent automation with Microsoft Power Automate
Intelligent automation with Microsoft Power AutomateIntelligent automation with Microsoft Power Automate
Intelligent automation with Microsoft Power AutomateDaniel Laskewitz
 
MuleSoft Event Driven Architecture (EDA Patterns in MuleSoft) - VirtualMuleys63
MuleSoft Event Driven Architecture (EDA Patterns in MuleSoft) - VirtualMuleys63MuleSoft Event Driven Architecture (EDA Patterns in MuleSoft) - VirtualMuleys63
MuleSoft Event Driven Architecture (EDA Patterns in MuleSoft) - VirtualMuleys63Angel Alberici
 

Mais procurados (20)

How to benchmark the maturity of your saas solution
How to benchmark the maturity of your saas solutionHow to benchmark the maturity of your saas solution
How to benchmark the maturity of your saas solution
 
Core Banking Sharing: Finacle on AWS
Core Banking Sharing: Finacle on AWS Core Banking Sharing: Finacle on AWS
Core Banking Sharing: Finacle on AWS
 
Data Migration Steps PowerPoint Presentation Slides
Data Migration Steps PowerPoint Presentation Slides Data Migration Steps PowerPoint Presentation Slides
Data Migration Steps PowerPoint Presentation Slides
 
How Bayer Stopped Payments Pain with ISO20022
How Bayer Stopped Payments Pain with ISO20022How Bayer Stopped Payments Pain with ISO20022
How Bayer Stopped Payments Pain with ISO20022
 
Power Automate
Power AutomatePower Automate
Power Automate
 
Magestore POS - An Omnichannel POS for Magento Retail
Magestore POS - An Omnichannel POS for Magento RetailMagestore POS - An Omnichannel POS for Magento Retail
Magestore POS - An Omnichannel POS for Magento Retail
 
Order management, provisioning and activation
Order management, provisioning and activationOrder management, provisioning and activation
Order management, provisioning and activation
 
Is Customer Success Worth It?
Is Customer Success Worth It? Is Customer Success Worth It?
Is Customer Success Worth It?
 
Process Automation Powerpoint Presentation Slides
Process Automation Powerpoint Presentation SlidesProcess Automation Powerpoint Presentation Slides
Process Automation Powerpoint Presentation Slides
 
Business Process Model and Notation (BPMN)
Business Process Model and Notation (BPMN)Business Process Model and Notation (BPMN)
Business Process Model and Notation (BPMN)
 
Data as an Asset, Not a Cost
Data as an Asset, Not a CostData as an Asset, Not a Cost
Data as an Asset, Not a Cost
 
How Customer Success is Revolutionizing Open Source Companies
How Customer Success is Revolutionizing Open Source CompaniesHow Customer Success is Revolutionizing Open Source Companies
How Customer Success is Revolutionizing Open Source Companies
 
T24 Temenos Methodology Overview
T24 Temenos Methodology OverviewT24 Temenos Methodology Overview
T24 Temenos Methodology Overview
 
Case study: Camunda BPM in PwC project
Case study: Camunda BPM in PwC projectCase study: Camunda BPM in PwC project
Case study: Camunda BPM in PwC project
 
Data Infra and Data Access in Nubank
Data Infra and Data Access in NubankData Infra and Data Access in Nubank
Data Infra and Data Access in Nubank
 
Digital banking on AWS
Digital banking on AWSDigital banking on AWS
Digital banking on AWS
 
Deliver New Customer Experiences Through AI-enabled Chatbots
 Deliver New Customer Experiences Through AI-enabled Chatbots Deliver New Customer Experiences Through AI-enabled Chatbots
Deliver New Customer Experiences Through AI-enabled Chatbots
 
Managing Risk as a CSM
Managing Risk as a CSMManaging Risk as a CSM
Managing Risk as a CSM
 
Intelligent automation with Microsoft Power Automate
Intelligent automation with Microsoft Power AutomateIntelligent automation with Microsoft Power Automate
Intelligent automation with Microsoft Power Automate
 
MuleSoft Event Driven Architecture (EDA Patterns in MuleSoft) - VirtualMuleys63
MuleSoft Event Driven Architecture (EDA Patterns in MuleSoft) - VirtualMuleys63MuleSoft Event Driven Architecture (EDA Patterns in MuleSoft) - VirtualMuleys63
MuleSoft Event Driven Architecture (EDA Patterns in MuleSoft) - VirtualMuleys63
 

Destaque

BPMN 2.0 Poster
BPMN 2.0 PosterBPMN 2.0 Poster
BPMN 2.0 Postersignavio
 
BPMN 2.0 cheat sheet
BPMN 2.0 cheat sheetBPMN 2.0 cheat sheet
BPMN 2.0 cheat sheetIOZ AG
 
JOpera - Eclipse-based Visual Composition Environment featuring a general lan...
JOpera - Eclipse-based Visual Composition Environment featuring a general lan...JOpera - Eclipse-based Visual Composition Environment featuring a general lan...
JOpera - Eclipse-based Visual Composition Environment featuring a general lan...Cesare Pautasso
 
Functionele afhankelijkheden en normalisatie
Functionele afhankelijkheden en normalisatieFunctionele afhankelijkheden en normalisatie
Functionele afhankelijkheden en normalisatieKatrien Verbert
 
BPMN 2.0 Einfühung
BPMN 2.0 EinfühungBPMN 2.0 Einfühung
BPMN 2.0 EinfühungIOZ AG
 
How To Explain BPMN To Business Users
How To Explain BPMN To Business UsersHow To Explain BPMN To Business Users
How To Explain BPMN To Business UsersSandy Kemsley
 
Executing bpmn 2.0 with j bpm 3 or (at your option) any later version
Executing bpmn 2.0 with j bpm 3 or (at your option) any later versionExecuting bpmn 2.0 with j bpm 3 or (at your option) any later version
Executing bpmn 2.0 with j bpm 3 or (at your option) any later versioncamunda services GmbH
 
Openerp Warehouse Management System
Openerp Warehouse Management SystemOpenerp Warehouse Management System
Openerp Warehouse Management SystemOdoo
 
OData and the future of business objects universes
OData and the future of business objects universesOData and the future of business objects universes
OData and the future of business objects universesSumit Sarkar
 
BPMN 2.0 & PAVONE Notation
BPMN 2.0 & PAVONE NotationBPMN 2.0 & PAVONE Notation
BPMN 2.0 & PAVONE NotationBjoern Reinhold
 
Odoo Warehouse Management
Odoo Warehouse ManagementOdoo Warehouse Management
Odoo Warehouse ManagementOdoo
 
The new Odoo warehouse management system
The new Odoo warehouse management systemThe new Odoo warehouse management system
The new Odoo warehouse management systemOdoo
 
Introduction à BPMN 2.0 - Business Process Modeling Notation
Introduction à BPMN 2.0 - Business Process Modeling NotationIntroduction à BPMN 2.0 - Business Process Modeling Notation
Introduction à BPMN 2.0 - Business Process Modeling NotationSanae BEKKAR
 
BPMN 2.0 Tutorial 01 - Basic Constructs
BPMN 2.0 Tutorial 01 - Basic ConstructsBPMN 2.0 Tutorial 01 - Basic Constructs
BPMN 2.0 Tutorial 01 - Basic ConstructsMichael zur Muehlen
 
BPMN 2.0 overview
BPMN 2.0 overviewBPMN 2.0 overview
BPMN 2.0 overviewsolomd
 
BPMN 2.0 - Eine Uebersicht
BPMN 2.0 - Eine UebersichtBPMN 2.0 - Eine Uebersicht
BPMN 2.0 - Eine UebersichtAndreas Naef
 

Destaque (20)

BPMN 2.0 Poster EN
BPMN 2.0 Poster ENBPMN 2.0 Poster EN
BPMN 2.0 Poster EN
 
BPMN 2.0 Poster
BPMN 2.0 PosterBPMN 2.0 Poster
BPMN 2.0 Poster
 
BPMN 2.0 cheat sheet
BPMN 2.0 cheat sheetBPMN 2.0 cheat sheet
BPMN 2.0 cheat sheet
 
JOpera - Eclipse-based Visual Composition Environment featuring a general lan...
JOpera - Eclipse-based Visual Composition Environment featuring a general lan...JOpera - Eclipse-based Visual Composition Environment featuring a general lan...
JOpera - Eclipse-based Visual Composition Environment featuring a general lan...
 
Functionele afhankelijkheden en normalisatie
Functionele afhankelijkheden en normalisatieFunctionele afhankelijkheden en normalisatie
Functionele afhankelijkheden en normalisatie
 
BPMN 1.1 Poster EN
BPMN 1.1 Poster ENBPMN 1.1 Poster EN
BPMN 1.1 Poster EN
 
BPMN 2.0 Einfühung
BPMN 2.0 EinfühungBPMN 2.0 Einfühung
BPMN 2.0 Einfühung
 
How To Explain BPMN To Business Users
How To Explain BPMN To Business UsersHow To Explain BPMN To Business Users
How To Explain BPMN To Business Users
 
Executing bpmn 2.0 with j bpm 3 or (at your option) any later version
Executing bpmn 2.0 with j bpm 3 or (at your option) any later versionExecuting bpmn 2.0 with j bpm 3 or (at your option) any later version
Executing bpmn 2.0 with j bpm 3 or (at your option) any later version
 
Odoo Warehouse
Odoo WarehouseOdoo Warehouse
Odoo Warehouse
 
Bpmn portuguese
Bpmn portugueseBpmn portuguese
Bpmn portuguese
 
Openerp Warehouse Management System
Openerp Warehouse Management SystemOpenerp Warehouse Management System
Openerp Warehouse Management System
 
OData and the future of business objects universes
OData and the future of business objects universesOData and the future of business objects universes
OData and the future of business objects universes
 
BPMN 2.0 & PAVONE Notation
BPMN 2.0 & PAVONE NotationBPMN 2.0 & PAVONE Notation
BPMN 2.0 & PAVONE Notation
 
Odoo Warehouse Management
Odoo Warehouse ManagementOdoo Warehouse Management
Odoo Warehouse Management
 
The new Odoo warehouse management system
The new Odoo warehouse management systemThe new Odoo warehouse management system
The new Odoo warehouse management system
 
Introduction à BPMN 2.0 - Business Process Modeling Notation
Introduction à BPMN 2.0 - Business Process Modeling NotationIntroduction à BPMN 2.0 - Business Process Modeling Notation
Introduction à BPMN 2.0 - Business Process Modeling Notation
 
BPMN 2.0 Tutorial 01 - Basic Constructs
BPMN 2.0 Tutorial 01 - Basic ConstructsBPMN 2.0 Tutorial 01 - Basic Constructs
BPMN 2.0 Tutorial 01 - Basic Constructs
 
BPMN 2.0 overview
BPMN 2.0 overviewBPMN 2.0 overview
BPMN 2.0 overview
 
BPMN 2.0 - Eine Uebersicht
BPMN 2.0 - Eine UebersichtBPMN 2.0 - Eine Uebersicht
BPMN 2.0 - Eine Uebersicht
 

Semelhante a BPMN for REST

Push-Enabling RESTful Business Processes
Push-Enabling RESTful Business ProcessesPush-Enabling RESTful Business Processes
Push-Enabling RESTful Business ProcessesCesare Pautasso
 
Techniques for Composing REST services - SOA Symposium 2009
Techniques for Composing REST services - SOA Symposium 2009Techniques for Composing REST services - SOA Symposium 2009
Techniques for Composing REST services - SOA Symposium 2009Cesare Pautasso
 
RESTful Service Composition with JOpera
RESTful Service Composition with JOperaRESTful Service Composition with JOpera
RESTful Service Composition with JOperaCesare Pautasso
 
Composing REST Services
Composing REST ServicesComposing REST Services
Composing REST Serviceselliando dias
 
Intalio BPP 6.0のビジョン
Intalio BPP 6.0のビジョンIntalio BPP 6.0のビジョン
Intalio BPP 6.0のビジョンTomoaki Sawada
 
WS-* vs. RESTful Services
WS-* vs. RESTful ServicesWS-* vs. RESTful Services
WS-* vs. RESTful ServicesCesare Pautasso
 
Atomic Transactions for the REST of us
Atomic Transactions for the REST of usAtomic Transactions for the REST of us
Atomic Transactions for the REST of usCesare Pautasso
 
Next Generation_WVI
Next Generation_WVINext Generation_WVI
Next Generation_WVIPrasad Kapu
 
WSO2 Mashups and BPM
WSO2 Mashups and BPMWSO2 Mashups and BPM
WSO2 Mashups and BPMWSO2
 
Spagic3 Presentation En
Spagic3 Presentation EnSpagic3 Presentation En
Spagic3 Presentation Enguest76d50b
 
Spagic3 Presentation En
Spagic3 Presentation EnSpagic3 Presentation En
Spagic3 Presentation EnSpagoWorld
 
Ideate Framework WS-REST 2011
Ideate Framework  WS-REST 2011Ideate Framework  WS-REST 2011
Ideate Framework WS-REST 2011Dave Duggal
 
The Future of Technology Operations
The Future of Technology OperationsThe Future of Technology Operations
The Future of Technology OperationsIvanti
 

Semelhante a BPMN for REST (20)

Push-Enabling RESTful Business Processes
Push-Enabling RESTful Business ProcessesPush-Enabling RESTful Business Processes
Push-Enabling RESTful Business Processes
 
BPM with REST
BPM with RESTBPM with REST
BPM with REST
 
Techniques for Composing REST services - SOA Symposium 2009
Techniques for Composing REST services - SOA Symposium 2009Techniques for Composing REST services - SOA Symposium 2009
Techniques for Composing REST services - SOA Symposium 2009
 
SOA with REST
SOA with RESTSOA with REST
SOA with REST
 
RESTful Service Composition with JOpera
RESTful Service Composition with JOperaRESTful Service Composition with JOpera
RESTful Service Composition with JOpera
 
Composing REST Services
Composing REST ServicesComposing REST Services
Composing REST Services
 
Intalio BPP 6.0のビジョン
Intalio BPP 6.0のビジョンIntalio BPP 6.0のビジョン
Intalio BPP 6.0のビジョン
 
WS-* vs. RESTful Services
WS-* vs. RESTful ServicesWS-* vs. RESTful Services
WS-* vs. RESTful Services
 
Www2008 Restws Pautasso Talk
Www2008 Restws Pautasso TalkWww2008 Restws Pautasso Talk
Www2008 Restws Pautasso Talk
 
Atomic Transactions for the REST of us
Atomic Transactions for the REST of usAtomic Transactions for the REST of us
Atomic Transactions for the REST of us
 
Next Generation_WVI
Next Generation_WVINext Generation_WVI
Next Generation_WVI
 
An Unbiased Look: Oracle SOA Suite 12c
An Unbiased Look: Oracle SOA Suite 12cAn Unbiased Look: Oracle SOA Suite 12c
An Unbiased Look: Oracle SOA Suite 12c
 
SOA2010 SOA with REST
SOA2010 SOA with RESTSOA2010 SOA with REST
SOA2010 SOA with REST
 
WSO2 Mashups and BPM
WSO2 Mashups and BPMWSO2 Mashups and BPM
WSO2 Mashups and BPM
 
Spagic3 Presentation En
Spagic3 Presentation EnSpagic3 Presentation En
Spagic3 Presentation En
 
Spagic3 Presentation En
Spagic3 Presentation EnSpagic3 Presentation En
Spagic3 Presentation En
 
RossiMattiaCVFull
RossiMattiaCVFullRossiMattiaCVFull
RossiMattiaCVFull
 
Ideate Framework WS-REST 2011
Ideate Framework  WS-REST 2011Ideate Framework  WS-REST 2011
Ideate Framework WS-REST 2011
 
Rest Component
Rest ComponentRest Component
Rest Component
 
The Future of Technology Operations
The Future of Technology OperationsThe Future of Technology Operations
The Future of Technology Operations
 

Mais de Cesare Pautasso

Beautiful APIs - SOSE2021 Keynote
Beautiful APIs - SOSE2021 KeynoteBeautiful APIs - SOSE2021 Keynote
Beautiful APIs - SOSE2021 KeynoteCesare Pautasso
 
How do you back up and consistently recover your microservice architecture?
How do you back up and consistently recover your microservice architecture?How do you back up and consistently recover your microservice architecture?
How do you back up and consistently recover your microservice architecture?Cesare Pautasso
 
Microservices: An Eventually Inconsistent Architectural Style?
Microservices: An Eventually Inconsistent Architectural Style?Microservices: An Eventually Inconsistent Architectural Style?
Microservices: An Eventually Inconsistent Architectural Style?Cesare Pautasso
 
Disaster Recovery and Microservices: The BAC Theorem
Disaster Recovery and Microservices: The BAC TheoremDisaster Recovery and Microservices: The BAC Theorem
Disaster Recovery and Microservices: The BAC TheoremCesare Pautasso
 
The Blockchain as a Software Connector
The Blockchain as a Software ConnectorThe Blockchain as a Software Connector
The Blockchain as a Software ConnectorCesare Pautasso
 
Team Situational Awareness and Architectural Decision Making with the Softwar...
Team Situational Awareness and Architectural Decision Making with the Softwar...Team Situational Awareness and Architectural Decision Making with the Softwar...
Team Situational Awareness and Architectural Decision Making with the Softwar...Cesare Pautasso
 
Service Oriented Architectures and Web Services
Service Oriented Architectures and Web ServicesService Oriented Architectures and Web Services
Service Oriented Architectures and Web ServicesCesare Pautasso
 
Exploiting Multicores to Optimize Business Process Execution
Exploiting Multicores to Optimize Business Process ExecutionExploiting Multicores to Optimize Business Process Execution
Exploiting Multicores to Optimize Business Process ExecutionCesare Pautasso
 
Real-time Mashups di Web Service Geografici
Real-time Mashups di Web Service GeograficiReal-time Mashups di Web Service Geografici
Real-time Mashups di Web Service GeograficiCesare Pautasso
 
Towards Scalable Service Composition on Multicores
Towards Scalable Service Composition on MulticoresTowards Scalable Service Composition on Multicores
Towards Scalable Service Composition on MulticoresCesare Pautasso
 
USI SCUBE Associate Member
USI SCUBE Associate MemberUSI SCUBE Associate Member
USI SCUBE Associate MemberCesare Pautasso
 
Lighweight Collaboration Management (Mashups09@OOPSLA)
Lighweight Collaboration Management (Mashups09@OOPSLA)Lighweight Collaboration Management (Mashups09@OOPSLA)
Lighweight Collaboration Management (Mashups09@OOPSLA)Cesare Pautasso
 
Some REST Design Patterns (and Anti-Patterns) - SOA Symposium 2009
Some REST Design Patterns (and Anti-Patterns) - SOA Symposium 2009Some REST Design Patterns (and Anti-Patterns) - SOA Symposium 2009
Some REST Design Patterns (and Anti-Patterns) - SOA Symposium 2009Cesare Pautasso
 
Composing RESTful Services with JOpera
Composing RESTful Services with JOperaComposing RESTful Services with JOpera
Composing RESTful Services with JOperaCesare Pautasso
 
Scientific and Grid Workflow Management (SGS09)
Scientific and Grid Workflow Management (SGS09)Scientific and Grid Workflow Management (SGS09)
Scientific and Grid Workflow Management (SGS09)Cesare Pautasso
 

Mais de Cesare Pautasso (20)

Beautiful APIs - SOSE2021 Keynote
Beautiful APIs - SOSE2021 KeynoteBeautiful APIs - SOSE2021 Keynote
Beautiful APIs - SOSE2021 Keynote
 
How do you back up and consistently recover your microservice architecture?
How do you back up and consistently recover your microservice architecture?How do you back up and consistently recover your microservice architecture?
How do you back up and consistently recover your microservice architecture?
 
Microservices: An Eventually Inconsistent Architectural Style?
Microservices: An Eventually Inconsistent Architectural Style?Microservices: An Eventually Inconsistent Architectural Style?
Microservices: An Eventually Inconsistent Architectural Style?
 
Disaster Recovery and Microservices: The BAC Theorem
Disaster Recovery and Microservices: The BAC TheoremDisaster Recovery and Microservices: The BAC Theorem
Disaster Recovery and Microservices: The BAC Theorem
 
The Blockchain as a Software Connector
The Blockchain as a Software ConnectorThe Blockchain as a Software Connector
The Blockchain as a Software Connector
 
Team Situational Awareness and Architectural Decision Making with the Softwar...
Team Situational Awareness and Architectural Decision Making with the Softwar...Team Situational Awareness and Architectural Decision Making with the Softwar...
Team Situational Awareness and Architectural Decision Making with the Softwar...
 
Service Oriented Architectures and Web Services
Service Oriented Architectures and Web ServicesService Oriented Architectures and Web Services
Service Oriented Architectures and Web Services
 
Exploiting Multicores to Optimize Business Process Execution
Exploiting Multicores to Optimize Business Process ExecutionExploiting Multicores to Optimize Business Process Execution
Exploiting Multicores to Optimize Business Process Execution
 
Real-time Mashups di Web Service Geografici
Real-time Mashups di Web Service GeograficiReal-time Mashups di Web Service Geografici
Real-time Mashups di Web Service Geografici
 
Towards Scalable Service Composition on Multicores
Towards Scalable Service Composition on MulticoresTowards Scalable Service Composition on Multicores
Towards Scalable Service Composition on Multicores
 
USI SCUBE Associate Member
USI SCUBE Associate MemberUSI SCUBE Associate Member
USI SCUBE Associate Member
 
Lighweight Collaboration Management (Mashups09@OOPSLA)
Lighweight Collaboration Management (Mashups09@OOPSLA)Lighweight Collaboration Management (Mashups09@OOPSLA)
Lighweight Collaboration Management (Mashups09@OOPSLA)
 
Some REST Design Patterns (and Anti-Patterns) - SOA Symposium 2009
Some REST Design Patterns (and Anti-Patterns) - SOA Symposium 2009Some REST Design Patterns (and Anti-Patterns) - SOA Symposium 2009
Some REST Design Patterns (and Anti-Patterns) - SOA Symposium 2009
 
Mashups09
Mashups09Mashups09
Mashups09
 
Composing RESTful Services with JOpera
Composing RESTful Services with JOperaComposing RESTful Services with JOpera
Composing RESTful Services with JOpera
 
Scientific and Grid Workflow Management (SGS09)
Scientific and Grid Workflow Management (SGS09)Scientific and Grid Workflow Management (SGS09)
Scientific and Grid Workflow Management (SGS09)
 
Composing REST Services
Composing REST ServicesComposing REST Services
Composing REST Services
 
Mashup Ecosystem
Mashup EcosystemMashup Ecosystem
Mashup Ecosystem
 
Mashup Atelier
Mashup AtelierMashup Atelier
Mashup Atelier
 
MetaCDN
MetaCDNMetaCDN
MetaCDN
 

Último

Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 

Último (20)

Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 

BPMN for REST

  • 1. BPMN for REST Cesare Pautasso Faculty of Informatics, USI Lugano, Switzerland c.pautasso@ieee.org http://www.pautasso.info @pautasso 21.11.2011
  • 2. BPM REST ©2010 - Cesare Pautasso 3
  • 3. Business RESTful Process Web Services Management ©2010 - Cesare Pautasso 4
  • 4. WS-* Standards Stack ©2009-2010 - Cesare Pautasso - 30.6.2010 5
  • 5. WS-* Standards Stack BPM Management Interoperability Metadata Reliability Transactions Security State Messaging ©2009-2010 - Cesare Pautasso - 30.6.2010 6
  • 6. BPM Management Interoperability Metadata Reliability Transactions Security State Messaging Can you do it with REST? ©2010 - Cesare Pautasso 7
  • 7. RESTful APIs… ©2011 - Cesare Pautasso 8
  • 8. RESTful APIs… ©2011 - Cesare Pautasso 9
  • 9. From REST-* “ We believe there is huge potential to marrying REST with workflow and BPM. http://www.jboss.org/reststar/specifications/workflow.html […] Combined with the architecture of the Web, a workflow service can provide both a truly simple, portable, and flexible way to build workflow driven integrations and ” applications. ©2011 - Cesare Pautasso 10
  • 10. BPM REST resource resource ©2010 - Cesare Pautasso 11
  • 11. REST in one slide  Web Services expose their data and functionality trough PUT resources identified by URI R  Uniform Interface constraint: GET Clients interact with resources POST through a fix set of verbs. DELETE Example HTTP: GET (read), POST (create), PUT (update), DELETE  Multiple representations for the same resource  Hyperlinks model resource relationships and valid state transitions for dynamic protocol description and discovery ©2011 - Cesare Pautasso 12
  • 12. From REST-* “ We believe there is huge potential to marrying REST with workflow and BPM. http://www.jboss.org/reststar/specifications/workflow.html  The HATEOAS (hypermedia and linking) principal of REST is logically a dynamic state machine and fits very well with how workflow and BPM systems are designed.  Combined with the architecture of the Web, a workflow service can provide both a truly simple, portable, and flexible way to build workflow driven integrations and applications. ©2011 - Cesare Pautasso 13
  • 13. BPMN Levels From Bruce Silver 1.Descriptive Modeling 2.Analytical Modeling 3.Executable Modeling ©2011 - Cesare Pautasso 14
  • 14. BPMN Primitives Web Service Service Task Web Service Send/Receive Task ©2011 - Cesare Pautasso 15
  • 15. REST as a new connector RPC BUS Publish/Subscribe Call REST/HTTP Get/Put/Post/Delete ©2010 - Cesare Pautasso 16
  • 16. Outline 1. Goal: use a business process model to:  orchestrate a set of distributed resources  specify the behavior of stateful resources 2. BPMN for REST Extension  Resource Symbol  Invoking external resources  Publishing process elements as resources 3. Examples ©2011 - Cesare Pautasso 17
  • 17. Modeling questions  Which are the resources that a process depends upon for a successful execution?  Which are the resources that are affected by the execution of a process?  Can we reason about the behavior of stateful resources using a process model?  Which are the tasks of a process that have been made accessible to clients as a resource?  Which are the possible requests that can be sent to a resource whose behavior is specified by a process? ©2011 - Cesare Pautasso 18
  • 18. BPMN 2.0 Notation ©2011 - Cesare Pautasso 19
  • 19. REST Triangle Resources Representations (Multiple, (Multiple, Negotiable) Globally Addressable) R (Fixed, Uniform Interface) Verbs ©2011 - Cesare Pautasso 20
  • 20. Resource Icon R ©2011 - Cesare Pautasso 21
  • 21. Resource Icon and Tasks Task published as a resource ©2011 - Cesare Pautasso 22
  • 22. Resource Icon and Events Resource Request Event Signal (BPMN for REST) (BPMN 2.0) ©2011 - Cesare Pautasso 23
  • 23. Resource Icon and Data External Resource (RESTful Datastore) ©2011 - Cesare Pautasso 24
  • 24. Invoking External Resources GET PUT DELETE POST Message Flows (Visualize the semantics of the HTTP method) External Resources: (Resource lifecycle is independent of process instance) ©2011 - Cesare Pautasso 25
  • 25. Abstraction GET message flow Synchronous RPC with external resource with participant lane (BPMN for REST) (BPMN) ©2011 - Cesare Pautasso 26
  • 26. Publishing X as Resources Process Task published as resource published as resource ©2011 - Cesare Pautasso 27
  • 27. Publishing X as Resource SubProcess published as resource ©2011 - Cesare Pautasso 28
  • 28. Publish Process as Resource List the GET /process deployed Get a form processes describing how GET /process/name to start the process Start a new POST /process/name process instance Check what is the state GET /process/name/instance of the instance DELETE /process/name/instance Clean up (once it is done) ©2010 - Cesare Pautasso 29
  • 29. Publish Task as Resource List links to the active tasks GET /task instances Get a form describing how GET /task/name/instance to interact with the task Complete a PUT /task/name/instance task Retrieve final GET /task/name/instance state of task ©2010 - Cesare Pautasso 30
  • 30. Publishing X as Resource ©2011 - Cesare Pautasso 31
  • 31. Handling Resource Requests The event models the arrival of a specific resource request method ©2011 - Cesare Pautasso 32
  • 32. Local Search Mashup ©2011 - Cesare Pautasso 33
  • 33. Loan Approval Example ©2011 - Cesare Pautasso 34
  • 34. RESTBucks Example ©2011 - Cesare Pautasso 35
  • 35. Conclusion  RESTful business process can be modeled using our simple BPMN for REST notation extension  Processes interact with external resources (e.g., Web 2.0 APIs) which are fully decoupled from their lifecycle  Processes publish their state as a resource:  Entire Tasks and SubProcesses  Use Events to model Resource Requests  The graphical syntax and extended semantics of BPMN for REST was only informally sketched, more work is needed to specify the XML meta- model for the extension and its formal semantics ©2011 - Cesare Pautasso 36
  • 36. 10th International Conference on Business Process Management (BPM 2012) September 3-6 2012, Tallinn, Estonia http://bpm2012.ut.ee ©2010 - Cesare Pautasso 37
  • 37. 16-20 April 2012, Lyon, France http://ws-rest.org/2012 ©2010 - Cesare Pautasso 38
  • 38. PhD Positions Available Cesare Pautasso http://www.pautasso.info/ @pautasso ©2011 Cesare Pautasso 39
  • 39. Raj Balasubramanians, Benjamin Carlyle, Thomas Erl, Cesare Pautasso, SOA with REST, Prentice Hall, 2012 http://soabooks.com/rest/ ©2011 - Cesare Pautasso 40