MODEL CHECKING OF SERVICES WORKFLOW RECONFIGURATION: A PERSPECTIVE ON DEPENDABILITY

Save this PDF as:
 WORD  PNG  TXT  JPG

Size: px
Start display at page:

Download "MODEL CHECKING OF SERVICES WORKFLOW RECONFIGURATION: A PERSPECTIVE ON DEPENDABILITY"

Transcription

1 MODEL CHECKING OF SERVICES WORKFLOW RECONFIGURATION: A PERSPECTIVE ON DEPENDABILITY 1 Juan Carlos Polanco Aguilar 1 Koji Hasebe 1 Manuel Mazzara 2 Kazuhiko Kato 1 1 University of Tsukuba Department of Computer Science 2 Newcastle University School of Computing Science

2 BACKGROUND WHAT IS WORKFLOW? A workflow is a model defined by a series of tasks to produce an outcome. Typical examples of workflow include: Business office workflow. Web services workflow. Mobile workflow. 2

3 BACKGROUND AN EXAMPLE OF WORKFLOW User Shop Payment Company Invoke Process Order Process Process Payment N Payment Received User Response Y 3

4 BUSINESS PROCESS MODELING NOTATION (BPMN) Developed by Business Process Management Initiative (BPMI) in 2004 and maintained by the Object Management Group (OMG) from Current Version: 2.0 (March 2011). Widely used standard for business process modeling. Simple drawing scheme that is easy to learn and train. Portability for many software vendors implementation 4

5 EXAMPLE OF BPMN SPECIFICATION 5

6 WORKFLOW AS A SAFETY-CRITICAL SYSTEM Workflow application examples Internet shopping site. Office workflow. Safety / security problems Leakage of Information. Impersonation. Design error and flow bugs. 6

7 REQUIREMENTS OF THE VERIFICATION PROCEDURE Reconfiguration process is often applied in a workflow. Safety / security properties might be compromised after reconfiguration (deadlock, security). Reconfiguration is achieved through use of BPMN elements. Verification of required properties is achieved by the verification of the BPMN workflow specification. 7

8 MOTIVATION Reconfiguration of workflow development and verification of requirements through research status. Verification Procedure Workflow Requirements Verification tool Revision Formal Language Correct Workflow 8

9 PURPOSE Develop a formal verification for reconfiguration of workflows. Based on model checking technique (SPIN Model Checker). Introduce a translation algorithm from a BPMN model into Promela code. 9

10 OVERVIEW OF THE VERIFICATION Old BPMN Diagram Step 1: Workflow reconfiguration to achieve flexibility. Step 2: Translation from the BPMN model into a formal Promela model (SPIN Specification Language). Step 3: Model checking of the Promela model with a requirement expressed in Linear Temporal Logic (LTL) formulas. Step 4: Recursive reconfiguration to meet all the requirements. Automa7c Transla7on Procedure SPIN Model Checker Promela Model Valid (BPMN model sa7sfies the requirement.) New BPMN Diagram Formal Specifica7on of BPMN Model Verifica7on Procedure Reconfigura7on Requirement (LTL Formula) Invalid (There is a counter example.) Revision 10

11 OVERVIEW OF THE VERIFICATION EXAMPLE: BOOKSHOP Bookshop Client Provider 11

12 STEP 1: WORKFLOW RECONFIGURATION An Example of Requirements Client sends an order, the bookshop verifies supply in the warehouse and then sends the order to client. 12

13 STEP 1: WORKFLOW RECONFIGURATION Introduce a parallel branching 13

14 STEP 2: TRANSLATION PROCEDURE (1) OVERVIEW OF THE PROCEDURE Specification of the BPMN diagram by using set theoretical notation. Develop and introduction of the translation algorithm by using primary elements obtained after specification. Modification of the translated model for a challenging verification. Procedure Limitations Translation procedure not fully automated. After training on set theory basic concepts and Promela language, handling can be achieved. 14

15 STEP 2: TRANSLATION PROCEDURE (2) TRANSLATION APPLICATION EXAMPLE Labels e 1 t 1 e 2 t2 Partitioning of Workflow into processes t 3 t 4 t 5 t 6 t 7 t 8 t 9 t 10 t 11 t 12 t 14 e 3 t 13 t 15 t 16 t 17 t 19 t 18 e 4 15

