SlideShare a Scribd company logo
Composing Business
Process with ID-Net
       Ang Chen and Didier Buchs

  System Modeling and Verification Group

      PNSE’07 Workshop, Juin 25-26, Siedlce, Poland
Outline

                  • Business Process (BP) Modeling
                  • ID-Net: Motivations
                  • ID-Net: Semantics
                  • Model Composition with ID-Net
                  • Example
PNSE 2007 Workshop, Siedlce, Poland      2           A.Chen
BP Modeling: Elements
                Process                                         production
                                                                 schedule
                                      receive     collect                      send
                                       order     payment                     invoice
                                                                 shipping
                                                                 schedule



                Each color represents an organization

                 Activity

                 Flow

                 Participant


PNSE 2007 Workshop, Siedlce, Poland                         3                          A.Chen
BP Modeling: Control-
                          Flow
                                                                           production
                                                                            schedule
           Informal                    receive          collect                                      send
          description                   oder           payment                                     invoice
                                                                             shipping
                                                                             schedule

                                                                             shipping
                                                        order                schedule
          A Possible                                                                       create
                                      receive                     schedule                invoice invoice
         Control-Flow
                                       order                                                                   send
                                                                                                             invoice
                                       collect
                                      payment
                                                       payment               production
                                                                              schedule

         Receive order and collect payment can be parallel or
         sequential, depending on the interpretation of the informal
         model. parallel might be more flexible in this case

PNSE 2007 Workshop, Siedlce, Poland                                    4                                               A.Chen
BP Modeling: Data
                                   Model
                                                                                 production
                                                                                  schedule
                                      receive           collect                                          send
                                       oder            payment                                         invoice
                                                                                  shipping
                                                                                  schedule



               Data Model

                                                0..*   1                     1                0..1
                                       Item                Order                                      Shipping
                                                                   1         1
                                                                                              0..1
                                                                  0..*                               Production
                                                           Payment




PNSE 2007 Workshop, Siedlce, Poland                                      5                                        A.Chen
BP Modeling:
        Control-Flow Model
                                               Dimensions
                                                     shipping
                                                     schedule
                               order
                                                                   create
                                          schedule
        receive                                                   invoice   invoice
         order
                                                                                              send
                                                                                            invoice
        collect
       payment


                                                                                                      ?   Executable
                              payment                production
                                                      schedule
                                                                                                          Workflow

                                                     ?                             ?
         Data Model
                       0..*           1               1                     0..1
             Item                         Order                                        Shipping
                                                1     1
                                                                            0..1
                                              0..*                                    Production
                                          Payment


PNSE 2007 Workshop, Siedlce, Poland                                                   6                                A.Chen
BP Modeling:
                                      Approaches
                  •       (Explicit) State-Based Model: Petri Net and its
                          variances, e.g. Workflow Nets, CPN
                  •       Service-Oriented: service composition, e.g.
                          BPEL
                  •       Metamodel-Based with
                        •      Implicit state

                        •      Explicit state (combined with State-Based
                               semantics)

PNSE 2007 Workshop, Siedlce, Poland                 7                       A.Chen
The CPN Solution
                                                                            shipping
                                             order                          schedule
                                                            schedule
                                                        a              c


                                                        b           d
                                            payment                        production
                                                                            schedule
                                      The transition schedule uses a and b to produce c and d

                                                      (c, d)=schedule(a,b)
                                The relations between a,b,c,d should be defined in the PN
                             Forced to use the built-in data modeling mechanism (CPN ML)

                            SE: strong coupling between PN structure and data!

PNSE 2007 Workshop, Siedlce, Poland                             8                               A.Chen
BP Modeling and
                                       Development
                          From SE’s point of view:

                  •       The data modeling power is enough (e.g. with tuples), but
                          impractical in real BP development

                  •       Structure and data of BP are too constrained each other

                  •       Built-in, inflexible operational semantics

                  •       CPN is designed to analyze and verify models, not for BP
                          development

                  •       Same problem for other PN variances


