SlideShare uma empresa Scribd logo
1 de 41
Baixar para ler offline
Prototyping Business
       Process
    Ang Chen and Didier Buchs
         RSP 2006, Crete
Outline

Business Process Management
CO-OPN Language
BP Modeling (service, control, data, transactions)
Verification and Prototyping
Future Works
Context

Process-Oriented System in Service-Oriented Architecture
Domain Specific Languages (DSL)
Expressive Power, formal semantics
Semantics Basis: e.g. logic, Petri Nets, Register
Complexity of Verification
Prototyping: Target Environment
Environment
   Distributed Systems (may be embedded)

   Service Oriented Architecture (SOA)
       Web Service, XML
   Grid Computing

Target Languages: Java, .NET, BPEL (Business Process Execution
Language) etc.
Business Process
 Management
Example: E-Shop
  Acquisition    Stock    Admin
                                       client

  Providers      Sale      CRM      •Buy
                                    •Return
                                    •Query
   Delivery     Finance   Banking
E-Shop: Business Processes

 order   Payment      Stock       Delivery



                                   Send        Money
         Return       RMA
                                  Material      Back



         Query

                   RMA: Return Materials Authorization
E-Shop: supply chain
                                                Client
Acquisition    Stock    Admin     Acquisition    Stock    Admin


Providers      Sale      CRM                      Sale     CRM


 Delivery     Finance   Banking    Delivery     Finance   Banking
Principe of BPM
Affect the software development process
Separate the development of
   Business Processes and
   Business Process Management System
Business Processes: The softwares to be developed
BPMS: The infrastructure
Concurrent Object-
Oriented Petri Nets
COOPN
                                                     Fire
       Concurrent
                                           ph_
       Object-Oriented         in1_:H
                                           po_                 out_:H2O
       Petri Nets              in2_:O

                                  this=Self::Fire With this.out water::
H, O, H2O are Algebraic
                                        ph h1, ph h1, po o1 ->
Abstract Data Types
                                  variables
water is a value (generator)
                                    h1,h2: H
of ADT H2O                          o1: O
COOPN Elements
Token      ADT      black token: @                place/transition nets

                 data ADTs: boolean, natural etc.

              container ADTs: pair, list etc.          colored Petri nets

                                                ADTs
                                     Objects
                                                  object nets
           Object      object reference           reference nets
                                                  mobility of objects


   Place                             Context
             Transaction

           Method     Gate

                       can be                       contains
Algebraic Abstract Data Type
                               Generic Abstract Adt ListStructure(Elem);
                               ...
Immutable entities             Interface
                                   Generators
Use generator and axiomatic    	     [] : -> list;
                               	     _ ' _ : elem, list -> list;
rules to construct data type   	     _ | _ : list, list -> list;
                               ;; Specific elements
Axioms can be used to infer        Operations
                               	     head _ : list -> elem;
properties on data, e.g.       	     tail _ : list -> list;
commutativity and              	     pick _ from _ : natural, list -> list;
                               	     drop _ from _ : natural, list -> list;
associativity rules            	     reverse _ : list -> list;
                               ...
                               End ListStructure;
COOPN: Transactions
                       T1, T2 ∈Trans, where Trans is the set
ACID Transactions      of transactions in a COOPN system
with different rules   Composition:
                               T1 With T2 ∈Trans
   Parallel: //
   Sequential: ..              T1 // T2 ∈Trans

   Alternative: |              T1 .. T2 ∈Trans
                               T1 | T2 ∈Trans
COOPN: Overview
Declarative, formal specification based on Petri Net semantics
State computation uses logical inference
   Forward chaining: firing transitions
   Backtracking: transaction resolution
Separation of Data and Behavior
Context coordination, Transaction semantics
Modeling Business
    Process
Dimensionality of Business Process




Data                  Service
                                Other dimensions:
                                Resources, Organizational




                Control
E-Shop: Service View I
                                                       Client
Acquisition       Stock      Admin      Acquisition     Stock    Admin


Providers         Sale        CRM                        Sale     CRM


 Delivery        Finance    Banking      Delivery      Finance   Banking


              Sub-systems are connected via services
E-Shop: Service View II

Sale department
provides three
                                Sale  •Order(...)
