querying business processes with bp ql
Skip this Video
Download Presentation
Querying business processes with BP-QL

Loading in 2 Seconds...

play fullscreen
1 / 42

Querying business processes with BP-QL - PowerPoint PPT Presentation

  • Uploaded on

Querying business processes with BP-QL. Victoria Markozen. What is a BP?. BP = business processes A BP consists of a group of business activities undertaken by one or more organizations in pursuit of some particular goal.

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

PowerPoint Slideshow about 'Querying business processes with BP-QL' - tass

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
what is a bp
What is a BP?
  • BP = business processes
  • A BP consists of a group of business activities undertaken by one or more organizations in pursuit of some particular goal.
  • A BP usually depends upon various business functions for support, (for example: personnel, accounting, inventory) and interacts with other BPs/activities carried by the same or other organizations.
  • the software implementing BPs typically operate in a cross-organization, distributed environment.
the main challenges in querying bp specifications
The main Challenges in querying BP specifications:
  • Flexible granularity
  • Distribution
  • Paths extraction
  • Ease of querying
flexible granularity
Flexible granularity

An adequate query language mustallow users to

query the processesat different,flexible,

granularity levels.

This property can be also called

“flexible zoom-in”.

Usersmay wish to ask coarse-grain queries that

consider certainprocess components as black

boxes and allow for high levelabstraction, as

wellas fine-grained queries that ‘‘zoom-in’’ on all

theprocess components, possibly recursively.

visual example
Visual example:

View Travel Agency

After zooming into search trip

paths extraction
Paths extraction
  • users maybe interested in retrieving as an answer thequalifying flow paths.

For example: the query‘‘What should I do to confirm my purchase?’’

  • As the number of relevant paths may be large(or even infinite in recursive processes) a majorchallenge is to provides the users with acompactfinite representation of the (possible infinite)answer.
visual example1
Visual example:
  • As we have seen in the “zoom-in”example inside the “search trip” operation we have the next operations: “search cars”, “search flights” and “search rooms”.
  • In our system we can go to “search trip” (followed by “search flights”) and after that go to “search trip” again – an action that will create a cycle.
ease of querying
Ease of querying
  • The BP query language is based on an intuitivemodel of BPs.
  • BP-QLworks with a graphical user interface that allowsfor simple formulation of queries over this model.
  • BP-QL hides from the users the tedious details and allows for more natural queryformulation.
bp ql user interface1
BP-QL user interface

property nodes:

general description of the process properties,including its name, capabilities, the serviceprovider, and so on.

bp ql user interface2
BP-QL user interface

data nodes:

The data used in the process - the processvariables and the input and output parametersfor the participating activities/services.

bp ql user interface3
BP-QL user interface

activity nodes:

The activities of which the process is composed.

bp ql user interface4
BP-QL user interface

provided operations:

the services offeredby the process to other processes.

bp ql user interface5
BP-QL user interface


describe the external services that the processrequests.

bp ql user interface6
BP-QL user interface

Data flow edges:

Describewhich data is read or output by which activity.

bp ql user interface7
BP-QL user interface

Activity flow edges:

describe the operationalflow.

bp ql user interface8
BP-QL user interface

Compound node:

a zoom-in allows to replace a compound

activity by a detailed description of the process thatit invokes.

bp ql user interface9
BP-QL user interface

View Travel Agency

Atomic operation

After zooming into search trip

bp ql user interface10
BP-QL user interface

View Travel Agency


After zooming into search trip

q uery example 1 find provided operations1
Query example #1 : Find provided operations

activities at anydistance from thestart/end nodes may qualify.

unbounded zoom-in; we look for compound activitiesof type “provided operation”, and the compoundactivities that they invoke.

The zoom-in is restrictedto activities whose specifications reside on the same.

