MODEL CHECKING OF SERVICES WORKFLOW RECONFIGURATION: A PERSPECTIVE ON DEPENDABILITY

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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 [email protected] Readings and Resources Havey, M. (2005) Essen%al

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

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

Model Checking based Software Verification

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

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

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

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 [email protected] Martin Sänger, 1&1 Internet AG, Karlsruhe, Germany [email protected]

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

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

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

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

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

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

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

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

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

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

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 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

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

Model checking test models. Author: Kevin de Berk Supervisors: Prof. dr. Wan Fokkink, dr. ir. Machiel van der Bijl

Model checking test models. Author: Kevin de Berk Supervisors: Prof. dr. Wan Fokkink, dr. ir. Machiel van der Bijl Model checking test models Author: Kevin de Berk Supervisors: Prof. dr. Wan Fokkink, dr. ir. Machiel van der Bijl February 14, 2014 Abstract This thesis is about model checking testing models. These testing

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

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 [email protected] OMG SOA in Healthcare January 14, 2011 Tutorial Objectives This tutorial

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, [email protected] Abstract. The model presented here

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

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

Feature. Applications of Business Process Analytics and Mining for Internal Control. World

Feature. Applications of Business Process Analytics and Mining for Internal Control. World Feature Filip Caron is a doctoral researcher in the Department of Decision Sciences and Information Management, Information Systems Group, at the Katholieke Universiteit Leuven (Flanders, Belgium). Jan

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

A Survey of Formal Business Process Verification: From Soundness to Variability

A Survey of Formal Business Process Verification: From Soundness to Variability A Survey of Formal Business Process Verification: From Soundness to Variability Heerko Groefsema and Doina Bucur Johann Bernoulli Institute for Mathematics and Computer Science, University of Groningen,

More information

From Business World to Software World: Deriving Class Diagrams from Business Process Models

From Business World to Software World: Deriving Class Diagrams from Business Process Models From Business World to Software World: Deriving Class Diagrams from Business Process Models WARARAT RUNGWORAWUT 1 AND TWITTIE SENIVONGSE 2 Department of Computer Engineering, Chulalongkorn University 254

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

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

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

Workflow Management Models and ConDec

Workflow Management Models and ConDec A Declarative Approach for Flexible Business Processes Management M. Pesic and W.M.P. van der Aalst Department of Technology Management, Eindhoven University of Technology, P.O.Box 513, NL-5600 MB, Eindhoven,

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

Simulation-based Evaluation of Workflow Escalation Strategies

Simulation-based Evaluation of Workflow Escalation Strategies Simulation-based Evaluation of Workflow Escalation Strategies Ka-Leong Chan 1, Yain-Whar Si 1, Marlon Dumas 2 1 Faculty of Science and Technology, University of Macau 2 Institute of Computer Science, University

More information

Software testing. Objectives

Software testing. Objectives Software testing cmsc435-1 Objectives To discuss the distinctions between validation testing and defect testing To describe the principles of system and component testing To describe strategies for generating

More information

Mapping from Business Processes to Requirements Specification

Mapping from Business Processes to Requirements Specification Extended abstract 1/5 Mapping from Business Processes to Requirements Specification Svatopluk Štolfa, Ivo Vondrák Department of Computer Science, VŠB - Technical University of Ostrava, 17.listopadu 15,

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