Customer
This presentation is the property of its rightful owner.
Sponsored Links
1 / 36

Querying Business Processes Under Models of Uncertainty PowerPoint PPT Presentation


  • 82 Views
  • Uploaded on
  • Presentation posted in: General

Customer. Logistics. Bank. HR System. Supplier. eComm. CRM. ERP. Querying Business Processes Under Models of Uncertainty. Daniel Deutch, Tova Milo Tel-Aviv University. Introduction & Motivation External Events Partial Tracing Related and Future work. Outline.

Download Presentation

Querying Business Processes Under Models of Uncertainty

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Querying business processes under models of uncertainty

Customer

Logistics

Bank

HR System

Supplier

eComm

CRM

ERP

Querying Business Processes Under Models of Uncertainty

Daniel Deutch, Tova Milo

Tel-Aviv University


Outline

Introduction & Motivation

External Events

Partial Tracing

Related and Future work

Outline

Querying BPs Under Models of Uncertainty


Outline1

Introduction & Motivation

External Events

Partial Tracing

Related and Future work

Outline

Querying BPs Under Models of Uncertainty


Querying business processes under models of uncertainty

Web-based Business Processes are very popular

Querying possible \ likely execution flows of such applications

Allows for optimization, personalized ads, improved business logic,…

Queries over specification structure

Database approach to specification analysis

Introduction and Motivation

Querying Business Process

Querying BPs Under Models of Uncertainty


Querying business processes under models of uncertainty

Introduction and Motivation

Example BP

Querying BPs Under Models of Uncertainty


Querying business processes under models of uncertainty

BP specifications are compiled to running code

Modeled as nested DAGs

Each DAG corresponds to a function\web-page

Node pairs model activities activation and completion

Edges mark flow relation

Atomic/compound activities

Nesting models implementation relations \ links

Guarding formulas (on external events) model choices

Recursion is allowed

Introduction and Motivation

BP Specifications

Querying BPs Under Models of Uncertainty


Querying business processes under models of uncertainty

$searchType = “flights+hotels+cars”

$searchType = “flights only”

$searchType = “flights + hotels”

chooseTravel

chooseTravel

Login

Login

F1

Login

Login

$airline=“AL”

Flights

Advertise

Flights

$airline=“BA”

Flights

Advertise

Flights

Advertise

$hotel=“CrownePlaza”

Advertise

$airline=“AF”

Hotels

Confirm

$choice=“confirm”

Hotels

Confirm

$hotel=“Marriott”

Confirm

$choice=“reset”

F1

Confirm

F2

F4

F3

Introduction and Motivation

Example Specification

Querying BPs Under Models of Uncertainty


Querying business processes under models of uncertainty

A a specific run is called an EX-flow

Describes activities that occurred in practice + their flow relation

Obtained from a BP by choosing one implementation for each compound activity

Zoom-in edges connect implementations to activation and completion nodes of the corresponding compound activity

Execution trace (Ex-trace) is the log recorded for an EX-flow

Traces size for a given BP may be unbounded

Introduction and Motivation

Execution Flow

Querying BPs Under Models of Uncertainty


Querying business processes under models of uncertainty

07:00

chooseTravel

$searchType=“flight only”

07:02

Login

Login

07:04

07:05

Advertise

Flights

$airline = “BA”

07:10

Advertise

...

07:30

Flights

07:40

$choice = “confirm”

Confirm

07:41

...

07:42

Confirm

07:43

chooseTravel

Introduction and Motivation

Example Execution Flow

Querying BPs Under Models of Uncertainty


Querying business processes under models of uncertainty

External Effects, such asuser choices, server response time, etc.

Partial Tracing, due to lack of storage, confidentiality, etc.

Thus the past is uncertain, and the future unknown

Introduction and Motivation

Sources of Uncertainty

Querying BPs Under Models of Uncertainty


Outline2

Introduction & Motivation

External Events

Partial Tracing

Related and Future work

Outline

Querying BPs Under Models of Uncertainty


Querying business processes under models of uncertainty

Even when traces of past executions are known, future executions are hard to predict

