Business Process Management Using. BPM Using Process Algebra and Relational Database Model

Similar documents
BIS 3106: Business Process Management. Lecture Two: Modelling the Control-flow Perspective

Business Process Modeling

08 BPMN/1. Software Technology 2. MSc in Communication Sciences Program in Technologies for Human Communication Davide Eynard

BPMN PATTERNS USED IN MANAGEMENT INFORMATION SYSTEMS

How To Understand The Difference Between Business Process And Process Model In Java.Java.Org (Programming)

Source Code Translation

Business Process Modeling Information Systems in Industry ( )

White Paper BPMN 2.0 Task Types Explained

Making Business Rules operational. Knut Hinkelmann

Model Decisions and Business Rules in System Architect. Larry Goldberg & Barbara von Halle Knowledge Partners International LLC

The Import & Export of Data from a Database

A Business Process Services Portal

Workflow Management Standards & Interoperability

PLG: a Framework for the Generation of Business Process Models and their Execution Logs

Introduction to Workflow

Chapter 2 Introduction to Business Processes, BPM, and BPM Systems

Application development = documentation processing

Dr. Jana Koehler IBM Zurich Research Laboratory

FACULTY OF COMPUTER SCIENCE AND INFORMATION TECHNOLOGY AUTUMN 2016 BACHELOR COURSES

Reference Process Models User's Guide for Oracle Application Integration Architecture Foundation Pack 11g Release 1 ( )

Professional Organization Checklist for the Computer Science Curriculum Updates. Association of Computing Machinery Computing Curricula 2008

Software Modeling and Verification

VDM vs. Programming Language Extensions or their Integration

7. Classification. Business value. Structuring (repetition) Automation. Classification (after Leymann/Roller) Automation.

Koen Aers JBoss, a division of Red Hat jbpm GPD Lead

Relational model. Relational model - practice. Relational Database Definitions 9/27/11. Relational model. Relational Database: Terminology

Introducing Formal Methods. Software Engineering and Formal Methods

1. Process Modeling. Process Modeling (Cont.) Content. Chapter 7 Structuring System Process Requirements

MATLAB in Production Systems, Database Integration, and Big Data Eugene McGoldrick

Open Source Mobile Telehealth for Public Home Healthcare*

Elena Baralis, Silvia Chiusano Politecnico di Torino. Pag. 1. Query optimization. DBMS Architecture. Query optimizer. Query optimizer.

General Problem Solving Model. Software Development Methodology. Chapter 2A

International Journal of Scientific & Engineering Research, Volume 4, Issue 11, November ISSN

ARIS Design Platform Getting Started with BPM

Oracle BPA Suite: Model and Implement Business Processes Volume I Student Guide

Dotted Chart and Control-Flow Analysis for a Loan Application Process

Workflow Management Systems (WfMS)

DEGREE PLAN INSTRUCTIONS FOR COMPUTER ENGINEERING

Process Modeling using BPMN 2.0

BPM for Quality Assurance Systems in Higher Education. Vicente Cerverón-Lleó, Juan Cabotà-Soro, Francisco Grimaldo-Moreno, Ricardo Ferrís-Castell

Baseline Code Analysis Using McCabe IQ

Business-Driven Software Engineering Lecture 3 Foundations of Processes

2) What is the structure of an organization? Explain how IT support at different organizational levels.

Copyright Soleran, Inc. esalestrack On-Demand CRM. Trademarks and all rights reserved. esalestrack is a Soleran product Privacy Statement

Course Description for the Bachelors Degree in Library and Information Science

Axiomatic design of software systems

KS3 Computing Group 1 Programme of Study hours per week

Optimization of SQL Queries in Main-Memory Databases

Siebel Application Deployment Manager Guide. Siebel Innovation Pack 2013 Version 8.1/8.2 September 2013

Designing a Semantic Repository

Business Process Management

Recovering Business Rules from Legacy Source Code for System Modernization

Using the Grid for the interactive workflow management in biomedicine. Andrea Schenone BIOLAB DIST University of Genova

FUZZY CLUSTERING ANALYSIS OF DATA MINING: APPLICATION TO AN ACCIDENT MINING SYSTEM

Windchill Service Information Manager Curriculum Guide