q uery example 2 which visa credit card services are called by alpha tour s confirmtrip activity
Query example #2 : which VISA credit card services arecalled by Alpha Tour’s “ConfirmTrip” activity?
q uery example 3 in what ways can a user search for flights without logging in
Query example #3 : in what ways can a user search for flights without logging-in?
  • We will use “negation”
  • The dashed edgesand nodes are stating thata path to the “searchFlights” activity that passesthrough a “login” activity does not exist.
  • The existing flow paths leading to “searchFlights” are retrieved
another solution path constraints
Another solution: Path constraints

The wanted path can be also expressed byattaching a variable - x tothe edge, along with the selectioncondition :

last querying example querying the data flow
Last querying example:querying thedata flow

Our query:

Which data elements areaffected by the “tripRequest” activity,and serve as input for sending the suggested tripsback to the client?

some definitions
Some definitions
  • N - domain ofnodes.
  • L - domain of node labels.

a disjoint unionof several domains

including data values, attributenames,

data elementnames, process property

names, and atomicand compound

activity names.

business graphs and processes
Business graphs and processes

We model a BP as a directed labeled graphwith nodes of two types:

  • Concrete nodes - represent process properties, attributes,data elements, and atomic activities.
  • Compoundnodes- represent compound activities, meaning calls of (possibly remote) operations.
  • Two distinguishednodes of the BP graph represent its “start” and “end” activities.
business graph and process definitions
Businessgraph andprocess definitions

business graph

A business graph is a pair, where

is a directed graph inwhich is a finite set of nodes, andis a setof edges with endpoints nodes in and is a labeling function for the nodes.

business process

A BP is a triple p = (g, start, end),where:

g is a business graph.

start, end are twodistinguished activity nodes in g.

each activitynode in g resides on some path from start toend.

system definition
System definition

A system S of BPs is a pair , where P is a finite set of BPs, and t is a function, called the “implementation function”, from the compound activity nodes in P to BPs in P.

In simple words:

A system is a collection of BPs (or graphs), along with a mapping between compound nodes and their implementations - the processes they invoke.

a system of bps1
A system of BPs:

“start”=compound activity=“end”

a system of bps2
A system of BPs:

“start”=compound activity=“end”

Implementation of the compound activity

  • Queries are modeled using BP patterns.
  • A BP pattern is a tuple рp;T;RЮ,where:
  • A simple query q is a system of BP patterns рQ; tq

where Q is a set of BP patterns , and tq is an

implementation function (to know where to go from T).

query answers
Query answers
  • To evaluate a query, its patterns are matched to those of the system.
  • A match is called an embedding.
  • Let ¼ ðQ; tq be a simple query and let S be a simple system.

An embedding of q into S is a homomorphism r from the nodes and edges in q to nodes edges and paths in some refinement 0 ¼ ðP0; t of S.

  • The answer of q, denoted рs, is the set of all query results.
compact representation of query results
fork join -- -- fork join Compact representation of query results

the two main factors that contributeto large or infiniteresults andanswers:

1. flat BPs - BPs with nocompound activities.

each query BP pattern maybe considered in isolation,But answersmay

belarge or infinite.

2. Nested BPs - If each BP has several compound activities, then since these may be refined independently of each other, the number of refinements may be large.




Compound nodes

compact representation of query results1
Compact representation of query results

The solution:

We canrepresent the set of paths between two nodes by acopy of the sub-graph that connects the nodes, And show the connections between the compound nodes and the graphs that implement them.

Onemight actually say this is what the user intended:

tosee the specification of the paths between the the nodes, rather than the individual paths themselves.

  • BP-QL allows users toquery BPs visually, in a manner very close to howsuch processes are typically specified.
  • The main innovation of BP-QL is in introducingprocess patterns that enrich the standard path-basednavigation with:

1) a (transitive) zoom-in, thatallows to query

processcomponents at any depth ofnesting.

2) the retrieval of paths of interest.

Together, these features allow for simple formulation

of queries on BPs.