services to clients                   • Return(...) client
                             Department
                                      •Query(...)

        Each process is a service for clients
E-Shop: Service View III
                                        client

Execution
                       Order       Return        Query         process
environment: SOA                                             deployment

                                                              process
The underlying                     BPMS                      execution
systems provide                  services
                                                             enactment
services to business           interactions

process management      Sale          Stock       CRM etc.
                                                             Underlying
                                                              systems
system
Control Flow


Cases Handling System
Workflow Patterns: Split, Join, OR, AND, Merge etc.
Patterns of control flow
   A               B                                    B

       sequence                A          MUL

                                                        C
                   B                   Multi-Choice

   A      AND

                               A
                   C
       AND split                          DIS           C
                               B
                   B
                                        Discriminator
  A      XOR

                   C                       B
       XOR Split

  A                    A      start        C          end    E

         AND       C
  B                                        D
       AND join
                             Interleaved parallel routing

  A
                                           B
         XOR       C
                       A     XOR                      AND    D
  B
        XOR join                           C
                           XOR Split              AND join
                              process not well-formed
E-Shop: Control-Flow View
                                                                  Activity : Payment by Credit Card


                                                                          Check credit card
                                                                              activity           <id,accepted>
                                                         <id,payment>
                                                                                                   XOR-SPLIT

                                                                                                 <id,rejected>




order
                                                                    request             response
                  Payment             Stock   Delivery
                                                                         Credit Card Checking
                                                                        Process or Web Service


                                               Send         Money
                  Return              RMA
                                              Material       Back



                  Query
RMA: Return Materials Authorization
Data Modeling
Implement XML algebra with ADT
   Define data types representing XML structure: tree, set,
   elements, attributes.
   Operations on the data: add, modify, remove elements or
   attributes
   Operation on the structure: schema algebra and validation
E-Shop: Data View
Client ID
              Payment           Product IDs     Shipping ID


      Order              Paid          Shipping         Shipped

               Return
               Request
                                 Returned

     state change               used by (data dependence)

Can be modeled by Colored tokens, Automate, XML algebra
Process Verification and
      Prototyping
Process Verification

Advantages of formal and Petri nets based semantics
High-level properties can be mapped into Petri Nets properties
Several techniques are possibles: model checking, automatic test
generation, simulation.
Properties of Petri Nets

Liveness: of PN, of an initial marking
Deadlock free: of PN, of an initial marking
Soundness
Properties of BP


A BP instance FINALLY terminates (absence of deadlock in PN):
valid input tokens will FINALLY arrive the ending state. Multiple
ending states can exist in a BP definition.
Properties of BP


If a BP instance terminates, there should be no hanging tasks
for this instance (soundness): no dead tokens.
Properties of BP

When several BPs are connected, no cycle dependence should
exist.
   E.g. to get a job, you must have work experiences; to have
   work experiences, you must get a job.
Characteristics of Activity

A preliminary work for verification, basic classifications:
   Source (creation point of instance or data)
   Sink (end point of instance or data)
   Filter/Join (mutation of instance or data)
   Composition of these activities
Transactional BP
Modeling transaction coordinators which handle different
transactions by implementing transaction protocols
Building blocks
   COOPN modules representing activities
   COOPN modules encoding transaction states
   With, //, .. , |
Properties of TBPs

Success guarantee: if a TBP succeeds, everything should have
done successfully.
Rollback and compensation guarantee: if it does not succeed,
rollback and compensation will be done, as “nothing happens”.
From one consistent state to another consistent state. e.g. the
philosopher problems.
Prototyping
       BP                    COOPN                        Java

    Process                                             Java ADT
                               ADT
    Instance                                              impl.      XML
                                                                    message
                             External                   Java Data
      Data
                            Data Type                     Type


     Activity                 Class
                                                        JavaBean
    Process                  Context
                                                                    Services
                                                    Transaction     Endpoint
     Action                 Transaction
                                                      Object


     Event                   Method                       Java
                                                         Method

     Atomic
                               Gate                 Java Event
   Transaction
                                         configurable
                 modeling
                                       transformation
Integrating Prototypes
                                                                                 Process controller prototype