PNSE 2007 Workshop, Siedlce, Poland                  9                                A.Chen
ID-Net: Hook Points
                                                   T
                                                                            shipping
              order                        a               c                schedule
                                                                                            Semantics is
                                                                           production       operationally
            payment                        b              d                 schedule    different with CPN
                                      T.before            T.after :
                                                 T.with
    Hook points (as in AOP)

         T.before :                   Select tokens from pre-set places (access the contents of places)

            T.with :                  Working with selected resources (access selected tokens)

           T.after :                  Working with produced resources (access post-places)
        T.around :                    Customized semantics for T



PNSE 2007 Workshop, Siedlce, Poland                                   10                                     A.Chen
ID-Net: IDs
                                                             P3:           order
                              P1:               T
                                                           shipping
                            Order
                                                           schedule        payment

                                                             P4:           shipping schedule
                              P2:                          production
                           Payment                                         production schedule
                                                            schedule




                                      Places are typed by the kind of ID




PNSE 2007 Workshop, Siedlce, Poland                   11                                         A.Chen
ID-Net: IDs (cont.)
                                                          P3:        order
                           P1:              T
                                                        shipping
                         Order
                                                        schedule     payment

                                                          P4:        shipping schedule
                           P2:                          production
                        Payment                                      production schedule
                                                         schedule




                                       Tokens are IDs referring to
                                      (concrete or not) resources



PNSE 2007 Workshop, Siedlce, Poland                12                                      A.Chen
IDtifier
                  •       ID is independent of modeling formalism

                  •       Presented in many kinds of applications, e.g.
                          security (keys), Web (e.g. URLs, cookies)

                  •       For BP Modeling, ID is the key to:
                        •      symbolically represent the resource (modeling phase)

                        •      identify a concrete resource (implementation phase)

                        •      support data model (e.g. candidate key)


PNSE 2007 Workshop, Siedlce, Poland                  13                               A.Chen
ID-Net
                 1.   Tokens are typed IDs to identify the resources
                 2.   Places are typed “IDs Holder”
                 3.   The ID-Net model controls the visibility of resources
                      using the classical Petri Net semantics
                 4.   Semantics of transitions can be extended by
                      composing other models with ID-Net model
                 5.   External models produce and use the IDs to do specific
                      work


PNSE 2007 Workshop, Siedlce, Poland            14                             A.Chen
ID-Net + Data Model:
                            Type Mapping
                                                                  shipping
                                              order               schedule
                                                                                create
                          receive                      schedule                invoice invoice
                           order                                                                        send
                                                                                                      invoice
                          collect
                         payment
                                             payment              production
                                                                   schedule




                                               0..*      1                1                0..1
                                      Item                   Order                                 Shipping
                                                                    1     1
                                                                                           0..1
                                                                  0..*                            Production
                                                             Payment




PNSE 2007 Workshop, Siedlce, Poland                                      15                                     A.Chen
Data Manipulation
                              Operations (DMOs)
                  •       DMO’s are derived from the metamodel (implied by the data
                          semantics of metamodel)

                  •       In term of DB: CRUD (Create, Read, Update, Delete) operations

                                       DMOs               Pseudo code:

                                      Entity Creation     ItemID item_id= Item.Create(name, price);

                                                          OrderID order_id= Order.Create();
                                  Relationship Creation   setRelation(order_id, item_id, “has”)
                                                          setAttribute(order_id, aDate, ”date”,);
                                  Entity Removal          Item.Delete(item_id);

                                  Relationship Removal    RemoveRelation(order_id, item_id, “has”);




PNSE 2007 Workshop, Siedlce, Poland                        16                                         A.Chen
DMOs: Motivation
                  •       Real-world BPs are constructed on and supported
                          by DB systems

                  •       Activities of BPs are composed of data manipulation
                          (in memory)and data persistence(with DBMS)

                  •       Data manipulation are relied principally the domain
                          data model

                  •       DMOs are services provided by DBMS

                  •       ID is the key to access the data