16 STEP 2: TRANSLATION PROCEDURE (2) TRANSLATION APPLICATION EXAMPLE t 3 t 4 t 5 t 6 t 7 t 8 t 9 t 11 e 3 BPMN formal specification Tasks = {t 3, t 4, t 5, t 6, t 7, t 8, t 9, t 11 Events = {e 3 Objects ={e 3, t 3, t 4, t 5, t 6, t 7, t 8, t 9, t 11 Relation = {(t 3, t 6 ), (t 6, t 4 ), (t 6, t 5 ), (t 5, t 7 ), (t 5, t 8 ), (t 7, e 3 ), (t 7, t 9 ), (t 9, t 11 ) Connect = {(t 4, e 2 ), (t 8, t 2 ), (t 11, t 15 ) Translation Translation algorithm for all a Connect(a,b) print chan a[buf] for all (a,b) Connect(a,b) print a!msg print a?msg Primary Promela code chan t4[1] of mtype chan t8[1] of mtype chan t11[1] of mtype active proctype P4() { t1?msg; t4!msg; atomic{ t8!msg; t11!msg; Complete Promela code chan t4[1] of mtype chan t8[1] of mtype chan t11[1] of mtype bool flag1 = 0; bool flag2 = 0; bool flag3 = 0; active proctype P3() { t1?msg; flag1= 1; t4!msg; atomic{ 16 t8!msg; flag2= 1; t11!msg; flag3= 1;

17 STEP 2: TRANSLATION PROCEDURE (3) COMPLETE PROMELA CODE mtype = {msg; chan t1 = [1] of {mtype chan e2 = [1] of {mtype chan t4 = [1] of {mtype chan t8 = [1] of {mtype chan t11 = [1] of {mtype chan t12 = [1] of {mtype chan t13 = [1] of {mtype chan t18= [1] of {mtype chan t19 = [1] of {mtype active proctype P1() { t1!msg; active proctype P2() { e2?msg; active proctype P3() { t8?msg; active proctype P4() { t1?msg; do t4!msg; atomic { t8!msg; t11!msg od active proctype P5() { do :: t12!msg; t13!msg; od active proctype P6() { t4?msg; active proctype P7() { t13?msg; t18!msg active proctype P8() { t12?msg; do :: t18!msg :: t19!msg od active proctype P9() { t11?msg; active proctype P10() { t18?msg; active proctype P11() { t19?msg; 17

18 STEP 2: TRANSLATION PROCEDURE (3) COMPLETE PROMELA CODE mtype = {msg, amount; mtype chan t1 = {msg; [1] of {mtype chan e2 = [1] of {mtype chan t4 t1 = [1] [1] of of {mtype chan t8 e2 = = [1] [1] of of {mtype {mtype chan t16 t4 = [1] of of {int {mtype chan t11 t8 = [1] of of {mtype {mtype chan t12 = [1] of {mtype chan t11 = [1] of {mtype chan t13 = [1] of {mtype chan chan t18= t12 = [1] [1] of of {mtype {mtype chan t19 t13 = = [1] [1] of of {mtype {mtype chan t18= [1] of {mtype chan bool flaga t19 = 0; [1] of {mtype bool flagb = 0; active bool flag1 proctype =0; P1() { bool t1!msg; flag2 =0; bool flag3 =0; bool flag4 =0; active bool flag5 proctype =0; P2() { bool e2?msg; flagx =0; bool flagy = 0; active proctype P3() { active t8?msg; proctype P1() { t1!msg; active proctype P2() { e2?msg; active proctype P3() active { t8?msg; proctype flaga = 1; P4() { t1?msg; active do proctype P4() { t1?msg; t4!msg; flag1 = 1 do atomic { t4!msg t8!msg; atomic{ t11!msg t8!msg; flag2=1; t11!msg flag3=1; od od active proctype P5() { active do proctype P5() {t16?amount; :: t12!msg; t13!msg; (amount od >= 4000) -> t12!msg; flagx = 1 (amount < 4000) -> active proctype P6() t13!msg; flagy=1 { do t4?msg; :: t12!msg; flag4= 1 active :: t13!msg; proctype flag5= P7() 1 { od t13?msg; t18!msg active proctype P6() { t4?msg; active proctype P7() { active t13?msg; proctype t18!msg P8() { t12?msg; active do proctype P8() { :: t18!msg t12?msg; :: t19!msg do od :: t18!msg :: t19!msg active od proctype P9() { t11?msg; active proctype P9() active { t11?msg; proctype P10() { flagb = 1; t18?msg; active proctype P10() { active t18?msg; proctype P11() { active t19?msg; proctype P11() { t19?msg; 18

19 STEP 3: MODEL CHECKING VERIFICATION (1) PROCEDURE OVERVIEW Introduce Linear Temporal Logic (LTL) formulas to verify the requirement. Typical examples: deadlock freedom, security, reachability. Promela code Requirement (LTL) Reachability: LTL formula: (p (q r)) define p as flag1 == 1; define q as flag2 == 1; define r as flag3 == 1; 19

20 STEP 3: MODEL CHECKING VERIFICATION (2) REQUIREMENTS DEFINITION Typical requirements can be identified through patterns in LTL formulas: Reachability: Program always reaches aimed state (P (Q R)) Deadlock: There is no next state Deadlock: ( terminal) Deadlock-freedom: ( terminal) Usage of assertion alternative active proctype P4() { t3?msg; flag1 = 1; do :: t8!msg; flag2 = 1; :: t11!msg; flag3 = 1; od assert(flag2 == 1 && flag3 == 1) 20

21 STEP 3: MODEL CHECKING VERIFICATION (3) VERIFICATION EXAMPLE active proctype P4( ) { t3?msg; flag1= 1; t4!msg; atomic{ t8!msg; flag2= 1; t11!msg; flag3= 1; t 3 t 4 t 5 t 6 t 7 t 8 t 9 t 11 e 3 Promela code Requirement (LTL) SPIN model checker Model Revision Property INVALID 21

22 STEP 4: RECURSIVE RECONFIGURATION OF WORKFLOW MODEL active proctype P4() { t3?msg; flag1 = 1; do :: t8!msg; flag2 = 1; :: t11!msg; flag3 = 1; od Verify items and stock Generate Purchase Verify Enough Prepare and t 3 Supply Supply Yes Send Order t t 8 7 t 11 No Promela code Requirement (LTL) SPIN model checker Property VALID 22

23 RELATED WORK Model Checking for Web Services: S. Nakajima. Model-Checking of Safety and Security Aspects in Web Service Flows, ICWE S. Nakajima. Model-Checking Behavioral Specification of BPEL Applications, WLFM Translation Procedures: C. Ouyang, M. Dumas, A. H. M. ter Hofstede, W. M. P. van der Aalst. From BPMN Process Models to BPEL Web Services. IEEE International Conference on Web Services J. Chen, H. Cui. Translation from Adapted UML to Promela for CORBA-based Applications, SPIN Reconfiguration in Workflow Systems: M.Mazzara, N. Dragoni, M. Zhou. Dependable Workflow Reconfiguration, NODES M.Mazzara, A. Bhattacharyya. On Modeling and Analysis of Dynamic Reconfiguration of Dependable Real-Time Systems, DEPEND

24 CONCLUSIONS Verify the procedure for the reconfiguration of workflows. Introduce the translation from the BPMN model into a Promela model and use SPIN model checker for verification. Develop a formal definition of BPMN model and introduce a translation algorithm. Introduce a recursive process of verification. 24

25 FUTURE WORK Develop the automation of the verification procedure. Include a GUI environment. Increase the handle ability: Background process of translation and verification. Develop set of templates for requirement patterns (usual LTL formula for deadlock, reachability). 25

From Workflow Design Patterns to Logical Specifications

From Workflow Design Patterns to Logical Specifications AUTOMATYKA/ AUTOMATICS 2013 Vol. 17 No. 1 http://dx.doi.org/10.7494/automat.2013.17.1.59 Rados³aw Klimek* From Workflow Design Patterns to Logical Specifications 1. Introduction Formal methods in software

More information

Lecture 9 verifying temporal logic

Lecture 9 verifying temporal logic Basics of advanced software systems Lecture 9 verifying temporal logic formulae with SPIN 21/01/2013 1 Outline for today 1. Introduction: motivations for formal methods, use in industry 2. Developing models

More information

Formal Verification by Model Checking

Formal Verification by Model Checking Formal Verification by Model Checking Natasha Sharygina Carnegie Mellon University Guest Lectures at the Analysis of Software Artifacts Class, Spring 2005 1 Outline Lecture 1: Overview of Model Checking

More information

Introduction to Promela and SPIN. LACL, Université Paris 12

Introduction to Promela and SPIN. LACL, Université Paris 12 Introduction to Promela and SPIN LACL, Université Paris 12 Promela = Process Meta Language A specification language! No programming language! Used for system description : Specify an abstraction of the

More information

Fundamentals of Software Engineering

Fundamentals of Software Engineering Fundamentals of Software Engineering Model Checking with Temporal Logic Ina Schaefer Institute for Software Systems Engineering TU Braunschweig, Germany Slides by Wolfgang Ahrendt, Richard Bubel, Reiner

More information

Software Engineering using Formal Methods

Software Engineering using Formal Methods Software Engineering using Formal Methods Model Checking with Temporal Logic Wolfgang Ahrendt 24th September 2013 SEFM: Model Checking with Temporal Logic /GU 130924 1 / 33 Model Checking with Spin model

More information

Model-Checking Verification for Reliable Web Service

Model-Checking Verification for Reliable Web Service Model-Checking Verification for Reliable Web Service Shin NAKAJIMA Hosei University and PRESTO, JST nkjm@i.hosei.ac.jp Abstract Model-checking is a promising technique for the verification and validation

More information

The Model Checker SPIN

The Model Checker SPIN The Model Checker SPIN Author: Gerard J. Holzmann Presented By: Maulik Patel Outline Introduction Structure Foundation Algorithms Memory management Example/Demo SPIN-Introduction Introduction SPIN (Simple(

More information

INF5140: Specification and Verification of Parallel Systems

INF5140: Specification and Verification of Parallel Systems INF5140: Specification and Verification of Parallel Systems Lecture 7 LTL into Automata and Introduction to Promela Gerardo Schneider Department of Informatics University of Oslo INF5140, Spring 2007 Gerardo

More information

BPMN PATTERNS USED IN MANAGEMENT INFORMATION SYSTEMS

BPMN PATTERNS USED IN MANAGEMENT INFORMATION SYSTEMS BPMN PATTERNS USED IN MANAGEMENT INFORMATION SYSTEMS Gabriel Cozgarea 1 Adrian Cozgarea 2 ABSTRACT: Business Process Modeling Notation (BPMN) is a graphical standard in which controls and activities can

More information

Today s Agenda. Automata and Logic. Quiz 4 Temporal Logic. Introduction Buchi Automata Linear Time Logic Summary

Today s Agenda. Automata and Logic. Quiz 4 Temporal Logic. Introduction Buchi Automata Linear Time Logic Summary Today s Agenda Quiz 4 Temporal Logic Formal Methods in Software Engineering 1 Automata and Logic Introduction Buchi Automata Linear Time Logic Summary Formal Methods in Software Engineering 2 1 Buchi Automata

More information

Introduction to SPIN. Acknowledgments. Parts of the slides are based on an earlier lecture by Radu Iosif, Verimag. Ralf Huuck. Features PROMELA/SPIN

Introduction to SPIN. Acknowledgments. Parts of the slides are based on an earlier lecture by Radu Iosif, Verimag. Ralf Huuck. Features PROMELA/SPIN Acknowledgments Introduction to SPIN Parts of the slides are based on an earlier lecture by Radu Iosif, Verimag. Ralf Huuck Ralf Huuck COMP 4152 1 Ralf Huuck COMP 4152 2 PROMELA/SPIN PROMELA (PROcess MEta

More information

Quick Start Guide. June 3, 2012

Quick Start Guide. June 3, 2012 The ERIGONE Model Checker Quick Start Guide Mordechai (Moti) Ben-Ari Department of Science Teaching Weizmann Institute of Science Rehovot 76100 Israel http://stwww.weizmann.ac.il/g-cs/benari/ June 3, 2012

More information

System modeling. Budapest University of Technology and Economics Department of Measurement and Information Systems

System modeling. Budapest University of Technology and Economics Department of Measurement and Information Systems System modeling Business process modeling how to do it right Partially based on Process Anti-Patterns: How to Avoid the Common Traps of Business Process Modeling, J Koehler, J Vanhatalo, IBM Zürich, 2007.

More information

BPMN A Logical Model and Property Analysis. Antoni Ligęza

BPMN A Logical Model and Property Analysis. Antoni Ligęza Decision Making in Manufacturing and Services Vol. 5 2011 No. 1 2 pp. 57 67 BPMN A Logical Model and Property Analysis Antoni Ligęza Abstract. Business Process Modeling Notation has become a powerful and

More information

Fundamentals of Software Engineering

Fundamentals of Software Engineering Fundamentals of Software Engineering Model Checking with Temporal Logic Ina Schaefer Institute for Software Systems Engineering TU Braunschweig, Germany Slides by Wolfgang Ahrendt, Richard Bubel, Reiner

More information

On the Modeling and Verification of Security-Aware and Process-Aware Information Systems

On the Modeling and Verification of Security-Aware and Process-Aware Information Systems On the Modeling and Verification of Security-Aware and Process-Aware Information Systems 29 August 2011 What are workflows to us? Plans or schedules that map users or resources to tasks Such mappings may

More information

Stylianos Basagiannis

Stylianos Basagiannis Interlocking control by Distributed Signal Boxes Technical Report (TR) 4 Stylianos Basagiannis Supervisors: Dr Andrew Pombortsis, Dr Panagiotis Katsaros Aristotle University of Thessaloniki Department

More information

A Classification of Model Checking-based Verification Approaches for Software Models

A Classification of Model Checking-based Verification Approaches for Software Models A Classification of Model Checking-based Verification Approaches for Software Models Petra Brosch, Sebastian Gabmeyer, Martina Seidl Sebastian Gabmeyer Business Informatics Group Institute of Software

More information

Dr. Jana Koehler IBM Zurich Research Laboratory

Dr. Jana Koehler IBM Zurich Research Laboratory Precise Modeling of Business Processes with the Business Process Modeling Notation BPMN 2.0 Dr. Jana Koehler IBM Zurich Research Laboratory ZRL BIT at a Glance Computer Science at ZRL: Security/Cryptography

More information

Verification of Agent Behavioral Models

Verification of Agent Behavioral Models The 2000 International Conference on Artificial Intelligence (IC-AI'2000) June 26-29, 2000 Monte Carlo Resort, Las Vegas, Nevada Verification of Agent Behavioral Models Timothy H. Lacey and Scott A. DeLoach

More information

Software Modeling and Verification

Software Modeling and Verification Software Modeling and Verification Alessandro Aldini DiSBeF - Sezione STI University of Urbino Carlo Bo Italy 3-4 February 2015 Algorithmic verification Correctness problem Is the software/hardware system

More information

Test Suite Generation for Services

Test Suite Generation for Services Test Suite Generation for Services Kathrin Kaschner and Niels Lohmann WESOA 2008 Sydney 1 December 2008 http://service technology.org/wesoa2008 UNIVERSITÄT ROSTOCK Testing Services: What's new? classical

More information

A Logic Approach for LTL System Modification

A Logic Approach for LTL System Modification A Logic Approach for LTL System Modification Yulin Ding and Yan Zhang School of Computing & Information Technology University of Western Sydney Kingswood, N.S.W. 1797, Australia email: {yding,yan}@cit.uws.edu.au

More information

Formal Verification and Linear-time Model Checking

Formal Verification and Linear-time Model Checking Formal Verification and Linear-time Model Checking Paul Jackson University of Edinburgh Automated Reasoning 21st and 24th October 2013 Why Automated Reasoning? Intellectually stimulating and challenging

More information

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

08 BPMN/1. Software Technology 2. MSc in Communication Sciences 2009-10 Program in Technologies for Human Communication Davide Eynard MSc in Communication Sciences 2009-10 Program in Technologies for Human Communication Davide Eynard Software Technology 2 08 BPMN/1 2 ntro Sequence of (three?) lessons on BPMN and technologies related

More information

tutorial: hardware and software model checking

tutorial: hardware and software model checking tutorial: hardware and software model checking gerard holzmann and anuj puri { gerard anuj } @research.bell-labs.com Bell Labs, USA outline introduction (15 mins) theory and algorithms system modeling

More information

Conformance Checking of RBAC Policies in Process-Aware Information Systems

Conformance Checking of RBAC Policies in Process-Aware Information Systems Conformance Checking of RBAC Policies in Process-Aware Information Systems Anne Baumgrass 1, Thomas Baier 2, Jan Mendling 2, and Mark Strembeck 1 1 Institute of Information Systems and New Media Vienna

More information

Structural Detection of Deadlocks in Business Process Models

Structural Detection of Deadlocks in Business Process Models Structural Detection of Deadlocks in Business Process Models Ahmed Awad and Frank Puhlmann Business Process Technology Group Hasso Plattner Institut University of Potsdam, Germany (ahmed.awad,frank.puhlmann)@hpi.uni-potsdam.de

More information

logic language, static/dynamic models SAT solvers Verified Software Systems 1 How can we model check of a program or system?

logic language, static/dynamic models SAT solvers Verified Software Systems 1 How can we model check of a program or system? 5. LTL, CTL Last part: Alloy logic language, static/dynamic models SAT solvers Today: Temporal Logic (LTL, CTL) Verified Software Systems 1 Overview How can we model check of a program or system? Modeling

More information

BPMN VS. UML ACTIVITY DIAGRAM FOR BUSINESS PROCESS MODELING

BPMN VS. UML ACTIVITY DIAGRAM FOR BUSINESS PROCESS MODELING Accounting and Management Information Systems Vol. 11, No. 4, pp. 637 651, 2012 BPMN VS. UML ACTIVITY DIAGRAM FOR BUSINESS PROCESS MODELING Cristina Venera GEAMBAŞU 1 The Bucharest University of Economic

More information

Petri Net based Verification and

Petri Net based Verification and Petri Net based Verification and Reconfiguration of BPMN Represented Configured Construction Processes Faikcan Kog PhD candidate, Institute of Construction Informatics, Faculty of Civil Engineering, Technische

More information

The Course. http://www.cse.unsw.edu.au/~cs3153/

The Course. http://www.cse.unsw.edu.au/~cs3153/ The Course http://www.cse.unsw.edu.au/~cs3153/ Lecturers Dr Peter Höfner NICTA L5 building Prof Rob van Glabbeek NICTA L5 building Dr Ralf Huuck NICTA ATP building 2 Plan/Schedule (1) Where and When Tuesday,

More information

Software Quality Exercise 1

Software Quality Exercise 1 Software Quality Exercise Model Checking Information. Dates Release: 7.0.0.5pm Deadline: 07.0.0.5pm Discussion:.0.0. Formalities While this exercise can be solved and handed in in groups of three, every

More information

Business Process Modelling Languages

Business Process Modelling Languages Agent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Business Process Modelling Languages Paola Turci AOT Lab - DII - Università di Parma Business

More information

TEACHING MODEL CHECKING TO UNDERGRADUATES

TEACHING MODEL CHECKING TO UNDERGRADUATES STUDIA UNIV. BABEŞ BOLYAI, INFORMATICA, Volume LV, Number 3, 2010 TEACHING MODEL CHECKING TO UNDERGRADUATES A.VESCAN AND M. FRENŢIU Abstract. The way program verification is taught in our faculty is firstly

More information

Design, Modelling and Analysis of a Workflow Reconfiguration

Design, Modelling and Analysis of a Workflow Reconfiguration Design, Modelling and Analysis of a Workflow Reconfiguration Manuel Mazzara 1, Faisal Abouzaid 2, Nicola Dragoni 3, and Anirban Bhattacharyya 1 1 Newcastle University, Newcastle upon Tyne, UK {Manuel.Mazzara,

More information

Towards a Comprehensive Design-time Compliance Management: A Roadmap

Towards a Comprehensive Design-time Compliance Management: A Roadmap Towards a Comprehensive Design-time Management: A Roadmap Amal Elgammal, Ph.D. Candidate, Tilburg, The Netherlands, a.f.s.a.elgammal@uvt.nl Oktay Turetken, Post-doc Researcher, Tilburg, The Netherlands,

More information

Tool Support for Model Checking of Web application designs *

Tool Support for Model Checking of Web application designs * Tool Support for Model Checking of Web application designs * Marco Brambilla 1, Jordi Cabot 2 and Nathalie Moreno 3 1 Dipartimento di Elettronica e Informazione, Politecnico di Milano Piazza L. Da Vinci,

More information

Policy Modeling and Compliance Verification in Enterprise Software Systems: a Survey

Policy Modeling and Compliance Verification in Enterprise Software Systems: a Survey Policy Modeling and Compliance Verification in Enterprise Software Systems: a Survey George Chatzikonstantinou, Kostas Kontogiannis National Technical University of Athens September 24, 2012 MESOCA 12,

More information

Using Patterns and Composite Propositions to Automate the Generation of Complex LTL

Using Patterns and Composite Propositions to Automate the Generation of Complex LTL University of Texas at El Paso DigitalCommons@UTEP Departmental Technical Reports (CS) Department of Computer Science 8-1-2007 Using Patterns and Composite Propositions to Automate the Generation of Complex

More information

Model Checking: An Introduction

Model Checking: An Introduction Announcements Model Checking: An Introduction Meeting 2 Office hours M 1:30pm-2:30pm W 5:30pm-6:30pm (after class) and by appointment ECOT 621 Moodle problems? Fundamentals of Programming Languages CSCI

More information

Testing XPath Queries using Model Checking

Testing XPath Queries using Model Checking Testing XPath Queries using Model Checking Claudio de la Riva, Javier Tuya, José García-Fanjul Computer Science Department, University of Oviedo Phone +34 98 518 26 64, Fax +34 98 518 21 56 [claudio tuya

More information

LTL-based Verification of. Reconfigurable Workflows

LTL-based Verification of. Reconfigurable Workflows Applied Mathematical Sciences, Vol. 8, 2014, no. 172, 8581-8600 HIKARI Ltd, www.m-hikari.com http://dx.doi.org/10.12988/ams.2014.410816 LTL-based Verification of Reconfigurable Workflows Manuel Mazzara

More information

ICT353/532 Advanced Business Analysis & Design

ICT353/532 Advanced Business Analysis & Design ICT353/532 Advanced Business Analysis & Design Topic 5 (Part 2) Tools and Techniques for Business Process Modelling Ronald K. Shiflet Ronald.Kevin@kaplan.com Readings and Resources Havey, M. (2005) Essen%al

More information

CISC422/853: Formal Methods

CISC422/853: Formal Methods Outline CISC422/853: Formal Methods in Software Engineering: Computer-Aided Verification Topic 7: Specifying, or How to Describe How the System Should (or Should Not) Behave Juergen Dingel Feb, 2009 Readings:

More information

Leveraging Integrated Tools for Model-Based Analysis of Service Compositions

Leveraging Integrated Tools for Model-Based Analysis of Service Compositions Leveraging Integrated Tools for Model-Based Analysis of Service Compositions Howard Foster and Philip Mayer London Software Systems, Imperial College London London, United Kingdom Ludwig-Maximilians-Universität,

More information

Validated Templates for Specification of Complex LTL Formulas

Validated Templates for Specification of Complex LTL Formulas Validated Templates for Specification of Complex LTL Formulas Salamah Salamah Department of Electrical, computer, Software, and Systems Engineering Embry Riddle Aeronautical University 600 S. Clyde Morris

More information

http://aejm.ca Journal of Mathematics http://rema.ca Volume 1, Number 1, Summer 2006 pp. 69 86

http://aejm.ca Journal of Mathematics http://rema.ca Volume 1, Number 1, Summer 2006 pp. 69 86 Atlantic Electronic http://aejm.ca Journal of Mathematics http://rema.ca Volume 1, Number 1, Summer 2006 pp. 69 86 AUTOMATED RECOGNITION OF STUTTER INVARIANCE OF LTL FORMULAS Jeffrey Dallien 1 and Wendy

More information

Development of global specification for dynamically adaptive software

Development of global specification for dynamically adaptive software Development of global specification for dynamically adaptive software Yongwang Zhao School of Computer Science & Engineering Beihang University zhaoyw@act.buaa.edu.cn 22/02/2013 1 2 About me Assistant

More information

Model Checking based Software Verification

Model Checking based Software Verification Model Checking based Software Verification 18.5-2006 Keijo Heljanko Keijo.Heljanko@tkk.fi Department of Computer Science and Engineering Helsinki University of Technology http://www.tcs.tkk.fi/~kepa/ 1/24

More information

Applying Model Checking to Destructive Testing and Analysis of Software System

Applying Model Checking to Destructive Testing and Analysis of Software System 1254 JOURNAL OF SOFTWARE, VOL. 8, NO. 5, MAY 2013 Applying Mel Checking to Destructive Testing and Analysis of Software System Hiroki Kumamoto, Takahisa Mizuno, Kensuke Narita, Shin-ya Nishizaki Department

More information

Business Process Modeling Information Systems in Industry (372-1-4207 )

Business Process Modeling Information Systems in Industry (372-1-4207 ) Business Process Modeling Information Systems in Industry (372-1-4207 ) Arnon Sturm The material of this presentation is adopted from various people including:, Pnina Soffer, Iris Reinhartz-Berger 1 Outline

More information

Development of dynamically evolving and self-adaptive software. 1. Background

Development of dynamically evolving and self-adaptive software. 1. Background Development of dynamically evolving and self-adaptive software 1. Background LASER 2013 Isola d Elba, September 2013 Carlo Ghezzi Politecnico di Milano Deep-SE Group @ DEIB 1 Requirements Functional requirements

More information

Budapest University of Technology and Economics Department of Measurement and Information Systems. Business Process Modeling

Budapest University of Technology and Economics Department of Measurement and Information Systems. Business Process Modeling Budapest University of Technology and Economics Department of Measurement and Information Systems Business Process Modeling Process, business process Workflow: sequence of given steps executed in order

More information

Introduction to Software Verification

Introduction to Software Verification Introduction to Software Verification Orna Grumberg Lectures Material winter 2013-14 Lecture 4 5.11.13 Model Checking Automated formal verification: A different approach to formal verification Model Checking

More information

An LTL Specification and Verification of a Mobile Teleconferencing System

An LTL Specification and Verification of a Mobile Teleconferencing System An LTL Specification and Verification of a Mobile Teleconferencing System Yassine ELGHAYAM*, Mohammed OUZZIF** and Mohammed ERRADI* *Laboratoire Alkhawarizmi de Génie Informatique, Université Med-V Souissi

More information

WoPeD - An Educational Tool for Workflow Nets

WoPeD - An Educational Tool for Workflow Nets WoPeD - An Educational Tool for Workflow Nets Thomas Freytag, Cooperative State University (DHBW) Karlsruhe, Germany freytag@dhbw-karlsruhe.de Martin Sänger, 1&1 Internet AG, Karlsruhe, Germany m.saenger09@web.de

More information

Instantiation Semantics for Process Models

Instantiation Semantics for Process Models Instantiation Semantics for Process Models Gero Decker 1 and Jan Mendling 2 1 Hasso-Plattner-Institute, University of Potsdam, Germany gero.decker@hpi.uni-potsdam.de 2 Queensland University of Technology,

More information

Verifying Multi-Agent Programs by Model Checking

Verifying Multi-Agent Programs by Model Checking Verifying Multi-Agent Programs by Model Checking Rafael H. Bordini 1, Michael Fisher 2, Willem Visser 3, and Michael Wooldridge 4 1 University of Durham, U.K. R.Bordini@durham.ac.uk 2 University of Liverpool,

More information

Process Modeling Notations and Workflow Patterns

Process Modeling Notations and Workflow Patterns Process Modeling Notations and Workflow Patterns Stephen A. White, IBM Corp., United States ABSTRACT The research work of Wil van der Aalst, Arthur ter Hofstede, Bartek Kiepuszewski, and Alistair Barros

More information

Test Case Generation for Ultimately Periodic Paths Joint work with Saddek Bensalem Hongyang Qu Stavros Tripakis Lenore Zuck Accepted to HVC 2007 How to find the condition to execute a path? (weakest precondition

More information

Ensuring Quality in Business-driven Development of IT Systems using Workflow Patterns

Ensuring Quality in Business-driven Development of IT Systems using Workflow Patterns Ensuring Quality in Business-driven Development of IT Systems using Workflow Patterns Masud Fazal-Baqaie Datenbank- und Informationssysteme AG Engels What is a Business Process? A business process is a

More information

VeriTech - A Framework for Translating among Model Description Notations

VeriTech - A Framework for Translating among Model Description Notations Software Tools for Technology Transfer manuscript No. (will be inserted by the editor) VeriTech - A Framework for Translating among Model Description Notations Orna Grumberg and Shmuel Katz Computer Science

More information

Access Control Based on Dynamic Monitoring for Detecting Software Malicious Behaviours

Access Control Based on Dynamic Monitoring for Detecting Software Malicious Behaviours Access Control Based on Dynamic Monitoring for Detecting Software Malicious Behaviours K. Adi, L. Sullivan & A. El Kabbal Computer Security Research Laboratory http://w3.uqo.ca/lrsi NCAC'05 1 Motivation

More information

University of Konstanz Department of Computer and Information Science

University of Konstanz Department of Computer and Information Science Technical Report soft-08-05, Chair for Software Engineering, University of Konstanz DRAFT Copyright by the authors 2008 University of Konstanz Department of Computer and Information Science Technical Report

More information

A Classification of Model Checking-Based Verification Approaches for Software Models

A Classification of Model Checking-Based Verification Approaches for Software Models Volt Second Workshop on Verification Of Model Transformations, 2013, A Classification of Model Checking-Based Verification Approaches for Software Models Sebastian Gabmeyer a Petra Brosch a Martina Seidl

More information

Software safety - DEF-STAN 00-55

Software safety - DEF-STAN 00-55 Software safety - DEF-STAN 00-55 Where safety is dependent on the safety related software (SRS) fully meeting its requirements, demonstrating safety is equivalent to demonstrating correctness with respect

More information

SHARED HASH TABLES IN PARALLEL MODEL CHECKING

SHARED HASH TABLES IN PARALLEL MODEL CHECKING SHARED HASH TABLES IN PARALLEL MODEL CHECKING IPA LENTEDAGEN 2010 ALFONS LAARMAN JOINT WORK WITH MICHAEL WEBER AND JACO VAN DE POL 23/4/2010 AGENDA Introduction Goal and motivation What is model checking?

More information

Process Modeling Notations and Workflow Patterns

Process Modeling Notations and Workflow Patterns Process Modeling Notations and Workflow Patterns Stephen A. White IBM Corporation ABSTRACT The research work of Wil van der Aalst, Arthur ter Hofstede, Bartek Kiepuszewski, and Alistair Barros has resulted

More information

State Space Analysis: Properties, Reachability Graph, and Coverability graph. prof.dr.ir. Wil van der Aalst

State Space Analysis: Properties, Reachability Graph, and Coverability graph. prof.dr.ir. Wil van der Aalst State Space Analysis: Properties, Reachability Graph, and Coverability graph prof.dr.ir. Wil van der Aalst Outline Motivation Formalization Basic properties Reachability graph Coverability graph PAGE 1

More information

Qualitative and Quantitative Analysis of Workflows Based on the UML Activity Diagram and Petri Net

Qualitative and Quantitative Analysis of Workflows Based on the UML Activity Diagram and Petri Net Qualitative and Quantitative Analysis of Workflows Based on the UML Activity Diagram and Petri Net KWAN HEE HAN *, SEOCK KYU YOO **, BOHYUN KIM *** Department of Industrial & Systems Engineering, Engineering

More information

Dynamic Business Process Management based on Process Change Patterns

Dynamic Business Process Management based on Process Change Patterns 2007 International Conference on Convergence Information Technology Dynamic Business Process Management based on Process Change Patterns Dongsoo Kim 1, Minsoo Kim 2, Hoontae Kim 3 1 Department of Industrial

More information

Transformation of BPMN models for Behaviour Analysis

Transformation of BPMN models for Behaviour Analysis Transformation of BPMN models for Behaviour Analysis Ivo Raedts 1, Marija Petković 1, Yaroslav S. Usenko 1, Jan Martijn van der Werf 1, Jan Friso Groote 1, Lou Somers 1 1 LaQuSo, Laboratory for Quality

More information

BPEL. A Step by Step Guide: Model-Driven Generation with. Enterprise Architect. T his document will teach you how to use the Business Process

BPEL. A Step by Step Guide: Model-Driven Generation with. Enterprise Architect. T his document will teach you how to use the Business Process BPEL A Step by Step Guide: Model-Driven Generation with Enterprise Architect T his document will teach you how to use the Business Process Modeling Notation (BPMN 1.1) as a visual approach to producing

More information

CIS 842: Specification and Verification of Reactive Systems. Lecture SPIN-INTRO: Introduction To SPIN

CIS 842: Specification and Verification of Reactive Systems. Lecture SPIN-INTRO: Introduction To SPIN CIS 842: Specification and Verification of Reactive Systems Lecture SPIN-INTRO: Introduction To SPIN Copyright 2001, Matt Dwyer, John Hatcliff. The syllabus and all lectures for this course are copyrighted

More information

Composing Services in SOA: Workflow Design, Usage and Patterns

Composing Services in SOA: Workflow Design, Usage and Patterns Composing Services in SOA: Workflow Design, Usage and Patterns Matti Koskimies 3.10.2006 Seminar on Service-Oriented Software Engineering Intro I What are workflows? systems that help organizations to

More information

Toward Model-Based Verification of Adaptive Allocation Managers

Toward Model-Based Verification of Adaptive Allocation Managers Toward Model-Based Verification of Adaptive Allocation Managers William Leal, Frank Drews, Chang Liu, Lonnie Welch Ohio University { leal@cs.ohiou.edu, drews@ohiou.edu, changliu@cs.ohiou.edu, welch@ohio.edu

More information

Algorithmic Software Verification

Algorithmic Software Verification Algorithmic Software Verification (LTL Model Checking) Azadeh Farzan What is Verification Anyway? Proving (in a formal way) that program satisfies a specification written in a logical language. Formal

More information

Formal analysis of BPMN via a translation into COWS

Formal analysis of BPMN via a translation into COWS Formal analysis of BPMN via a translation into COWS Davide Prandi 1, Paola Quaglia 2, and Nicola Zannone 3 1 Dip. di Medicina Sperimentale e Clinica, Univ. Magna Graecia di Catanzaro, Italy 2 Dip. di Ing.

More information

A process model is a description of a process. Process models are often associated with business processes.

A process model is a description of a process. Process models are often associated with business processes. Process modeling A process model is a description of a process. Process models are often associated with business processes. A business process is a collection of related, structured activities that produce

More information

T-79.186 Reactive Systems: Introduction and Finite State Automata

T-79.186 Reactive Systems: Introduction and Finite State Automata T-79.186 Reactive Systems: Introduction and Finite State Automata Timo Latvala 14.1.2004 Reactive Systems: Introduction and Finite State Automata 1-1 Reactive Systems Reactive systems are a class of software

More information

An Automated Workflow System Geared Towards Consumer Goods and Services Companies

An Automated Workflow System Geared Towards Consumer Goods and Services Companies Proceedings of the 2014 International Conference on Industrial Engineering and Operations Management Bali, Indonesia, January 7 9, 2014 An Automated Workflow System Geared Towards Consumer Goods and Services

More information

A CSPm Model for the Procure to Pay Case Study

A CSPm Model for the Procure to Pay Case Study A CSPm Model for the Procure to Pay Case Study Andreas V. Hense Bonn-Rhein-Sieg University oas, Grantham-Allee 20, 53757 Sankt Augustin, Germany, andreas.hense@brsu.de Abstract. The model presented here

More information

Business Process Modeling

Business Process Modeling Business Process Concepts Process Mining Kelly Rosa Braghetto Instituto de Matemática e Estatística Universidade de São Paulo kellyrb@ime.usp.br January 30, 2009 1 / 41 Business Process Concepts Process

More information

Model Checking Distributed Software

Model Checking Distributed Software Model Checking Distributed Software Sagar Chaki September 19, 2014 Software Engineering Institute Carnegie Mellon University Pittsburgh, PA 15213 Model Checking and Me 1997 : Ed visits IIT Kharagpur Just

More information

MODEL CHECKING CONCURRENT AND REAL-TIME SYSTEMS: THE PAT APPROACH. LIU YANG (B.Sc. (Hons.), NUS)

MODEL CHECKING CONCURRENT AND REAL-TIME SYSTEMS: THE PAT APPROACH. LIU YANG (B.Sc. (Hons.), NUS) MODEL CHECKING CONCURRENT AND REAL-TIME SYSTEMS: THE PAT APPROACH LIU YANG (B.Sc. (Hons.), NUS) A THESIS SUBMITTED FOR THE DEGREE OF DOCTOR OF PHILOSOPHY DEPARTMENT OF COMPUTER SCIENCE NATIONAL UNIVERSITY

More information

Integrating model-checking architectural analysis and validation in a real software life-cycle

Integrating model-checking architectural analysis and validation in a real software life-cycle Integrating model-checking architectural analysis and validation in a real software life-cycle Daniele Compare 1, Paola Inverardi 2, Patrizio Pelliccione 2, and Alessandra Sebastiani 1 1 Lab NMS C2, Marconi

More information

The Need for a Choreography-aware Service Bus

The Need for a Choreography-aware Service Bus Institute of Architecture of Application Systems The Need for a Choreography-aware Service Bus Oliver Kopp, Tammo van Lessen, Jörg Nitzsche Institute of Architecture of Application Systems, University

More information

Workflow Management for Health Care Processes Meets Formal Verification

Workflow Management for Health Care Processes Meets Formal Verification Workflow Management for Health Care Processes Meets Formal Verification Fazle Rabbi and Wendy MacCaull* *With valuable input & discussions from Wang, Mashiyat, Leyla, Crawford, Graham, Jewers and numerous

More information

Towards an Intelligent Workflow Designer based on the Reuse of Workflow Patterns

Towards an Intelligent Workflow Designer based on the Reuse of Workflow Patterns Towards an Intelligent Workflow Designer based on the Reuse of Workflow Patterns 1 Cirano Iochpe, Carolina Chiao 1, Guillermo Hess 1, Gleison Nascimento 1 Federal University of Rio Grande do Sul Institute

More information

An Approach to Concurrent Java Programs Debugging and Run-Time Analysis

An Approach to Concurrent Java Programs Debugging and Run-Time Analysis University of West Bohemia in Pilsen Department of Computer Science and Engineering Univerzitní 8 30614 Pilsen Czech Republic An Approach to Concurrent Java Programs Debugging and Run-Time Analysis Jaroslav

More information

Formal verification of contracts for synchronous software components using NuSMV

Formal verification of contracts for synchronous software components using NuSMV Formal verification of contracts for synchronous software components using NuSMV Tobias Polzer Lehrstuhl für Informatik 8 Bachelorarbeit 13.05.2014 1 / 19 Problem description and goals Problem description

More information

Testing LTL Formula Translation into Büchi Automata

Testing LTL Formula Translation into Büchi Automata Testing LTL Formula Translation into Büchi Automata Heikki Tauriainen and Keijo Heljanko Helsinki University of Technology, Laboratory for Theoretical Computer Science, P. O. Box 5400, FIN-02015 HUT, Finland

More information

Business Process Modelling Notation A tutorial

Business Process Modelling Notation A tutorial Business Process Modelling Notation A tutorial Sam Mancarella Chief Technology Officer Sparx Systems sam.mancarella@sparxsystems.com OMG SOA in Healthcare January 14, 2011 Tutorial Objectives This tutorial

More information

Using UML Part Two Behavioral Modeling Diagrams

Using UML Part Two Behavioral Modeling Diagrams UML Tutorials Using UML Part Two Behavioral Modeling Diagrams by Sparx Systems All material Sparx Systems 2007 Sparx Systems 2007 Page 1 Trademarks Object Management Group, OMG, Unified Modeling Language,

More information

Testing Introduction. IEEE Definitions

Testing Introduction. IEEE Definitions Testing Introduction IEEE Definitions Software testing is the process of analyzing a software item to detect the differences between existing and required conditions (that is, bugs) and to evaluate the

More information

A Software Framework for Risk-Aware Business Process Management

A Software Framework for Risk-Aware Business Process Management A Software Framework for Risk-Aware Business Management Raffaele Conforti 1, Marcello La Rosa 1,2, Arthur H.M. ter Hofstede 1,4, Giancarlo Fortino 3, Massimiliano de Leoni 4, Wil M.P. van der Aalst 4,1,

More information

Traditional Software Development. Model Requirements and JAVA Programs. Formal Verification & Validation. What is a state?

Traditional Software Development. Model Requirements and JAVA Programs. Formal Verification & Validation. What is a state? Mel Requirements and JAVA Programs MVP The Waterfall Mel Problem Area Traditional Software Develoment Analysis REVIEWS Design Costly wrt time and money. Errors are found too late (or maybe never). SPIN/PROMELA

More information

A Cost-object Model for Activity Based Costing Simulation of Business Processes

A Cost-object Model for Activity Based Costing Simulation of Business Processes 204 UKSim-AMSS 8th European Modelling Symposium A Cost-object Model for Activity Based Costing Simulation of Business Processes Vincenzo Cartelli, Giuseppe Di Modica, Daniele Manni, Orazio Tomarchio Department

More information