Client      delivery            credit card           Enactment
            service               service              system                          Shopping Process

                                                             send <id, order>
                                                                                 in_
                        order
                                                                                             order
                ask payement                                  askPayment id

               input credit card
                                                                                       out_
                                        verify credit card                                       <id, transaction>
                                                                                       in_
                                       credit card valid      validPayment id
                                                                                        transaction
                            ask delivery                      askDelivery id


                                                                                       out_
                                                                                        in_          <id, delivery>
                          confirm delivery                    confirmDelivery id
                                                                                         delivery
                                                                delivered id
The framework
         Business Process
                                              integration
                                                              Remote         UI
        Process instance                                      system
                                               ERP /                                     user
      Data          Activity
                                                IS
       Atomic Transaction
                                                                  Service Interface
      Process      Event
                                                                Executable model (PSM)
               Action                         embedded
                                              controller            Java ADT impl.
  modeling                                                        Java Data Type
                                                              JavaBeans           Java Event
                                                          n
                                                     atio        Transaction Object
      COOPN model (PIM)                         rm
                                            s fo                    Java Method
       External Data Type                 n
                                       tra                             web service
    ADT           Class
     Context         Gate
                 Method                        Configuration             Class
        Transaction                           (Mapping rules)          Library


             verification       validation      simulation
 refinement
Conclusion &
Future Work
Conclusion
Most modeling work are done, e.g. perspectives:
   Control
   Data
   Service
   Transaction
Time to propose an XML-based Domain Specific Language
Future Works

Investigation on the constraints between the dimensions
Service Oriented Business Process Specifications (SO-BPS)
Verification and model checking techniques
Tools supports
Thank you for your
    attention

Mais conteúdo relacionado

Semelhante a Prototyping Business Processes

Telecom OSS/BSS Overview
Telecom OSS/BSS OverviewTelecom OSS/BSS Overview
Telecom OSS/BSS Overviewmagidg
 
The Art of The Event Streaming Application: Streams, Stream Processors and Sc...
The Art of The Event Streaming Application: Streams, Stream Processors and Sc...The Art of The Event Streaming Application: Streams, Stream Processors and Sc...
The Art of The Event Streaming Application: Streams, Stream Processors and Sc...confluent
 
Kakfa summit london 2019 - the art of the event-streaming app
Kakfa summit london 2019 - the art of the event-streaming appKakfa summit london 2019 - the art of the event-streaming app
Kakfa summit london 2019 - the art of the event-streaming appNeil Avery
 
SETS
SETSSETS
SETSSETS
 
Cross Language Process Model Reuse Po Em2009
Cross Language Process Model Reuse Po Em2009Cross Language Process Model Reuse Po Em2009
Cross Language Process Model Reuse Po Em2009mturi
 
Slash n: Tech Talk Track 2 – Distributed Transactions in SOA - Yogi Kulkarni,...
Slash n: Tech Talk Track 2 – Distributed Transactions in SOA - Yogi Kulkarni,...Slash n: Tech Talk Track 2 – Distributed Transactions in SOA - Yogi Kulkarni,...
Slash n: Tech Talk Track 2 – Distributed Transactions in SOA - Yogi Kulkarni,...slashn
 
Python business intelligence (PyData 2012 talk)
Python business intelligence (PyData 2012 talk)Python business intelligence (PyData 2012 talk)
Python business intelligence (PyData 2012 talk)Stefan Urbanek
 
Overcoming the Top Four Challenges to Real‐Time Performance in Large‐Scale, D...
Overcoming the Top Four Challenges to Real‐Time Performance in Large‐Scale, D...Overcoming the Top Four Challenges to Real‐Time Performance in Large‐Scale, D...
Overcoming the Top Four Challenges to Real‐Time Performance in Large‐Scale, D...SL Corporation
 
Android classes-in-pune-syllabus
Android classes-in-pune-syllabusAndroid classes-in-pune-syllabus
Android classes-in-pune-syllabuscncandrwebworld
 
Android training in Nagpur
Android training in Nagpur Android training in Nagpur
Android training in Nagpur letsleadsand
 
Data Access Tech Ed India
Data Access   Tech Ed IndiaData Access   Tech Ed India
Data Access Tech Ed Indiarsnarayanan
 
RDB - Repairable Database Systems
RDB - Repairable Database SystemsRDB - Repairable Database Systems
RDB - Repairable Database SystemsAlexey Smirnov
 