PNSE 2007 Workshop, Siedlce, Poland              17                             A.Chen
Model Composition
                  •       Specify the composition: synchronize the PN
                          transition with the DMOs (similar to service
                          composition)
                  •       Using the temporal operators of AOP to
                          compose DMOs with the control-flow: before,
                          after, around
                  •       Using synchronization operator // (with) to
                          create atomic actions (from CO-OPN)

PNSE 2007 Workshop, Siedlce, Poland           18                         A.Chen
Example:
                       ID -> Data Instances
                         P1:                     T                        P3:                payment
                       order                                            shipping
                                                                        schedule             order

                         P2:                                              P4:                shipping
                      payment
                                                                    production
                                                                                             production
                                                                     schedule




                                             1       0..1
                                 Order                       Shipping
                                       1     1                                        IDs refer to
                                                     0..1
                                      0..*
                                                            Production             instances of data
                                 Payment




PNSE 2007 Workshop, Siedlce, Poland                         19                                            A.Chen
Example:
                       Synchronized function
                      P1:
                                       T                            P3:                      payment
                   payment
                                                               shipping
                                                                                            order

                      P2:                                           P4:                     shipping
                                                               production
                     order
                                                                                             production




                                                    synchronized function: M with T
                                      P1.take(   ); P2.take(   );                 reserve tokens
    Executable, composed model
                                      payment=getPaymentFromID( );                access resources
                                      order=getOrdersFromID( );
    M with T uses selected            if (payment.clientID != order.clientID) {
    tokens as inputs                      P1.release( ); P2.release( );            check firability
                                          throws NotFirableException()
                                      }


PNSE 2007 Workshop, Siedlce, Poland                     20                                                A.Chen
Example:
                       Synchronized function
                      P1:
                                       T                        P3:                            payment
                   payment
                                                              shipping
                                                                                               order

                      P2:                                       P4:                            shipping
                                                              production
                     order
                                                                                               production




                                                   synchronized function: M with T

    Executable, composed model        ...
                                      date = estimateDeliveryDate(order);     external stuff

                                        =Shipping.Create(date, dest);
                                                                                 DMOs
    M uses the IDs to do                =Production.Create(date, orderSet);
    anything it wants, and            P1.remove( ); P2.remove( );
    produces post-tokens
                                      P3.put( ); P4.put( );           produce post-conditions
PNSE 2007 Workshop, Siedlce, Poland                    21                                                   A.Chen
Composed Semantics
                      P1:                                                                  payment
                                          T                      P3:
                   payment
                                                               shipping
                                                                                           order

                      P2:                                        P4:                       shipping
                                                               production
                     order
                                                                                            production




                                                      synchronized function: M with T
                                      P1.take( ); P2.take( );                         reserve tokens
  Executable, composed                payment=getPaymentFromID( );
                                                                                       check firability
                                      order=getOrdersFromID( );
  model                               if (payment.clientID != order.clientID) throws NotFirableException()
                                      {P1.release( ); P2.release( ); }
                                      ...
                                      date = estimateDeliveryDate(order);               external stuff
                                          =Shipping.Create(date, dest);
                                          =Production.Create(date, orderSet);
                                      P1.remove( ); P2.remove( );                produce post-conditions
                                      P3.put( ); P4.put( 22);
PNSE 2007 Workshop, Siedlce, Poland                                                                          A.Chen
ID-Net in BP
                                      Development
                                      ID-Net                     Data
                                       Model                     Model       Model-Based
                                                                               Iterative
                                       V1                         V1         Development
                                                                               Process

                                       V2                         V2
                                                   Model
                                                Reconciliation


                                       V3                         V3

                                                 Model                   Executable
                                               Composition               Workflow

PNSE 2007 Workshop, Siedlce, Poland                                23                      A.Chen
Framework
       Control-Flow Model
                                                   shipping
                           order                   schedule
                                                                 create
       receive                         schedule                 invoice invoice
        order                                                                            send
                                                                                       invoice
       collect
      payment
                          payment                  production
                                                    schedule




                                                                                                        Model       Executable
                                       Composition
                                                                                                      Composition   Workflow
                                       specification

         Data Model
                   0..*            1                  1                   0..1
           Item                         Order                                      Shipping
                                             1        1
                                                                          0..1
                                            0..*
                                                                                  Production
                                        Payment