Ontological Identification of Patterns for Choreographing Business Workflow

Position Classification Flysheet for Computer Science Series, GS Table of Contents

7 GOOD REASONS FOR GENUINE DIGITAL ASSET MANAGEMENT

Architecture Design & Sequence Diagram. Week 7

CUSTOMER Presentation of SAP Predictive Analytics

BUILDING OLAP TOOLS OVER LARGE DATABASES

Business Process Management and IT Architecture Design. The T case study. Dr. Jana Koehler Olaf Zimmermann IBM Zurich Research Laboratory

COCOVILA Compiler-Compiler for Visual Languages

CSC 342 Semester I: H ( G)

TECH. Requirements. Why are requirements important? The Requirements Process REQUIREMENTS ELICITATION AND ANALYSIS. Requirements vs.

HTML5 Data Visualization and Manipulation Tool Colorado School of Mines Field Session Summer 2013

Transforming mining maintenance Higher system productivity and reliability through advanced services

Mercy Health System. St. Louis, MO. Process Mining of Clinical Workflows for Quality and Process Improvement

Setting up SQL Translation Framework OBE for Database 12cR1

1 File Processing Systems

From Workflow Design Patterns to Logical Specifications

Business 360 Online - Product concepts and features

Windchill PDMLink Curriculum Guide

Pro/INTRALINK Curriculum Guide

Automated Data Ingestion. Bernhard Disselhoff Enterprise Sales Engineer

Figure 1. Basic Petri net Elements

Rotorcraft Health Management System (RHMS)

Introduction to MRP-Link

Take management Task automation Digital Asset Management. Tools and architecture for multimedia pipelines

Enterprise Architecture: Practical Guide to Logical Architecture

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

Reasons for need for Computer Engineering program From Computer Engineering Program proposal

B.Sc (Computer Science) Database Management Systems UNIT-V

Transcription:

Business Process Management Using Process Algebra and Relational Database Model 1 João Eduardo Ferreira (jef@ime.usp.br) 1 Calton Pu (calton@cc.gatech.edu) 2 1 Department of Computer Science Institute of Mathematics and Statistics (IME) University of São Paulo (USP) 2 College of Computing Georgia Institute of Technology

Agenda Introduction 1 Introduction Context Our work 2 Example 3 4

Agenda Introduction 1 Introduction Context Our work 2 Example 3 4

Agenda Introduction 1 Introduction Context Our work 2 Example 3 4

Agenda Introduction 1 Introduction Context Our work 2 Example 3 4

Context Our work 1 Introduction Context Our work 2 Example 3 4

Context Our work Business Process Management (BPM) BPM involves methods, techniques and tools to support the entire business process life cycle: project; execution and management; operational analysis. Associating formal frameworks to the project phase is valuable since: they provide non-ambiguous models; they improve the diagnosis capability; they enable a reliable execution control of the processes.

Context Our work Business Process Management (BPM) Formal Specification of Processes Well-known examples of frameworks for formal reasoning about processes: Petri Nets (Place/Transitions-Nets, Coloured Petri Nets, Workflow Nets,... ); Process Algebras (Algebra of Communicating Processes, π-calculus, LOTOS,...). There are tools based on formal frameworks for the management of workflows and business processes, but integrating these tools with other applications is not an easy task.

Context Our work 1 Introduction Context Our work 2 Example 3 4

Our work Introduction Context Our work (NPTool) A tool that supports the design, instantiation and execution control of business processes supported by the process algebra formalism. It uses and a relational database to specify the processes and to control their instantiations and executions.

Example 1 Introduction Context Our work 2 Example 3 4

Example (NPDL) NPDL is a business process specification language based on Algebra of Communicating Processes operators that applies the concept of Navigation Plan, that belongs to RiverFish architecture. NPTool implements NPDL as an extension of SQL language.

Example (NPDL) Main Features Specifies processes by algebraic expressions (operators and atomic actions); Contains basic operators (from process algebra): +, and Contains additional operators (only in NPDL): %, %!,, &, and? Facilitates the representation of control-flow patterns and compensates for some limitations of process algebras and Petri Nets.

Example 1 Introduction Context Our work 2 Example 3 4