The effect of external events is modeled by logical formulas, guarding implementations

At run-time, formulas’ truth values determines the chosen implementations

External Events

Uncertainty

Querying BPs Under Models of Uncertainty


Querying business processes under models of uncertainty

Example queries:

What is the possible behavior (flow) for users that do not

finalize their reservation?

Which hotels can be reserved by British Airways fliers?

The set of all EX-flows conforming to a query may be large (possibly infinite)

But some are more interesting than others…

External Events

TOP-K most likely EX-flows

Querying BPs Under Models of Uncertainty


Querying business processes under models of uncertainty

We define likelihood of EX-flows

Then find the top-k most likely out of these conforming to a query (TOP-K-MATCHES)

What is the typical behavior (flow) for users that do not finalize

their reservation?

Which hotels are preferred by British Airways fliers?

TOP-K answers reflect common usage patterns

External Events

TOP-K likely EX-flows (cont.)

Querying BPs Under Models of Uncertainty


Querying business processes under models of uncertainty

Execution patterns

Intuitive, similar in structure to execution traces

Seek for occurrences (homomorphism) of the pattern within (any) trace’s sub-graph

May contain transitive nodes and edges

May contain a projection part

External Events

Query language

Querying BPs Under Models of Uncertainty


Querying business processes under models of uncertainty

chooseTravel

Start

Start

Flights

chooseTravel

$Airline = “BA”

Flights

chooseTravel

Hotels

chooseTravel

Any

chooseTravel

Any

Hotels

Confirm

Confirm

chooseTravel

External Events

Example Query

Querying BPs Under Models of Uncertainty


Querying business processes under models of uncertainty

We distinct three classes of distributions, according to their level of dependency

Memory-less (markovian): no dependencies between formulas.

Bounded-memory: dependency in(at most) B last values of each formula.

General

External Events

Distribution Classes

Querying BPs Under Models of Uncertainty


Querying business processes under models of uncertainty

$searchType = “flights+hotels+cars”

$searchType = “flights only”

$searchType = “flights + hotels”

chooseTravel

chooseTravel

Login

Login

F1

Login

Login

$airline=“AL”

Flights

Advertise

Flights

$airline=“BA”

Flights

Advertise

Flights

Advertise

$hotel=“CrownePlaza”

Advertise

$airline=“AF”

Hotels

Confirm

$choice=“confirm”

Hotels

Confirm

$hotel=“Marriott”

Confirm

$choice=“reset”

F1

Confirm

F2

F4

F3

External events

Our Example Specification

Querying BPs Under Models of Uncertainty


Querying business processes under models of uncertainty

External Events

Distribution

Querying BPs Under Models of Uncertainty


Querying business processes under models of uncertainty

For memory-less distribution, we find the TOP-K matches in PTIME (data complexity)

[compute a compact representation of output]

For bounded-memory distributions, NP-completeness in the data size, but we give powerful heuristics

In all settings, NP-completeness in the query size

For general distributions, we show undecidability

External Events

Results

Querying BPs Under Models of Uncertainty


Querying business processes under models of uncertainty

For memory-lessdistributions, Dynamic Programming algorithm

Gradually computes a table holding the i’th most probable trace rooted at any activity

Implemented with satisfactory performance

External Events

Algorithms (intuition)

Querying BPs Under Models of Uncertainty


Querying business processes under models of uncertainty

For bounded-memory, we build a memory-less BP where activity is a “state”, holding all relevant information for future computations.

This “explodes” exponentially the number of compound activity names.

Optimizations utilize conditional independencies between formulas.

Compute approximation of “actual memory”, and maintain only that.

External Events

Algorithms (intuition, cont.)

Querying BPs Under Models of Uncertainty


Outline3

Introduction & Motivation

External Events

Partial Tracing

Related and Future work

Outline

Querying BPs Under Models of Uncertainty


Querying business processes under models of uncertainty

Partial Tracing, due to lack of storage, confidentiality,…

Naïve tracing records all activities accurately

Semi-Naïve tracing contains only partial information on the names of some activities

Selective tracing may omit some activities occurrences