PNSE 2007 Workshop, Siedlce, Poland                                                              24                              A.Chen
Conclusion
                  •       ID-Net has flexible and extensible semantics:
                        •      it handles the tokens as the classical PN

                        •      the external models will produce and interpret the values
                               tokens

                        •      the composition specifies the interplay between ID-Net
                               and other models

                  •       BPs can be developed in an iterative and flexible
                          way with the framework using ID-Net


PNSE 2007 Workshop, Siedlce, Poland                    25                                  A.Chen
Research Perspectives
                  • Relations between the functional
                          dependency of data and dependency of
                          activities in workflow
                  • How the composed external model
                          interprets the properties of an ID-Net
                  • Hiding information during the design of BP
                          service (issues in cross-organizational BPs)


PNSE 2007 Workshop, Siedlce, Poland          26                          A.Chen
ID-Net Semantics
                Preliminary operational                                    P1           T            P2
                       semantics

             A Place is a multi-set which supports the
             following operations:
              •take(token): reserve token
              •release(token): release token (inverse of take)         T will be evaluated successfully if each
              •put(token): put token into the place                   pre-set place provides at least one token
              •remove(token): remove token from the place

       The steps can                                             Firing a transition consists of:
        be hooked                     before: [0..1]              1. select tokens in pre-set places

                                                                  2. reserve pre-condition tokens temporally
                                      with: [2..4]                3. evaluate T (if failed, release reserved
           around: [0..6]
                                                                  tokens)
                                      after: >5                   4. remove reserved tokens

                                                                  5. put post-conditions into post-set places




PNSE 2007 Workshop, Siedlce, Poland                              27                                               A.Chen

More Related Content

More from Ang Chen

Synchronized Composition Of Labeled Transition SystemTS
Synchronized Composition Of Labeled Transition SystemTSSynchronized Composition Of Labeled Transition SystemTS
Synchronized Composition Of Labeled Transition SystemTS
Ang Chen
 
Jsp & Ajax
Jsp & AjaxJsp & Ajax
Jsp & Ajax
Ang Chen
 
Semantics (requirements) of Business Process
Semantics (requirements) of Business ProcessSemantics (requirements) of Business Process
Semantics (requirements) of Business Process
Ang Chen
 
Business Process Modeling
Business Process ModelingBusiness Process Modeling
Business Process Modeling
Ang 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 Framework
Ang Chen
 
Prototyping Business Processes
Prototyping Business ProcessesPrototyping Business Processes
Prototyping Business Processes
Ang Chen
 
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
Ang Chen
 

More from Ang Chen (7)

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
 
Prototyping Business Processes
Prototyping Business ProcessesPrototyping Business Processes
Prototyping Business Processes
 
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
 

Recently uploaded

DRUGS AND ITS classification slide share
DRUGS AND ITS classification slide shareDRUGS AND ITS classification slide share
DRUGS AND ITS classification slide share
taiba qazi
 
How to Add Chatter in the odoo 17 ERP Module
How to Add Chatter in the odoo 17 ERP ModuleHow to Add Chatter in the odoo 17 ERP Module
How to Add Chatter in the odoo 17 ERP Module
Celine George
 
The basics of sentences session 5pptx.pptx
The basics of sentences session 5pptx.pptxThe basics of sentences session 5pptx.pptx
The basics of sentences session 5pptx.pptx
heathfieldcps1
 
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
MysoreMuleSoftMeetup
 
The Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official PublicationThe Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official Publication
Delapenabediema
 
South African Journal of Science: Writing with integrity workshop (2024)
South African Journal of Science: Writing with integrity workshop (2024)South African Journal of Science: Writing with integrity workshop (2024)
South African Journal of Science: Writing with integrity workshop (2024)
Academy of Science of South Africa
 