Example (NPDL) Example A simple calculation process CREATE ACTION A1 ReadFirstValue ; CREATE ACTION A2 ReadSecondValue ; CREATE ACTION A3 CalculateSum ; CREATE ACTION A4 CalculateProduct ; CREATE ACTION A5 ShowResult ; CREATE PROCESS P1 CalculationProcessAux ; CREATE PROCESS P2 CalculationProcess ; SET P1 = (A1 A2).( A3 + A4 ).A5; SET P2 = P1.P2 + P1;

Example (NPDL) Other Commands CREATE RULE [RULE NAME]; CREATE FUNCTION [FUNCTION NAME]; DROP PROCESS [PROCESS NAME]; DROP ACTION [ACTION NAME]; DROP RULE [RULE NAME]; DROP FUNCTION [FUNCTION NAME]; SELECT ACTIONS; SELECT PROCESSES; SELECT RULES; SELECT FUNCTIONS;...

1 Introduction Context Our work 2 Example 3 4

(NPTool) NPTool is a library of functions implemented in Java that offers three important services: 1 NPDL Interpreter 2 Process Instantiation Service 3 Process Instance Execution Monitor

(NPTool) Services

1 Introduction Context Our work 2 Example 3 4

NPDL Interpreter Introduction Operations: 1 Creation of relational data structures (tables) to store processes, actions and instances data; 2 Lexical, syntactic and semantical analysis of NPDL commands; 3 Translation of NPDL commands to pure SQL commands.

NPDL Interpreter Relational Database Model Introduction

1 Introduction Context Our work 2 Example 3 4

Process Instantiation Following the concept of navigation plan instantiation of Riverfish architecture, this service offers functions for the creation of process instances. A process instance represents a request to a specific process. All the instance data, as well as process definition data associated with the instance, are stored in the database.

1 Introduction Context Our work 2 Example 3 4

Process Instance Execution Monitor This service is responsible for linking a process instance to its execution data. It contains the functions that control the execution of a process instance. The service is supported by database structures to store and recover the execution state of the instance and main-memory structures to control the execution flow. Expression tree of the process + execution state of an instance = navigation tree of the instance.

Navigation Trees Treatment of basic operators: alternative composition a + b

Navigation Trees Treatment of basic operators: sequence composition a b

Navigation Trees Treatment of basic operators: parallel composition a b

Navigation Trees Treatment of additional operators: - unlimited repetition a? - conditional execution %r 1 a + %!r 1 b

Example of Execution Control Acquisition of items in a library collection (simplified version) r 1 checks the completeness of data from acquisition order and the availability of the budget for purchasing; a 1 sorts the order items according to some priority; a 2 gathers the prices of the order items; a 3 liberates the order for purchasing; a 4 registers the purchase receiving; a 5 registers a problem with the purchase. SET P1 = a1 a2 + (a1 a2).p1; SET P = %r1 P1. a3. (a4 + a5?*. a4);

Navigation tree of an instance of acquisition process Initial state

Navigation tree of an instance of acquisition process After the execution of r 1 - check the completeness of order data

Navigation tree of an instance of acquisition process After the substitution of P 1 - the subprocess for sort and gather the prices of order items

Navigation tree of an instance of acquisition process After the execution of a 2 - gather the prices of other items

Navigation tree of an instance of acquisition process After the execution of a 1 - sort the order prices according to some priority

Navigation tree of an instance of acquisition process After the execution of a 3 - liberates the order for purchasing

Navigation tree of an instance of acquisition process After the removal of inaccessible branches

Navigation tree of an instance of acquisition process After mapping operator?*

Navigation tree of an instance of acquisition process After the execution of a 5 - register a problem with the purchase

Navigation tree of an instance of acquisition process After the execution of a 4 - register the purchase receiving

Using process algebra as formal basis supported: the creation of a simple but flexible relational database model to represent processes data and a language to manipulate these data - the NPDL; the development of a reliable engine that uses the process algebra axioms and operational semantics to implement a execution control of business processes.

The database can be viewed as a common repository of processes. This approach allows us to share processes definitions between different applications that use the NPTool. The compositional characteristic of process algebra makes possible the composition of great processes from smaller ones.

Work in Progress Automated generation of NPDL expressions from graphical representations. NPDL extension to represent process data flow. Process mining based on statistical approach.