Patterns of Enterprise Application Architecture (by example)
Patterns of Enterprise Application Architecture (by example)Patterns of Enterprise Application Architecture (by example)
Patterns of Enterprise Application Architecture (by example)Paulo Gandra de Sousa
 
Towards Service-based Business Process Modeling, Prototyping and Integration
Towards Service-based Business Process Modeling, Prototyping and IntegrationTowards Service-based Business Process Modeling, Prototyping and Integration
Towards Service-based Business Process Modeling, Prototyping and IntegrationAng Chen
 
Event Driven Architecture
Event Driven ArchitectureEvent Driven Architecture
Event Driven ArchitectureStefan Norberg
 

Semelhante a Prototyping Business Processes (20)

Telecom OSS/BSS Overview
Telecom OSS/BSS OverviewTelecom OSS/BSS Overview
Telecom OSS/BSS Overview
 
Cliser
CliserCliser
Cliser
 
The Art of The Event Streaming Application: Streams, Stream Processors and Sc...
The Art of The Event Streaming Application: Streams, Stream Processors and Sc...The Art of The Event Streaming Application: Streams, Stream Processors and Sc...
The Art of The Event Streaming Application: Streams, Stream Processors and Sc...
 
Kakfa summit london 2019 - the art of the event-streaming app
Kakfa summit london 2019 - the art of the event-streaming appKakfa summit london 2019 - the art of the event-streaming app
Kakfa summit london 2019 - the art of the event-streaming app
 
SETS
SETSSETS
SETS
 
Cross Language Process Model Reuse Po Em2009
Cross Language Process Model Reuse Po Em2009Cross Language Process Model Reuse Po Em2009
Cross Language Process Model Reuse Po Em2009
 
Chapter17
Chapter17Chapter17
Chapter17
 
Slash n: Tech Talk Track 2 – Distributed Transactions in SOA - Yogi Kulkarni,...
Slash n: Tech Talk Track 2 – Distributed Transactions in SOA - Yogi Kulkarni,...Slash n: Tech Talk Track 2 – Distributed Transactions in SOA - Yogi Kulkarni,...
Slash n: Tech Talk Track 2 – Distributed Transactions in SOA - Yogi Kulkarni,...
 
Python business intelligence (PyData 2012 talk)
Python business intelligence (PyData 2012 talk)Python business intelligence (PyData 2012 talk)
Python business intelligence (PyData 2012 talk)
 
Sipoc
SipocSipoc
Sipoc
 
Overcoming the Top Four Challenges to Real‐Time Performance in Large‐Scale, D...
Overcoming the Top Four Challenges to Real‐Time Performance in Large‐Scale, D...Overcoming the Top Four Challenges to Real‐Time Performance in Large‐Scale, D...
Overcoming the Top Four Challenges to Real‐Time Performance in Large‐Scale, D...
 
SOA patterns
SOA patterns SOA patterns
SOA patterns
 
Android classes-in-pune-syllabus
Android classes-in-pune-syllabusAndroid classes-in-pune-syllabus
Android classes-in-pune-syllabus
 
Android training in Nagpur
Android training in Nagpur Android training in Nagpur
Android training in Nagpur
 
Data Access Tech Ed India
Data Access   Tech Ed IndiaData Access   Tech Ed India
Data Access Tech Ed India
 
RDB - Repairable Database Systems
RDB - Repairable Database SystemsRDB - Repairable Database Systems
RDB - Repairable Database Systems
 
PoEAA by Example
PoEAA by ExamplePoEAA by Example
PoEAA by Example
 
Patterns of Enterprise Application Architecture (by example)
Patterns of Enterprise Application Architecture (by example)Patterns of Enterprise Application Architecture (by example)
Patterns of Enterprise Application Architecture (by example)
 
Towards Service-based Business Process Modeling, Prototyping and Integration
Towards Service-based Business Process Modeling, Prototyping and IntegrationTowards Service-based Business Process Modeling, Prototyping and Integration
Towards Service-based Business Process Modeling, Prototyping and Integration
 
Event Driven Architecture
Event Driven ArchitectureEvent Driven Architecture
Event Driven Architecture
 

Mais de Ang Chen