Digital Artifact 1 - 10VCD Environments Unit
Digital Artifact 1 - 10VCD Environments UnitDigital Artifact 1 - 10VCD Environments Unit
Digital Artifact 1 - 10VCD Environments Unit
chanes7
 
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...
Dr. Vinod Kumar Kanvaria
 
Digital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental DesignDigital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental Design
amberjdewit93
 
Top five deadliest dog breeds in America
Top five deadliest dog breeds in AmericaTop five deadliest dog breeds in America
Top five deadliest dog breeds in America
Bisnar Chase Personal Injury Attorneys
 
PCOS corelations and management through Ayurveda.
PCOS corelations and management through Ayurveda.PCOS corelations and management through Ayurveda.
PCOS corelations and management through Ayurveda.
Dr. Shivangi Singh Parihar
 
Advantages and Disadvantages of CMS from an SEO Perspective
Advantages and Disadvantages of CMS from an SEO PerspectiveAdvantages and Disadvantages of CMS from an SEO Perspective
Advantages and Disadvantages of CMS from an SEO Perspective
Krisztián Száraz
 
Delivering Micro-Credentials in Technical and Vocational Education and Training
Delivering Micro-Credentials in Technical and Vocational Education and TrainingDelivering Micro-Credentials in Technical and Vocational Education and Training
Delivering Micro-Credentials in Technical and Vocational Education and Training
AG2 Design
 
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
Nguyen Thanh Tu Collection
 
A Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptxA Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptx
thanhdowork
 
Landownership in the Philippines under the Americans-2-pptx.pptx
Landownership in the Philippines under the Americans-2-pptx.pptxLandownership in the Philippines under the Americans-2-pptx.pptx
Landownership in the Philippines under the Americans-2-pptx.pptx
JezreelCabil2
 
TESDA TM1 REVIEWER FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...
TESDA TM1 REVIEWER  FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...TESDA TM1 REVIEWER  FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...
TESDA TM1 REVIEWER FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...
EugeneSaldivar
 
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdfANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
Priyankaranawat4
 
RPMS TEMPLATE FOR SCHOOL YEAR 2023-2024 FOR TEACHER 1 TO TEACHER 3
RPMS TEMPLATE FOR SCHOOL YEAR 2023-2024 FOR TEACHER 1 TO TEACHER 3RPMS TEMPLATE FOR SCHOOL YEAR 2023-2024 FOR TEACHER 1 TO TEACHER 3
RPMS TEMPLATE FOR SCHOOL YEAR 2023-2024 FOR TEACHER 1 TO TEACHER 3
IreneSebastianRueco1
 
Digital Artifact 2 - Investigating Pavilion Designs
Digital Artifact 2 - Investigating Pavilion DesignsDigital Artifact 2 - Investigating Pavilion Designs
Digital Artifact 2 - Investigating Pavilion Designs
chanes7
 

Recently uploaded (20)

DRUGS AND ITS classification slide share
DRUGS AND ITS classification slide shareDRUGS AND ITS classification slide share
DRUGS AND ITS classification slide share
 
How to Add Chatter in the odoo 17 ERP Module
How to Add Chatter in the odoo 17 ERP ModuleHow to Add Chatter in the odoo 17 ERP Module
How to Add Chatter in the odoo 17 ERP Module
 
The basics of sentences session 5pptx.pptx
The basics of sentences session 5pptx.pptxThe basics of sentences session 5pptx.pptx
The basics of sentences session 5pptx.pptx
 
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
 
The Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official PublicationThe Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official Publication
 
South African Journal of Science: Writing with integrity workshop (2024)
South African Journal of Science: Writing with integrity workshop (2024)South African Journal of Science: Writing with integrity workshop (2024)
South African Journal of Science: Writing with integrity workshop (2024)
 
Digital Artifact 1 - 10VCD Environments Unit
Digital Artifact 1 - 10VCD Environments UnitDigital Artifact 1 - 10VCD Environments Unit
Digital Artifact 1 - 10VCD Environments Unit
 
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...
 
Digital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental DesignDigital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental Design
 
Top five deadliest dog breeds in America
Top five deadliest dog breeds in AmericaTop five deadliest dog breeds in America
Top five deadliest dog breeds in America
 
