Semantic Description of Distributed Business Processes

Similar documents
A Framework for the Semantics of Behavioral Contracts

Service Oriented Architecture

Ontological Identification of Patterns for Choreographing Business Workflow

Automated Program Behavior Analysis

Service-Oriented Architectures

Combining SAWSDL, OWL DL and UDDI for Semantically Enhanced Web Service Discovery

Run-time Service Oriented Architecture (SOA) V 0.1

Challenges and Opportunities for formal specifications in Service Oriented Architectures

Demonstrating WSMX: Least Cost Supply Management

Enterprise Application Designs In Relation to ERP and SOA

CONTEMPORARY SEMANTIC WEB SERVICE FRAMEWORKS: AN OVERVIEW AND COMPARISONS

Getting Started with Service- Oriented Architecture (SOA) Terminology

Service Oriented Architectures Using DoDAF1

BUSINESS RULES CONCEPTS... 2 BUSINESS RULE ENGINE ARCHITECTURE By using the RETE Algorithm Benefits of RETE Algorithm...

Prof. Dr. Lutz Heuser SAP Research

Model Driven and Service Oriented Enterprise Integration---The Method, Framework and Platform

Semantic Variability Modeling for Multi-staged Service Composition

NIST s Guide to Secure Web Services

Ontology-based Web Service Composition: Part 1. Rolland Brunec Betreuerin: Sabine Maßmann Universität Leipzig, Abteilung Datenbanken

The case for service oriented architecture in realising trusted, interoperable, pan-european egovernment services.

The Service Revolution software engineering without programming languages

Service Oriented Architecture 1 COMPILED BY BJ

An ARIS-based Transformation Approach to Semantic Web Service Development

A Survey Study on Monitoring Service for Grid

Service Oriented Architecture (SOA) Michael Herrmann Applying Semantics within SOA

Testing Web Services Today and Tomorrow

Techniques to Produce Good Web Service Compositions in The Semantic Grid

Service Oriented Architecture Based Integration. Mike Rosen CTO, AZORA Technologies, Inc.

Secure Semantic Web Service Using SAML

Introduction to Service Oriented Architectures (SOA)

Evaluating Semantic Web Service Tools using the SEALS platform

Chapter 1: Introduction

Scope. Cognescent SBI Semantic Business Intelligence

A View Integration Approach to Dynamic Composition of Web Services

Comparative Analysis of SOA and Cloud Computing Architectures using Fact Based Modeling

Overview of major concepts in the service oriented extended OeBTO

Distributed Database for Environmental Data Integration

KITES TECHNOLOGY COURSE MODULE (C, C++, DS)

Methods for the specification and verification of business processes MPB (6 cfu, 295AA)

Rotorcraft Health Management System (RHMS)

Software Engineering Reference Framework

Programming Without a Call Stack: Event-driven Architectures

Business-Driven Software Engineering Lecture 3 Foundations of Processes

Open Source egovernment Reference Architecture Osera.modeldriven.org. Copyright 2006 Data Access Technologies, Inc. Slide 1

A Framework for Testing Distributed Healthcare Applications

Applying SOA to OSS. for Telecommunications. IBM Software Group

Data Integration using Semantic Technology: A use case

COMP5426 Parallel and Distributed Computing. Distributed Systems: Client/Server and Clusters

Semantically-enabled Service Oriented Architecture : Concepts, Technology and Application

Service-Oriented Architecture and its Implications for Software Life Cycle Activities

Web Services Software Architecture

Data Grids. Lidan Wang April 5, 2007

Secure Document Circulation Using Web Services Technologies

A System for Interactive Authorization for Business Processes for Web Services

Autonomic computing: strengthening manageability for SOA implementations

Service-Oriented Architecture and Software Engineering

Replication on Virtual Machines

Monitoring BPMN-Processes with Rules in a Distributed Environment

Ontology based Recruitment Process

SOA Fundamentals For Java Developers. Alexander Ulanov, System Architect Odessa, 30 September 2008

CHAPTER THREE, Network Services Management Framework

The Data Grid: Towards an Architecture for Distributed Management and Analysis of Large Scientific Datasets

Definition of SOA. Capgemini University Technology Services School Capgemini - All rights reserved November 2006 SOA for Software Architects/ 2

Scientific versus Business Workflows

Table of Contents. 1 Executive Summary SOA Overview Technology Processes and Governance... 8

Semantic Business Process Management

Masters in Information Technology

Interacting the Edutella/JXTA Peer-to-Peer Network with Web Services

Service Level Agreements based on Business Process Modeling

Business Rule Standards -- Interoperability and Portability

Table of Contents. Preface. Chapter 1 Introduction 1.1 Background. 1.2 Problem description. 1.3 The role of standardization. 1.4 Scope and objectives

SOA REFERENCE ARCHITECTURE