Tracing systems (called types) are represented by a renaming function and a deletion set

Partial Tracing

Types of Partial Traces

Querying BPs Under Models of Uncertainty


Querying business processes under models of uncertainty

Trip

Luxury

Luxury

Trip

Search

Search

Search

Search

Hotel

Credit1

Flight

Credit1

LuxHotel

Credit2

LuxFlight

Credit2

Hotel

Credit1

Flight

Credit1

LuxHotel

Credit2

LuxFlight

Credit2

Print

Print

Print

Print

Partial Tracing

Example BP

Querying BPs Under Models of Uncertainty


Querying business processes under models of uncertainty

Partial Tracing

Naïve Traces

Trip

Trip

Luxury

Search

Search

Search

Search

LuxHotel

LuxFlight

Hotel

Flight

Credit2

Credit1

Credit2

Credit1

Credit2

Credit1

Credit2

Credit1

LuxHotel

Hotel

LuxFlight

Flight

Print

Print

Print

Print

Luxury

Trip

Trip

Querying BPs Under Models of Uncertainty


Querying business processes under models of uncertainty

Partial Tracing

Semi-Naïve Traces

Trip

Trip

Luxury

Search

Search

Search

Search

Hotel

Flight

Hotel

Flight

Credit

Credit

Credit

Credit

Credit

Credit

Credit

Credit

Hotel

Hotel

Flight

Flight

Print

Print

Print

Print

Luxury

Trip

Trip

Querying BPs Under Models of Uncertainty


Querying business processes under models of uncertainty

Partial Tracing

Selective Traces

Trip

Trip

Search

Search

Search

Search

Hotel

Flight

Hotel

Flight

Credit

Credit

Credit

Credit

Credit

Credit

Credit

Credit

Hotel

Hotel

Flight

Flight

Print

Print

Print

Print

Trip

Trip

Querying BPs Under Models of Uncertainty


Querying business processes under models of uncertainty

VLDB sneak preview…

Type inference: Given an input type and a query over its traces, infer a type representing exactly the qualifying traces

Type checking: Given also an output type, verify that the qualifying traces conform to it

Practical motivation stems from optimization of queries over execution traces repositories

Partial Tracing

Type Inference & Checking

Querying BPs Under Models of Uncertainty


Querying business processes under models of uncertainty

Type Inference

Impossible with only naïve tracing

Possible, but with exponential blowup for semi-naïve tracing systems

In PTIME for selective tracing systems

Type Checking

NP-hard and solvable in EXPTIME for naïve and semi-naïve tracing systems

Undecidable for selective tracing systems

Partial Tracing

Complexity

Querying BPs Under Models of Uncertainty


Querying business processes under models of uncertainty

Selective tracing is “ideal” for type inference

Other methods should be considered for type checking

Partial Tracing

Practical Implication

Querying BPs Under Models of Uncertainty


Querying business processes under models of uncertainty

Given a partial trace, what is its most likely origin?

Or, more generally,

given a pattern (query) of partial traces, what are the most likely origins of partial traces of this pattern ?

Good news:

All query evaluation algorithms extend to this context

(even without knowing the tracing system…)

Partial Tracing

Lets talk about (top-k) queries

Querying BPs Under Models of Uncertainty


Outline4

Introduction & Motivation

External Events

Partial Tracing

Related and Future work

Outline

Querying BPs Under Models of Uncertainty


Querying business processes under models of uncertainty

(Probabilistic) Recursive State Machines with temporal logic as query language

Probabilistic Relational DBs

Probabilistic XML

Graphgrammars with MSO (or FO) as query language

BP and Web applications mining

Related & Future Work

Related work

Querying BPs Under Models of Uncertainty


Querying business processes under models of uncertainty

Practical applications:

Web-sites design

On-line advertisements

Improved business logic

Enriched Query Language

Joins

Data values

Projection queries with further aggregation functions

Distribution

Optimization

Efficient Type checking under some restrictions

Inference of specifications/probability distributions

Related & Future Work

Future work

Querying BPs Under Models of Uncertainty


Thanks

תודה( = Thanks )


  • Login