PCOS corelations and management through Ayurveda.
PCOS corelations and management through Ayurveda.PCOS corelations and management through Ayurveda.
PCOS corelations and management through Ayurveda.
 
Advantages and Disadvantages of CMS from an SEO Perspective
Advantages and Disadvantages of CMS from an SEO PerspectiveAdvantages and Disadvantages of CMS from an SEO Perspective
Advantages and Disadvantages of CMS from an SEO Perspective
 
Delivering Micro-Credentials in Technical and Vocational Education and Training
Delivering Micro-Credentials in Technical and Vocational Education and TrainingDelivering Micro-Credentials in Technical and Vocational Education and Training
Delivering Micro-Credentials in Technical and Vocational Education and Training
 
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
 
A Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptxA Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptx
 
Landownership in the Philippines under the Americans-2-pptx.pptx
Landownership in the Philippines under the Americans-2-pptx.pptxLandownership in the Philippines under the Americans-2-pptx.pptx
Landownership in the Philippines under the Americans-2-pptx.pptx
 
TESDA TM1 REVIEWER FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...
TESDA TM1 REVIEWER  FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...TESDA TM1 REVIEWER  FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...
TESDA TM1 REVIEWER FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...
 
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdfANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
 
RPMS TEMPLATE FOR SCHOOL YEAR 2023-2024 FOR TEACHER 1 TO TEACHER 3
RPMS TEMPLATE FOR SCHOOL YEAR 2023-2024 FOR TEACHER 1 TO TEACHER 3RPMS TEMPLATE FOR SCHOOL YEAR 2023-2024 FOR TEACHER 1 TO TEACHER 3
RPMS TEMPLATE FOR SCHOOL YEAR 2023-2024 FOR TEACHER 1 TO TEACHER 3
 
Digital Artifact 2 - Investigating Pavilion Designs
Digital Artifact 2 - Investigating Pavilion DesignsDigital Artifact 2 - Investigating Pavilion Designs
Digital Artifact 2 - Investigating Pavilion Designs
 