4. Multiagent Sys stems Design. Part 2: The PROMETHEUS methodology.

Software Modeling and Verification

Semantic Transformation of Web Services

Secure Identity Propagation Using WS- Trust, SAML2, and WS-Security 12 Apr 2011 IBM Impact

System Requirement Specification for A Distributed Desktop Search and Document Sharing Tool for Local Area Networks

MiniDraw Introducing a framework... and a few patterns

Security Test s i t ng Eileen Donlon CMSC 737 Spring 2008

Lesson 4 Web Service Interface Definition (Part I)

Fabio Patrizi DIS Sapienza - University of Rome

Goal-Driven Adaptable Software Architecture for UAVs

Software quality improvement via pattern matching

A BIAN Building Block Service Repository and Registry

Modeling Business Processes for SOA: Designing the Service Oriented Enterprise

School of Computer Science

CSCI 5828 Spring 2010 Foundations of Software Engineering. - Arpit Sud

Transcription:

Semantic Description of Distributed Business Processes Authors: S. Agarwal, S. Rudolph, A. Abecker Presenter: Veli Bicer FZI Forschungszentrum Informatik, Karlsruhe

Outline Motivation Formalism for Modeling Processes Exposing Processes as Services Discovery and Composition in Design Phase 2

Why consider Processes? Processes are an important part of the knowledge of an organization Without processes, an organization is dead Resources are hardly of any use without processes that operate on them In software, processes correspond to methods/ procedures, e.g. public void transfermoney(int amount, String account) { } Processes can not do anything useful without resources 3

(Business) Process Management Analysis Services Requirement s Requirement s Design consider exposed as use Executable Processes invoke Evaluation Execution Instance Data Scope of Presentation 4

Relationship between Services and (Business) Processes Organizations can not afford to perform each and every task on their own any more lack of know how inflexible staffing policy high infrastructure costs Organizations outsource some tasks to other organizations that specialize in them and concentrate only on tasks they specialize in Service oriented architecture roughly means Organizations expose their business processes to others as services Organizations use services of other organizations in their business processes 5

Outline Motivation Formalism for Modeling Processes Exposing Processes as Services Discovery and Composition in Design Phase 6

Requirements for a Formalism for Modeling Executable Processes Distributiveness Multiple autonomous actors Temporal structure Which activities happen in which order, in parallel or conditional? Access control policies: Who is allowed to perform which activities? Involved resources Which objects (information objects or real world objects) are involved (exchanged among the actors)? Credentials What are the quality attributes of a process? Formal semantics to enable automated verification, discovery and composition Considering no central control, fulfilling above requirements is not trivial 7

Formalism Sketch Semantic SPKI Certificates described by Credentials has has Business Process has Resources uses Dynamic Behavior described by OWL DL Ontology described by uses described by Pi Calculus Process 8

Pi Calculus One of the most widely known process algebras Developed mainly by Robin Milner (Turing Award 1991) Extension of Calculus of Communicating Systems (CCS) Pi Calculus offers two types of activities Local activities Activities performed locally by an actor, e.g. adding two numbers, performing an update in the database etc. Communication activities: Communication takes place via exchanging messages over some communication channel Communication channels can be treated as data enables modeling of flexible processes whose configurations can change at run time Activities can be performed sequentially, in parallel, conditional etc. 9

Pi Calculus Syntax and Semantics Input: x<v 1,, v n >.P Receive n objects along the channel x and bind them to variables v 1,, v n Then behave like P Output: x[y 1,, y n ].P Send n objects y 1,, y n along channel x Then behave like P Local: l(x 1,,x n ).P Perform local operation l with arguments x 1,,x n Then behave like P If Then Else: ω?p:q Check whether the condition ω holds If yes, then behave like P, else behave like Q Parallel: PkQ Perform P and Q in parallel Non Deterministic Choice: P+Q Perform either P or Q as selected by the user Agent invocation: A(x 1,,x n ) with A an agent identifier (named process expression) Invoke an agent identifier with parameters x 1,,x n Enables recursion, since the defining process expression of A can contain A Null: 0 This process does nothing used as termination 10

Modeling Functionality Sequence Behavior Input c<v 1,,v n >.P Output c[i 1,,i n ]. P Local l(u 1,,u n ).P IfThenElse ω(x 1, x n )?P:Q instance of instance of instance of Channel Type CT = (Protocol, Address, MT) Message Type MT = (p 1,,p n ) Local Operation Type L(x 1,,x n ) {+classmember(x 1,x 2 )} classmember(peter,person) Domain Ontology ω 1 (x,y) M ω n (x,y) Terminology Assertions Rules Concepts, Relations, Rule Heads, Predicate Symbols Predicates 11

Modeling Functionality Operational Semantics: Local Operations Composition Communication Non-Deterministic Choice Deterministic Choice 12