Defence: A multi-dimensional compositional approach for business process (sem...
Defence: A multi-dimensional compositional approach for business process (sem...Defence: A multi-dimensional compositional approach for business process (sem...
Defence: A multi-dimensional compositional approach for business process (sem...Ang Chen
 
A Multi-Dimensional Compositional Approach for Business Process Engineering
A Multi-Dimensional Compositional Approach for Business Process EngineeringA Multi-Dimensional Compositional Approach for Business Process Engineering
A Multi-Dimensional Compositional Approach for Business Process EngineeringAng Chen
 
A Proposition for Business Process Modeling
A Proposition for Business Process ModelingA Proposition for Business Process Modeling
A Proposition for Business Process ModelingAng Chen
 
Synchronized Composition Of Labeled Transition SystemTS
Synchronized Composition Of Labeled Transition SystemTSSynchronized Composition Of Labeled Transition SystemTS
Synchronized Composition Of Labeled Transition SystemTSAng Chen
 
Jsp & Ajax
Jsp & AjaxJsp & Ajax
Jsp & AjaxAng Chen
 
Semantics (requirements) of Business Process
Semantics (requirements) of Business ProcessSemantics (requirements) of Business Process
Semantics (requirements) of Business ProcessAng Chen
 
Business Process Modeling
Business Process ModelingBusiness Process Modeling
Business Process ModelingAng Chen
 
Java Code Generation from Formal Models: The CO-OPN Framework
Java Code Generation from Formal Models: The CO-OPN FrameworkJava Code Generation from Formal Models: The CO-OPN Framework
Java Code Generation from Formal Models: The CO-OPN FrameworkAng Chen
 
Composing Business Process with ID-Net
Composing Business Process with ID-NetComposing Business Process with ID-Net
Composing Business Process with ID-NetAng Chen
 

Mais de Ang Chen (9)

Defence: A multi-dimensional compositional approach for business process (sem...
Defence: A multi-dimensional compositional approach for business process (sem...Defence: A multi-dimensional compositional approach for business process (sem...
Defence: A multi-dimensional compositional approach for business process (sem...
 
A Multi-Dimensional Compositional Approach for Business Process Engineering
A Multi-Dimensional Compositional Approach for Business Process EngineeringA Multi-Dimensional Compositional Approach for Business Process Engineering
A Multi-Dimensional Compositional Approach for Business Process Engineering
 
A Proposition for Business Process Modeling
A Proposition for Business Process ModelingA Proposition for Business Process Modeling
A Proposition for Business Process Modeling
 
Synchronized Composition Of Labeled Transition SystemTS
Synchronized Composition Of Labeled Transition SystemTSSynchronized Composition Of Labeled Transition SystemTS
Synchronized Composition Of Labeled Transition SystemTS
 
Jsp & Ajax
Jsp & AjaxJsp & Ajax
Jsp & Ajax
 
Semantics (requirements) of Business Process
Semantics (requirements) of Business ProcessSemantics (requirements) of Business Process
Semantics (requirements) of Business Process
 
Business Process Modeling
Business Process ModelingBusiness Process Modeling
Business Process Modeling
 
Java Code Generation from Formal Models: The CO-OPN Framework
Java Code Generation from Formal Models: The CO-OPN FrameworkJava Code Generation from Formal Models: The CO-OPN Framework
Java Code Generation from Formal Models: The CO-OPN Framework
 
Composing Business Process with ID-Net
Composing Business Process with ID-NetComposing Business Process with ID-Net
Composing Business Process with ID-Net
 

Último

Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Association for Project Management
 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...pradhanghanshyam7136
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdfQucHHunhnh
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsTechSoup
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxVishalSingh1417
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17Celine George
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhikauryashika82
 
How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17Celine George
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfNirmal Dwivedi
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfagholdier
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentationcamerronhm
 
Magic bus Group work1and 2 (Team 3).pptx
Magic bus Group work1and 2 (Team 3).pptxMagic bus Group work1and 2 (Team 3).pptx
Magic bus Group work1and 2 (Team 3).pptxdhanalakshmis0310
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxDenish Jangid
 
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxSKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxAmanpreet Kaur
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxVishalSingh1417
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfPoh-Sun Goh
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and ModificationsMJDuyan
 
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptxMaritesTamaniVerdade
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxRamakrishna Reddy Bijjam
 

Último (20)

Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...
 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptx
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
 
How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentation
 
Magic bus Group work1and 2 (Team 3).pptx
Magic bus Group work1and 2 (Team 3).pptxMagic bus Group work1and 2 (Team 3).pptx
Magic bus Group work1and 2 (Team 3).pptx
 
Asian American Pacific Islander Month DDSD 2024.pptx
Asian American Pacific Islander Month DDSD 2024.pptxAsian American Pacific Islander Month DDSD 2024.pptx
Asian American Pacific Islander Month DDSD 2024.pptx
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
 
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxSKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptx
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdf
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and Modifications
 
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 

Prototyping Business Processes

  • 1. Prototyping Business Process Ang Chen and Didier Buchs RSP 2006, Crete
  • 2. Outline Business Process Management CO-OPN Language BP Modeling (service, control, data, transactions) Verification and Prototyping Future Works
  • 3. Context Process-Oriented System in Service-Oriented Architecture Domain Specific Languages (DSL) Expressive Power, formal semantics Semantics Basis: e.g. logic, Petri Nets, Register Complexity of Verification
  • 4. Prototyping: Target Environment Environment Distributed Systems (may be embedded) Service Oriented Architecture (SOA) Web Service, XML Grid Computing Target Languages: Java, .NET, BPEL (Business Process Execution Language) etc.
  • 6. Example: E-Shop Acquisition Stock Admin client Providers Sale CRM •Buy •Return •Query Delivery Finance Banking
  • 7. E-Shop: Business Processes order Payment Stock Delivery Send Money Return RMA Material Back Query RMA: Return Materials Authorization
  • 8. E-Shop: supply chain Client Acquisition Stock Admin Acquisition Stock Admin Providers Sale CRM Sale CRM Delivery Finance Banking Delivery Finance Banking
  • 9. Principe of BPM Affect the software development process Separate the development of Business Processes and Business Process Management System Business Processes: The softwares to be developed BPMS: The infrastructure
  • 11. COOPN Fire Concurrent ph_ Object-Oriented in1_:H po_ out_:H2O Petri Nets in2_:O this=Self::Fire With this.out water:: H, O, H2O are Algebraic ph h1, ph h1, po o1 -> Abstract Data Types variables water is a value (generator) h1,h2: H of ADT H2O o1: O
  • 12. COOPN Elements Token ADT black token: @ place/transition nets data ADTs: boolean, natural etc. container ADTs: pair, list etc. colored Petri nets ADTs Objects object nets Object object reference reference nets mobility of objects Place Context Transaction Method Gate can be contains
  • 13. Algebraic Abstract Data Type Generic Abstract Adt ListStructure(Elem); ... Immutable entities Interface Generators Use generator and axiomatic [] : -> list; _ ' _ : elem, list -> list; rules to construct data type _ | _ : list, list -> list; ;; Specific elements Axioms can be used to infer Operations head _ : list -> elem; properties on data, e.g. tail _ : list -> list; commutativity and pick _ from _ : natural, list -> list; drop _ from _ : natural, list -> list; associativity rules reverse _ : list -> list; ... End ListStructure;
  • 14. COOPN: Transactions T1, T2 ∈Trans, where Trans is the set ACID Transactions of transactions in a COOPN system with different rules Composition: T1 With T2 ∈Trans Parallel: // Sequential: .. T1 // T2 ∈Trans Alternative: | T1 .. T2 ∈Trans T1 | T2 ∈Trans
  • 15. COOPN: Overview Declarative, formal specification based on Petri Net semantics State computation uses logical inference Forward chaining: firing transitions Backtracking: transaction resolution Separation of Data and Behavior Context coordination, Transaction semantics
  • 16. Modeling Business Process
  • 17. Dimensionality of Business Process Data Service Other dimensions: Resources, Organizational Control
  • 18. E-Shop: Service View I Client Acquisition Stock Admin Acquisition Stock Admin Providers Sale CRM Sale CRM Delivery Finance Banking Delivery Finance Banking Sub-systems are connected via services
  • 19. E-Shop: Service View II Sale department provides three Sale •Order(...) services to clients • Return(...) client Department •Query(...) Each process is a service for clients
  • 20. E-Shop: Service View III client Execution Order Return Query process environment: SOA deployment process The underlying BPMS execution systems provide services enactment services to business interactions process management Sale Stock CRM etc. Underlying systems system
  • 21. Control Flow Cases Handling System Workflow Patterns: Split, Join, OR, AND, Merge etc.
  • 22. Patterns of control flow A B B sequence A MUL C B Multi-Choice A AND A C AND split DIS C B B Discriminator A XOR C B XOR Split A A start C end E AND C B D AND join Interleaved parallel routing A B XOR C A XOR AND D B XOR join C XOR Split AND join process not well-formed
  • 23. E-Shop: Control-Flow View Activity : Payment by Credit Card Check credit card activity <id,accepted> <id,payment> XOR-SPLIT <id,rejected> order request response Payment Stock Delivery Credit Card Checking Process or Web Service Send Money Return RMA Material Back Query RMA: Return Materials Authorization
  • 24. Data Modeling Implement XML algebra with ADT Define data types representing XML structure: tree, set, elements, attributes. Operations on the data: add, modify, remove elements or attributes Operation on the structure: schema algebra and validation
  • 25. E-Shop: Data View Client ID Payment Product IDs Shipping ID Order Paid Shipping Shipped Return Request Returned state change used by (data dependence) Can be modeled by Colored tokens, Automate, XML algebra
  • 27. Process Verification Advantages of formal and Petri nets based semantics High-level properties can be mapped into Petri Nets properties Several techniques are possibles: model checking, automatic test generation, simulation.
  • 28. Properties of Petri Nets Liveness: of PN, of an initial marking Deadlock free: of PN, of an initial marking Soundness
  • 29. Properties of BP A BP instance FINALLY terminates (absence of deadlock in PN): valid input tokens will FINALLY arrive the ending state. Multiple ending states can exist in a BP definition.
  • 30. Properties of BP If a BP instance terminates, there should be no hanging tasks for this instance (soundness): no dead tokens.
  • 31. Properties of BP When several BPs are connected, no cycle dependence should exist. E.g. to get a job, you must have work experiences; to have work experiences, you must get a job.
  • 32. Characteristics of Activity A preliminary work for verification, basic classifications: Source (creation point of instance or data) Sink (end point of instance or data) Filter/Join (mutation of instance or data) Composition of these activities
  • 33. Transactional BP Modeling transaction coordinators which handle different transactions by implementing transaction protocols Building blocks COOPN modules representing activities COOPN modules encoding transaction states With, //, .. , |
  • 34. Properties of TBPs Success guarantee: if a TBP succeeds, everything should have done successfully. Rollback and compensation guarantee: if it does not succeed, rollback and compensation will be done, as “nothing happens”. From one consistent state to another consistent state. e.g. the philosopher problems.
  • 35. Prototyping BP COOPN Java Process Java ADT ADT Instance impl. XML message External Java Data Data Data Type Type Activity Class JavaBean Process Context Services Transaction Endpoint Action Transaction Object Event Method Java Method Atomic Gate Java Event Transaction configurable modeling transformation
  • 36. Integrating Prototypes Process controller prototype Client delivery credit card Enactment service service system Shopping Process send <id, order> in_ order order ask payement askPayment id input credit card out_ verify credit card <id, transaction> in_ credit card valid validPayment id transaction ask delivery askDelivery id out_ in_ <id, delivery> confirm delivery confirmDelivery id delivery delivered id
  • 37. The framework Business Process integration Remote UI Process instance system ERP / user Data Activity IS Atomic Transaction Service Interface Process Event Executable model (PSM) Action embedded controller Java ADT impl. modeling Java Data Type JavaBeans Java Event n atio Transaction Object COOPN model (PIM) rm s fo Java Method External Data Type n tra web service ADT Class Context Gate Method Configuration Class Transaction (Mapping rules) Library verification validation simulation refinement
  • 39. Conclusion Most modeling work are done, e.g. perspectives: Control Data Service Transaction Time to propose an XML-based Domain Specific Language
  • 40. Future Works Investigation on the constraints between the dimensions Service Oriented Business Process Specifications (SO-BPS) Verification and model checking techniques Tools supports
  • 41. Thank you for your attention