Composing Business Process with ID-Net

  • 1. Composing Business Process with ID-Net Ang Chen and Didier Buchs System Modeling and Verification Group PNSE’07 Workshop, Juin 25-26, Siedlce, Poland
  • 2. Outline • Business Process (BP) Modeling • ID-Net: Motivations • ID-Net: Semantics • Model Composition with ID-Net • Example PNSE 2007 Workshop, Siedlce, Poland 2 A.Chen
  • 3. BP Modeling: Elements Process production schedule receive collect send order payment invoice shipping schedule Each color represents an organization Activity Flow Participant PNSE 2007 Workshop, Siedlce, Poland 3 A.Chen
  • 4. BP Modeling: Control- Flow production schedule Informal receive collect send description oder payment invoice shipping schedule shipping order schedule A Possible create receive schedule invoice invoice Control-Flow order send invoice collect payment payment production schedule Receive order and collect payment can be parallel or sequential, depending on the interpretation of the informal model. parallel might be more flexible in this case PNSE 2007 Workshop, Siedlce, Poland 4 A.Chen
  • 5. BP Modeling: Data Model production schedule receive collect send oder payment invoice shipping schedule Data Model 0..* 1 1 0..1 Item Order Shipping 1 1 0..1 0..* Production Payment PNSE 2007 Workshop, Siedlce, Poland 5 A.Chen
  • 6. BP Modeling: Control-Flow Model Dimensions shipping schedule order create schedule receive invoice invoice order send invoice collect payment ? Executable payment production schedule Workflow ? ? Data Model 0..* 1 1 0..1 Item Order Shipping 1 1 0..1 0..* Production Payment PNSE 2007 Workshop, Siedlce, Poland 6 A.Chen
  • 7. BP Modeling: Approaches • (Explicit) State-Based Model: Petri Net and its variances, e.g. Workflow Nets, CPN • Service-Oriented: service composition, e.g. BPEL • Metamodel-Based with • Implicit state • Explicit state (combined with State-Based semantics) PNSE 2007 Workshop, Siedlce, Poland 7 A.Chen
  • 8. The CPN Solution shipping order schedule schedule a c b d payment production schedule The transition schedule uses a and b to produce c and d (c, d)=schedule(a,b) The relations between a,b,c,d should be defined in the PN Forced to use the built-in data modeling mechanism (CPN ML) SE: strong coupling between PN structure and data! PNSE 2007 Workshop, Siedlce, Poland 8 A.Chen
  • 9. BP Modeling and Development From SE’s point of view: • The data modeling power is enough (e.g. with tuples), but impractical in real BP development • Structure and data of BP are too constrained each other • Built-in, inflexible operational semantics • CPN is designed to analyze and verify models, not for BP development • Same problem for other PN variances PNSE 2007 Workshop, Siedlce, Poland 9 A.Chen
  • 10. ID-Net: Hook Points T shipping order a c schedule Semantics is production operationally payment b d schedule different with CPN T.before T.after : T.with Hook points (as in AOP) T.before : Select tokens from pre-set places (access the contents of places) T.with : Working with selected resources (access selected tokens) T.after : Working with produced resources (access post-places) T.around : Customized semantics for T PNSE 2007 Workshop, Siedlce, Poland 10 A.Chen
  • 11. ID-Net: IDs P3: order P1: T shipping Order schedule payment P4: shipping schedule P2: production Payment production schedule schedule Places are typed by the kind of ID PNSE 2007 Workshop, Siedlce, Poland 11 A.Chen
  • 12. ID-Net: IDs (cont.) P3: order P1: T shipping Order schedule payment P4: shipping schedule P2: production Payment production schedule schedule Tokens are IDs referring to (concrete or not) resources PNSE 2007 Workshop, Siedlce, Poland 12 A.Chen
  • 13. IDtifier • ID is independent of modeling formalism • Presented in many kinds of applications, e.g. security (keys), Web (e.g. URLs, cookies) • For BP Modeling, ID is the key to: • symbolically represent the resource (modeling phase) • identify a concrete resource (implementation phase) • support data model (e.g. candidate key) PNSE 2007 Workshop, Siedlce, Poland 13 A.Chen
  • 14. ID-Net 1. Tokens are typed IDs to identify the resources 2. Places are typed “IDs Holder” 3. The ID-Net model controls the visibility of resources using the classical Petri Net semantics 4. Semantics of transitions can be extended by composing other models with ID-Net model 5. External models produce and use the IDs to do specific work PNSE 2007 Workshop, Siedlce, Poland 14 A.Chen
  • 15. ID-Net + Data Model: Type Mapping shipping order schedule create receive schedule invoice invoice order send invoice collect payment payment production schedule 0..* 1 1 0..1 Item Order Shipping 1 1 0..1 0..* Production Payment PNSE 2007 Workshop, Siedlce, Poland 15 A.Chen
  • 16. Data Manipulation Operations (DMOs) • DMO’s are derived from the metamodel (implied by the data semantics of metamodel) • In term of DB: CRUD (Create, Read, Update, Delete) operations DMOs Pseudo code: Entity Creation ItemID item_id= Item.Create(name, price); OrderID order_id= Order.Create(); Relationship Creation setRelation(order_id, item_id, “has”) setAttribute(order_id, aDate, ”date”,); Entity Removal Item.Delete(item_id); Relationship Removal RemoveRelation(order_id, item_id, “has”); PNSE 2007 Workshop, Siedlce, Poland 16 A.Chen
  • 17. DMOs: Motivation • Real-world BPs are constructed on and supported by DB systems • Activities of BPs are composed of data manipulation (in memory)and data persistence(with DBMS) • Data manipulation are relied principally the domain data model • DMOs are services provided by DBMS • ID is the key to access the data PNSE 2007 Workshop, Siedlce, Poland 17 A.Chen
  • 18. Model Composition • Specify the composition: synchronize the PN transition with the DMOs (similar to service composition) • Using the temporal operators of AOP to compose DMOs with the control-flow: before, after, around • Using synchronization operator // (with) to create atomic actions (from CO-OPN) PNSE 2007 Workshop, Siedlce, Poland 18 A.Chen
  • 19. Example: ID -> Data Instances P1: T P3: payment order shipping schedule order P2: P4: shipping payment production production schedule 1 0..1 Order Shipping 1 1 IDs refer to 0..1 0..* Production instances of data Payment PNSE 2007 Workshop, Siedlce, Poland 19 A.Chen
  • 20. Example: Synchronized function P1: T P3: payment payment shipping order P2: P4: shipping production order production synchronized function: M with T P1.take( ); P2.take( ); reserve tokens Executable, composed model payment=getPaymentFromID( ); access resources order=getOrdersFromID( ); M with T uses selected if (payment.clientID != order.clientID) { tokens as inputs P1.release( ); P2.release( ); check firability throws NotFirableException() } PNSE 2007 Workshop, Siedlce, Poland 20 A.Chen
  • 21. Example: Synchronized function P1: T P3: payment payment shipping order P2: P4: shipping production order production synchronized function: M with T Executable, composed model ... date = estimateDeliveryDate(order); external stuff =Shipping.Create(date, dest); DMOs M uses the IDs to do =Production.Create(date, orderSet); anything it wants, and P1.remove( ); P2.remove( ); produces post-tokens P3.put( ); P4.put( ); produce post-conditions PNSE 2007 Workshop, Siedlce, Poland 21 A.Chen
  • 22. Composed Semantics P1: payment T P3: payment shipping order P2: P4: shipping production order production synchronized function: M with T P1.take( ); P2.take( ); reserve tokens Executable, composed payment=getPaymentFromID( ); check firability order=getOrdersFromID( ); model if (payment.clientID != order.clientID) throws NotFirableException() {P1.release( ); P2.release( ); } ... date = estimateDeliveryDate(order); external stuff =Shipping.Create(date, dest); =Production.Create(date, orderSet); P1.remove( ); P2.remove( ); produce post-conditions P3.put( ); P4.put( 22); PNSE 2007 Workshop, Siedlce, Poland A.Chen
  • 23. ID-Net in BP Development ID-Net Data Model Model Model-Based Iterative V1 V1 Development Process V2 V2 Model Reconciliation V3 V3 Model Executable Composition Workflow PNSE 2007 Workshop, Siedlce, Poland 23 A.Chen
  • 24. Framework Control-Flow Model shipping order schedule create receive schedule invoice invoice order send invoice collect payment payment production schedule Model Executable Composition Composition Workflow specification Data Model 0..* 1 1 0..1 Item Order Shipping 1 1 0..1 0..* Production Payment PNSE 2007 Workshop, Siedlce, Poland 24 A.Chen
  • 25. Conclusion • ID-Net has flexible and extensible semantics: • it handles the tokens as the classical PN • the external models will produce and interpret the values tokens • the composition specifies the interplay between ID-Net and other models • BPs can be developed in an iterative and flexible way with the framework using ID-Net PNSE 2007 Workshop, Siedlce, Poland 25 A.Chen
  • 26. Research Perspectives • Relations between the functional dependency of data and dependency of activities in workflow • How the composed external model interprets the properties of an ID-Net • Hiding information during the design of BP service (issues in cross-organizational BPs) PNSE 2007 Workshop, Siedlce, Poland 26 A.Chen
  • 27. ID-Net Semantics Preliminary operational P1 T P2 semantics A Place is a multi-set which supports the following operations: •take(token): reserve token •release(token): release token (inverse of take) T will be evaluated successfully if each •put(token): put token into the place pre-set place provides at least one token •remove(token): remove token from the place The steps can Firing a transition consists of: be hooked before: [0..1] 1. select tokens in pre-set places 2. reserve pre-condition tokens temporally with: [2..4] 3. evaluate T (if failed, release reserved around: [0..6] tokens) after: >5 4. remove reserved tokens 5. put post-conditions into post-set places PNSE 2007 Workshop, Siedlce, Poland 27 A.Chen