Access Control Access control is important in almost every business process to ensure Availability, e.g. a student must show his library card to be able to use the online library system; uncontrolled access may lead to Denial of Service attacks Confidentiality, e.g. a student has access to information relevant to his library account only Integrity, e.g. a student may not change or cause a change in the account of some other student Legal Correctness, e.g. an online video store must check age before lending certain videos Access control should not be identity based but credential based In open systems, like the Web, identities of the actors are not known or are not important Students of University of Berlin should be able to borrow books from the library of University of Karlsruhe, even if the latter does not have a database of all the students of the former Need for modeling credentials and credential based access control policies 13

Access Control SPKI: Simple Public Key Infrastructure Interactions among parties: 14

Modeling Credentials with Semantic SPKI Each actor (service) is identified by a public key An actor defines properties that it certifies E.g. fast response time, high availability etc. S K#A. S An actor issues name certificates (K, A, S) K is the key of the issuing actor; A is the property name K and A together (K#A) build a unique property name S is the subject (name or key) Certificate (K,A,S) has to be signed with the key K 15

Modeling Credential based Access Control Policies A trust policy P is either a key or a name If P is a key, only actor with key K=P satisfies P If P is a name, every actor with key K element of P satisfies P. P P Access control checks can be integrated as a condition in a process expression A special predicate CCD(P, C) checks whether the set of certificates C fulfills the policy P CCD is used as condition in IfThenElse process expressions (in place of ω) to integrate access control 16

Putting all together Business Process and Service Modeling Ontology

Outline Motivation Formalism for Modeling Executable Processes Exposing Processes as Services Discovery and Composition in Design Phase 18

From Internal Processes to Services Executable processes are internal to an organization Descriptions of such processes are not suitable for publishing as they contain implementation details providers may not wish to disclose or users are not interested in contain information about internal structure of the organization Parts of an executable process description need to be merged in order to achieve the required information hiding 19

From Internal Processes to Services Process merged to merged to Service 20

Outline Motivation Formalism for Modeling Executable Processes Exposing Processes as Services Discovery and Composition in Design Phase 21

Design Process Design = Process composition A software engineer clicks together (composes) a new process by considering processes in his organization services provided by other organizations that some parts may need to be implemented, e.g. if they are not covered by existing processes and services 2. Process Descriptions 1. Requirements 2. Query 3. Query Compose Discover Service Repository 5. Service Descriptions 4. Service Descriptions 22

Discovery Software Engineer 2. properties of the desired service Service Provider 4. Service descriptions that satisfy the constraints 3. Model Checking & DL Reasoning Service Repository 1. Service descriptions Automated discovery uses the formalism for checking the properties of desired services by a model checking algorithm 23

Some Existing Discovery Approaches The expressivity of discovery depends on the expressivity of service description and constraint specification OWL S Matchmaker Considers only types of input and output parameters and proposes subsumption based matchmaking WSMO Discovery Interprets a WS description W and a query G as sets and proposes different types of matches like G = W G W W G W G = 0 W G 0 KASWS Discovery Considers choreography, relations b/w inputs and outputs and non functional properties in a unified manner Yields conditions under which a service is a match 24

Composition Composition is about constructing a controlling process (choreographer), such that the whole process has the desired properties Desired properties S 1 S 1 Composer S 2 S 2 Automated composition uses the formalism for specifying the properties of desired services and a composition algorithm 25

Existing Composition Algorithms Existing approaches consider processes as black boxes with synchronous input/output consider only data types but no relations between inputs and outputs do not consider interaction behavior (choreography) do not consider non functional properties create sequential plans for centralized execution with backward chaining algorithm Real business scenarios require sophisticated composition algorithms developing such algorithms is still an open research problem 26

Summary Service oriented architectures are a promising paradigm for today s organizations Semantic management of distributed business processes and services is the key technology to realize SOA In order to achieve better efficiency, spontaneity and transparency, automated methods for discovery, and composition are required Formal languages for describing processes and services, and for specifying constraints on their properties build the basis for such methods 27

Thank you

Additional Slides

Contents Formalism for Modeling Executable Processes Exposing Processes as Services Execution of Processes Discovery and Composition in Design Phase 30

Execution Centralized One process has complete control Controlling process needs to act as mediator Only controlling process knows the whole business context Decentralized No controlling process Coordination load is distributed over all parties Involved parties know the business context partially BP 2 1 2 BP 1 1 BP 1 BP 2 3 3 4 2 BP 3 BP 3 31

Execution Manipulates resources Performs local operations Performs communication operations via the execution manager DB Process Execution Service Execution Execution Manager Initiates execution of the corresponding business process Creates new instances of services Communicates with other organizations via their execution managers Message Flow Message Flow Execution Manager Message Flow Execution Manager...... 32