Checking the Realizability of BPMN 2.0 Choreographies

Size: px
Start display at page:

Download "Checking the Realizability of BPMN 2.0 Choreographies"

Transcription

1 Checking the Realizability of PMN 2.0 Choreographies Gwen Salaün Grenoble INP, INRI, France joint work with Pascal Poizat LRI, University of Evry, France 1

2 Realizability of Choreographies Interactions among a set of services involved in a new system can be described from a global point of view using choreography specification languages Given a choreography specification, local implementations, namely peers, can be automatically generated via projection However, peers do not always implement the choreography: this problem is known as realizability a 1,2 c 1,2 b 2,3? a! c! a? c? b! b? peer 1 peer 2 peer 3 2

3 Contributions We propose an encoding of PMN 2.0 choreographies into the LNT specification language We chose LNT because: - It provides a good level of expressiveness for describing PMN constructs - It is equipped with CDP which offers state-of-the-art tools for state space exploration and verification This encoding allows us to: - utomate service peer generation - Verify choreography specifications using CDP - Check the realizability for both synchronous and asynchronous communication 3

4 Outline 1. Preliminaries: PMN 2.0, LNT, and CDP 2. Encoding into LNT 3. Verification and Realizability 4. Tool Support 5. Conuding Remarks 4

5 PMN 2.0 Choreographies Choreography tasks and loop types M1 M1 M1 M1 M1 Chor. Task Name Chor. Task Name Chor. Task Name Chor. Task Name Chor. Task Name M2 (a) (b) (c) (d) (e) Control flows and gateways sequence flow start state end state or exusive gateway inusive gateway parallel gateway or event-based gateway CT2 CT1 CT3 diverging pattern (diverging parallel gateway) CT2 CT1 CT3 converging pattern (converging parallel gateway) 5

6 Running Example n e-booking system involving four peers: a booking system (), a database (db), an online bank service (bk), and a ient () connect request abort CT1 CT2 CT3 reply book pay CT4 CT5 bk db CT6 store Peers are described using Labelled Transition Systems (LTSs) 6

7 LNT LOTOS NT (LNT) is a value-passing process algebra with userfriendly syntax and operational semantics LNT is an imperative-like language where you can specify data types, functions (pattern matching and recursion), and processes Excerpt of the LNT process grammar: ::= stop G(!E,?X) where E if E then 1 else 2 end if x:=e hide G in end hide P [G1,...,Gm] (E1,...,En) select 1 [] [] n end select 1 ; 2 par G in 1 n end par Verification using CDP through an automated translation to LOTOS 7

8 Construction and nalysis of Distributed Processes (CDP) Design of asynchronous systems Concurrent processes Message-passing communication Nondeterministic behaviours CDP (INRI/CONVECS) Formal approach rooted in concurrency theory: process calculi, Labeled Transition Systems, bisimulations, branching temporal logics Many verification techniques: simulation, model and equivalence checking, compositional verification, test case generation, performance evaluation, etc. Numerous real-world applications: avionics, embedded systems, hardware design, middleware and software architectures, etc. 8

9 Outline 1. Preliminaries: PMN 2.0, LNT, and CDP 2. Encoding into LNT 3. Verification and Realizability 4. Tool Support 5. Conuding Remarks 9

10 Encoding PMN into LNT (1/3) Translation of PMN via state machines Sequence flow process s1[ ] s2[ ] end process Message sending process s1[ ] msg1; s2[ ] end process Message receiving Synchronous communication synchronous communication via FIFO message buffers process s1[ ] msg1_rec; s2[ ] end process 10

11 Encoding PMN into LNT (2/3) Exusive gateway Parallel gateway C select option_[ ] [] option_[ ] [] option_c[ ] end select C par option_[ ] option_[ ] option_c[ ] end par Parallel merge (multiple merges) merge 1 merge 2 hide sync1, sync2 in par sync1, sync2 -> option_[,sync1,sync2] sync1, sync2 -> option_[,sync1,sync2] sync2 -> option_c[,sync2] 11 end par

12 Encoding PMN into LNT (3/3) - Inusive gateway C Inusive Merging: nalogous to parallel merge Default case needs no synchronization select option_[ ] ((option_[ ][] null) (option_c[ ][] null)) []option_[ ] ((option_[ ][] null) (option_c[ ][] null)) []option_c[ ] ((option_[ ][] null) (option_[ ][] null)) []default[ ] end select 12

13 Outline 1. Preliminaries: PMN 2.0, LNT, and CDP 2. Encoding into LNT 3. Verification and Realizability 4. Tool Support 5. Conuding Remarks 13

14 Compilation and Verification LTS models can be generated using CDP exploration tools, and verified using the Evaluator model-checker E-booking system: LTS obtained by hiding sync_ messages, and minimizing the resulting LTS We can check that a ient can make a booking or abort only if a request has been issued (safety property): [ (not CL_S_REQUEST )*. ( CL_S_OOK or CL_S_ORT ) ] false 14

15 Realizability Checking Realizability is computed by comparing the PMN LTS with the system composed of interacting peers using behavioural equivalences If these two systems are equivalent, the choreography is realizable In case of asynchronous communication, we generate LNT code to implement bounded FIFO buffers, and associate a buffer to each peer apeer_ apeer_db _db_store _db_store_rec buffer_ buffer_db input message output message interaction For asynchronous communication, undecidability is avoided by imposing buffer bounds or by using recent synchronizability results [asuultan-www11] 15

16 E-booking System Realizability Our running example is not realizable for both communication models (synchronous and asynchronous) The trace consisting of messages connect, request, reply, book appears in both systems, but _db_store is then in the distributed system, and not in the choreography LTS connect request abort CT1 CT2 reply book CT3 pay CT4 CT5 bk db CT6 store 16

17 E-booking System, Revisited We use a diverging parallel gateway instead and realizability checks return positive results for both communication models connect request abort CT1 CT2 CT3 reply pay book CT5 CT4 bk db CT6 store 17

18 Outline 1. Preliminaries: PMN 2.0, LNT, and CDP 2. Encoding into LNT 3. Verification and Realizability 4. Tool Support 5. Conuding Remarks 18

19 Tool Support Eipse IDE (Helios + PMN2 Editor) CDP PMN2 Choreography Encoding PMN2Py LOTOS NT Processes Model Retrieval Caesar Peer Models (LTS) Verification & Realizability Evaluator Py2LNT SVL script Reductor Intended Choreography Model (LTS) isimulator Feedback Verification & Realizability Results 19

20 Outline 1. Preliminaries: PMN 2.0, LNT, and CDP 2. Encoding into LNT 3. Verification and Realizability 4. Tool Support 5. Conuding Remarks 20

21 Conuding Remarks We have presented an encoding of PMN 2.0 choreographies into LNT, which makes the formal analysis of PMN possible using CDP verification tools s far as perspectives are concerned, we would like to: - Extend the suet of PMN choreographies accepted by our approach with hierarchical structuring aspects (sub- choreography) - Integrate looser realizability notions to our framework (pre-order, partial order, etc.) - Use recent compositional aggregation techniques [CrouzenLang-FSE11] to reduce intermediate state spaces size and computation times - Enforce realizability proposing smart projection techniques - pply our approach to a real-size case study in the e-governance domain 21

Checking the Realizability of BPMN 2.0 Choreographies

Checking the Realizability of BPMN 2.0 Choreographies Checking the Realizability of PMN 2.0 Choreographies Pascal Poizat, Gwen Salaün To cite this version: Pascal Poizat, Gwen Salaün. Checking the Realizability of PMN 2.0 Choreographies. 27th Symposium On

More information

Counterexample Guided Synthesis of Monitors for Realizability Enforcement. Matthias Güdemann Gwen Salaün Meriem Ouederni

Counterexample Guided Synthesis of Monitors for Realizability Enforcement. Matthias Güdemann Gwen Salaün Meriem Ouederni Counterexample Guided Synthesis of Monitors for Realizability Enforcement Matthias Güdemann Gwen Salaün Meriem Ouederni Choreographies Global contract specifications Participants, communication, message

More information

Reliable Self-Deployment of Cloud Applications

Reliable Self-Deployment of Cloud Applications Reliable Self-Deployment of Cloud Applications Xavier Etchevers 1, Gwen Salaün 2, Fabienne Boyer 3, Thierry Coupaye 1, Noel De Palma 3 1 Orange Labs, France 2 Grenoble INP, Inria, France 3 UJF-Grenoble

More information

Realizability of Choreographies using Process Algebra Encodings

Realizability of Choreographies using Process Algebra Encodings Realizability of Choreographies using Process Algebra Encodings Gwen Salaün 1 and Tevfik Bultan 2 1 University of Málaga, Spain salaun@lcc.uma.es 2 University of California, Santa Barbara, USA bultan@cs.ucsb.edu

More information

Realizability of Choreographies using Process Algebra Encodings

Realizability of Choreographies using Process Algebra Encodings IEEE TRANSACTIONS ON SERVICES COMPUTING 1 Realizability of Choreographies using Process Algebra Encodings Gwen Salaün, Tevfik Bultan, and Nima Roohi Abstract Service-oriented computing has emerged as a

More information

VBPMN: Automated Verification of BPMN Processes

VBPMN: Automated Verification of BPMN Processes VBPMN: Automated Verification of BPMN Processes Ajay Krishna 1, Pascal Poizat 2,3, and Gwen Salaün 1 1 Univ. Grenoble Alpes, CNRS, Grenoble INP, Inria, LIG, F-38000 Grenoble, France 2 Université Paris

More information

Using LNT Formal Descriptions for Model-Based Diagnosis

Using LNT Formal Descriptions for Model-Based Diagnosis Using LNT Formal Descriptions for Model-Based Diagnosis Birgit Hofer 1, Radu Mateescu 2, Wendelin Serwe 2, and Franz Wotawa 1 1 TU Graz, Institute for Software Technology 2 Univ. Grenoble Alpes, Inria,

More information

Asynchronous synthesis techniques for coordinating autonomic managers in the cloud

Asynchronous synthesis techniques for coordinating autonomic managers in the cloud Asynchronous synthesis techniques for coordinating autonomic managers in the cloud Rim Abid, Gwen Salaün, Noël De Palma To cite this version: Rim Abid, Gwen Salaün, Noël De Palma. Asynchronous synthesis

More information

Checking Business Process Evolution

Checking Business Process Evolution Checking Business Process Evolution Pascal Poizat 1,2, Gwen Salaün 3, and Ajay Krishna 3 1 Université Paris Lumières, Univ Paris Ouest, Nanterre, France 2 Sorbonne Universités, UPMC Univ Paris 06, CNRS,

More information

A step towards reconciling GALS industrial design with formal verification

A step towards reconciling GALS industrial design with formal verification A step towards reconciling GALS industrial design with formal verification Fatma Jebali Join work with Frédéric Lang & Radu Mateescu Inria Grenoble France LASER Summer School September 13 th, 2014 GALS:

More information

Promela and SPIN. Mads Dam Dept. Microelectronics and Information Technology Royal Institute of Technology, KTH. Promela and SPIN

Promela and SPIN. Mads Dam Dept. Microelectronics and Information Technology Royal Institute of Technology, KTH. Promela and SPIN Promela and SPIN Mads Dam Dept. Microelectronics and Information Technology Royal Institute of Technology, KTH Promela and SPIN Promela (Protocol Meta Language): Language for modelling discrete, event-driven

More information

Checking Business Process Evolution

Checking Business Process Evolution Checking Business Process Evolution Pascal Poizat, Gwen Salaün, Ajay Krishna To cite this version: Pascal Poizat, Gwen Salaün, Ajay Krishna. Checking Business Process Evolution. 13th International Conference

More information

Adaptation of Asynchronously Communicating Software

Adaptation of Asynchronously Communicating Software Adaptation of Asynchronously Communicating Software Carlos Canal, Gwen Salaün To cite this version: Carlos Canal, Gwen Salaün. Adaptation of Asynchronously Communicating Software. 12th International Conference

More information

Cyber Physical System Verification with SAL

Cyber Physical System Verification with SAL Cyber Physical System Verification with July 22, 2013 Cyber Physical System Verification with Outline 1 2 3 4 5 Cyber Physical System Verification with Table of Contents 1 2 3 4 5 Cyber Physical System

More information

Course on Probabilistic Methods in Concurrency. (Concurrent Languages for Probabilistic Asynchronous Communication) Lecture 1

Course on Probabilistic Methods in Concurrency. (Concurrent Languages for Probabilistic Asynchronous Communication) Lecture 1 Course on Probabilistic Methods in Concurrency (Concurrent Languages for Probabilistic Asynchronous Communication) Lecture 1 The pi-calculus and the asynchronous pi-calculus. Catuscia Palamidessi INRIA

More information

Resource-bound process algebras for Schedulability and Performance Analysis of Real-Time and Embedded Systems

Resource-bound process algebras for Schedulability and Performance Analysis of Real-Time and Embedded Systems Resource-bound process algebras for Schedulability and Performance Analysis of Real-Time and Embedded Systems Insup Lee 1, Oleg Sokolsky 1, Anna Philippou 2 1 RTG (Real-Time Systems Group) Department of

More information

Architecture as coordination: the Orc perspective

Architecture as coordination: the Orc perspective Architecture as coordination: the Orc perspective L.S. Barbosa Dept. Informática, Universidade do Minho Braga, Portugal DI-CCTC, UM, 2009 Introduction Basic calculus Functional core Orc(hestration) examples

More information

Orchestration vs Choreography

Orchestration vs Choreography Orchestration vs Choreography u In many cases, there is no unique point of invocation for the services n In these cases, we say that the system is a choreography n Let starts with an example: w Consider

More information

Formal Design of Dynamic Reconfiguration Protocol for Cloud Applications

Formal Design of Dynamic Reconfiguration Protocol for Cloud Applications Formal Design of Dynamic Reconfiguration Protocol for Cloud Applications Rim Abid, Gwen Salaün, Noel De Palma To cite this version: Rim Abid, Gwen Salaün, Noel De Palma. Formal Design of Dynamic Reconfiguration

More information

Realizability and Dynamic Reconfiguration of Chor Specifications

Realizability and Dynamic Reconfiguration of Chor Specifications Informatica 35 (2011) 39 49 39 Realizability and Dynamic Reconfiguration of Chor Specifications Nima Roohi Sharif University of Technology, Tehran, Iran E-mail: roohi@ce.sharif.edu Gwen Salaün INRIA Grenoble

More information

Automated Analysis of Industrial Workflow-based Models

Automated Analysis of Industrial Workflow-based Models Automated Analysis of Industrial Workflow-based Models Mario Cortes-Cornax Univ. Grenoble Alpes, CNRS, Grenoble INP, LIG, F-38000 Grenoble France ABSTRACT Adrian Mos Naver Labs Europe, Meylan, France Modelling

More information

A Deterministic Concurrent Language for Embedded Systems

A Deterministic Concurrent Language for Embedded Systems A Deterministic Concurrent Language for Embedded Systems Stephen A. Edwards Columbia University Joint work with Olivier Tardieu SHIM:A Deterministic Concurrent Language for Embedded Systems p. 1/38 Definition

More information

On the Expressiveness of Infinite Behavior and Name Scoping in Process Calculi

On the Expressiveness of Infinite Behavior and Name Scoping in Process Calculi On the Expressiveness of Infinite Behavior and Name Scoping in Process Calculi Pablo Giambiagi (KTH, Sweden) Gerardo Schneider (IRISA/INRIA) Speaker: Frank D. Valencia (Uppsala Univ., Sweden) FOSSACS 04,

More information

A Deterministic Concurrent Language for Embedded Systems

A Deterministic Concurrent Language for Embedded Systems SHIM:A A Deterministic Concurrent Language for Embedded Systems p. 1/28 A Deterministic Concurrent Language for Embedded Systems Stephen A. Edwards Columbia University Joint work with Olivier Tardieu SHIM:A

More information

Distributed Systems Programming (F21DS1) Formal Verification

Distributed Systems Programming (F21DS1) Formal Verification Distributed Systems Programming (F21DS1) Formal Verification Andrew Ireland Department of Computer Science School of Mathematical and Computer Sciences Heriot-Watt University Edinburgh Overview Focus on

More information

! Use of formal notations. ! in software system descriptions. ! for a broad range of effects. ! and varying levels of use. !

! Use of formal notations. ! in software system descriptions. ! for a broad range of effects. ! and varying levels of use. ! What Are Formal Methods? David S. Rosenblum ICS 221 Winter 2001! Use of formal notations! first-order logic, state machines, etc.! in software system descriptions! system models, constraints, specifications,

More information

Introduction to Model Checking

Introduction to Model Checking Introduction to Model Checking René Thiemann Institute of Computer Science University of Innsbruck WS 2007/2008 RT (ICS @ UIBK) week 4 1/23 Outline Promela - Syntax and Intuitive Meaning Promela - Formal

More information

Model-Based Adaptation of Software Communicating via FIFO Buffers

Model-Based Adaptation of Software Communicating via FIFO Buffers Model-Based Adaptation of Software Communicating via FIFO Buffers Carlos Canal, Gwen Salaün To cite this version: Carlos Canal, Gwen Salaün. Model-Based Adaptation of Software Communicating via FIFO Buffers.

More information

Process Modelling. Fault Tolerant Systems Research Group. Budapest University of Technology and Economics

Process Modelling. Fault Tolerant Systems Research Group. Budapest University of Technology and Economics Process Modelling Budapest University of Technology and Economics Fault Tolerant Systems Research Group Budapest University of Technology and Economics Department of Measurement and Information Systems

More information

Xuandong Li. BACH: Path-oriented Reachability Checker of Linear Hybrid Automata

Xuandong Li. BACH: Path-oriented Reachability Checker of Linear Hybrid Automata BACH: Path-oriented Reachability Checker of Linear Hybrid Automata Xuandong Li Department of Computer Science and Technology, Nanjing University, P.R.China Outline Preliminary Knowledge Path-oriented Reachability

More information

Automatic Distributed Code Generation from Formal Models of Asynchronous Processes Interacting by Multiway Rendezvous

Automatic Distributed Code Generation from Formal Models of Asynchronous Processes Interacting by Multiway Rendezvous Automatic Distributed Code Generation from Formal Models of Asynchronous Processes Interacting by Multiway Rendezvous Hugues Evrard, Frédéric Lang To cite this version: Hugues Evrard, Frédéric Lang. Automatic

More information

Static Analysis by A. I. of Embedded Critical Software

Static Analysis by A. I. of Embedded Critical Software Static Analysis by Abstract Interpretation of Embedded Critical Software Julien Bertrane ENS, Julien.bertrane@ens.fr Patrick Cousot ENS & CIMS, Patrick.Cousot@ens.fr Radhia Cousot CNRS & ENS, Radhia.Cousot@ens.fr

More information

A Deterministic Concurrent Language for Embedded Systems

A Deterministic Concurrent Language for Embedded Systems A Deterministic Concurrent Language for Embedded Systems Stephen A. Edwards Columbia University Joint work with Olivier Tardieu SHIM:A Deterministic Concurrent Language for Embedded Systems p. 1/30 Definition

More information

Introduction to Formal Methods

Introduction to Formal Methods 2008 Spring Software Special Development 1 Introduction to Formal Methods Part I : Formal Specification i JUNBEOM YOO jbyoo@knokuk.ac.kr Reference AS Specifier s Introduction to Formal lmethods Jeannette

More information

Cover Page. The handle holds various files of this Leiden University dissertation

Cover Page. The handle   holds various files of this Leiden University dissertation Cover Page The handle http://hdl.handle.net/1887/22891 holds various files of this Leiden University dissertation Author: Gouw, Stijn de Title: Combining monitoring with run-time assertion checking Issue

More information

To be or not programmable Dimitri Papadimitriou, Bernard Sales Alcatel-Lucent April 2013 COPYRIGHT 2011 ALCATEL-LUCENT. ALL RIGHTS RESERVED.

To be or not programmable Dimitri Papadimitriou, Bernard Sales Alcatel-Lucent April 2013 COPYRIGHT 2011 ALCATEL-LUCENT. ALL RIGHTS RESERVED. To be or not programmable Dimitri Papadimitriou, Bernard Sales Alcatel-Lucent April 2013 Introduction SDN research directions as outlined in IRTF RG outlines i) need for more flexibility and programmability

More information

Behavioural Equivalences and Abstraction Techniques. Natalia Sidorova

Behavioural Equivalences and Abstraction Techniques. Natalia Sidorova Behavioural Equivalences and Abstraction Techniques Natalia Sidorova Part 1: Behavioural Equivalences p. p. The elevator example once more How to compare this elevator model with some other? The cabin

More information

Process Modelling. Fault Tolerant Systems Research Group. Budapest University of Technology and Economics

Process Modelling. Fault Tolerant Systems Research Group. Budapest University of Technology and Economics Process Modelling Budapest University of Technology and Economics Fault Tolerant Systems Research Group Budapest University of Technology and Economics Department of Measurement and Information Systems

More information

DLC: Compiling a Concurrent System Formal Specification to a Distributed Implementation

DLC: Compiling a Concurrent System Formal Specification to a Distributed Implementation DLC: Compiling a Concurrent System Formal Specification to a Distributed Implementation Hugues Evrard Team CONVECS Inria Grenoble Rhône-Alpes & LIG Abstract. Formal methods can verify the correctness of

More information

Formal Analysis of the ACE Specification for Cache Coherent Systems-On-Chip

Formal Analysis of the ACE Specification for Cache Coherent Systems-On-Chip Formal Analysis of the ACE Specification for Cache Coherent Systems-On-Chip Abderahman KRIOUILE PhD student, STMicroelectronics Inria Rhône-Alpes LIG Wendelin SERWE Research scientist, Inria Rhône-Alpes

More information

A Specification Language for Distributed Components

A Specification Language for Distributed Components A Specification Language for Distributed Components Antonio Cansado Denis Caromel Ludovic Henrio Eric Madelaine Marcela Rivera Emil Salageanu 1 OASIS Team INRIA Sophia Antipolis, France Parallel, Distributed

More information

Chapter 8 Fault Tolerance

Chapter 8 Fault Tolerance DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN Chapter 8 Fault Tolerance Fault Tolerance Basic Concepts Being fault tolerant is strongly related to what

More information

Part 1.3 Modal I/O Transition Systems as Semantics of UML4SOA

Part 1.3 Modal I/O Transition Systems as Semantics of UML4SOA IMT 2013 Lucca, Italy September 2013 Part 1.3 Modal I/O Transition Systems as Semantics of UML4SOA Martin Wirsing LMU München in co-operation with Sebastian Bauer, Rolf Hennicker, Philip Mayer M. Wirsing

More information

Simply-Typed Lambda Calculus

Simply-Typed Lambda Calculus #1 Simply-Typed Lambda Calculus #2 Back to School What is operational semantics? When would you use contextual (small-step) semantics? What is denotational semantics? What is axiomatic semantics? What

More information

CIS 1.5 Course Objectives. a. Understand the concept of a program (i.e., a computer following a series of instructions)

CIS 1.5 Course Objectives. a. Understand the concept of a program (i.e., a computer following a series of instructions) By the end of this course, students should CIS 1.5 Course Objectives a. Understand the concept of a program (i.e., a computer following a series of instructions) b. Understand the concept of a variable

More information

1. In waterfall model, output of one phase is input to next phase. True or false.

1. In waterfall model, output of one phase is input to next phase. True or false. 1. In waterfall model, output of one phase is input to next phase. True or false. a) True b) False ANSWER: a) True Comment: The output of requirement gathering is creation of URS (User requirement specification)

More information

Metamodeling with Metamodels. Using. UML/MOF including OCL

Metamodeling with Metamodels. Using. UML/MOF including OCL Metamodeling with Metamodels Using UML/MOF including OCL Introducing Metamodels (Wikipedia) A metamodel is a model of a model An instantiation of metamodel gives a model Metamodeling is the process of

More information

Synchronous Specification

Synchronous Specification Translation Validation for Synchronous Specification in the Signal Compiler Van-Chan Ngo Jean-Pierre Talpin Thierry Gautier INRIA Rennes, France FORTE 2015 Construct a modular translation validationbased

More information

Modular Verification of Web Services Using Efficient Symbolic Encoding and Summarization

Modular Verification of Web Services Using Efficient Symbolic Encoding and Summarization Modular Verification of Web Services Using Efficient Symbolic Encoding and Summarization Fang Yu joint work with: Chao Wang, Aarti Gupta and Tevfik Bultan University of California, Santa Barbara and NEC

More information

Research on the Static Analysis Method of the Localization Embedded Platform Software Code Zhijie Gaoa, Ling Lu, Wen Jiao

Research on the Static Analysis Method of the Localization Embedded Platform Software Code Zhijie Gaoa, Ling Lu, Wen Jiao 6th International Conference on Information Engineering for Mechanics and Materials (ICIMM 2016) Research on the Static Analysis Method of the Localization Embedded Platform Software Code Zhijie Gaoa,

More information

Type Checking. Outline. General properties of type systems. Types in programming languages. Notation for type rules.

Type Checking. Outline. General properties of type systems. Types in programming languages. Notation for type rules. Outline Type Checking General properties of type systems Types in programming languages Notation for type rules Logical rules of inference Common type rules 2 Static Checking Refers to the compile-time

More information

Written Presentation: JoCaml, a Language for Concurrent Distributed and Mobile Programming

Written Presentation: JoCaml, a Language for Concurrent Distributed and Mobile Programming Written Presentation: JoCaml, a Language for Concurrent Distributed and Mobile Programming Nicolas Bettenburg 1 Universitaet des Saarlandes, D-66041 Saarbruecken, nicbet@studcs.uni-sb.de Abstract. As traditional

More information

4/6/2011. Model Checking. Encoding test specifications. Model Checking. Encoding test specifications. Model Checking CS 4271

4/6/2011. Model Checking. Encoding test specifications. Model Checking. Encoding test specifications. Model Checking CS 4271 Mel Checking LTL Property System Mel Mel Checking CS 4271 Mel Checking OR Abhik Roychoudhury http://www.comp.nus.edu.sg/~abhik Yes No, with Counter-example trace 2 Recap: Mel Checking for mel-based testing

More information

Outline. General properties of type systems. Types in programming languages. Notation for type rules. Common type rules. Logical rules of inference

Outline. General properties of type systems. Types in programming languages. Notation for type rules. Common type rules. Logical rules of inference Type Checking Outline General properties of type systems Types in programming languages Notation for type rules Logical rules of inference Common type rules 2 Static Checking Refers to the compile-time

More information

Predictable Execution with IEC 61499

Predictable Execution with IEC 61499 Predictable Execution with IEC 61499 Li Hsien Yoong The University of Auckland Sequence of presentation What has been achieved: Deterministic behaviour of centralized IEC 61499 systems Current goal: Deterministic

More information

Enterprise Architect Training Courses

Enterprise Architect Training Courses On-site training from as little as 135 per delegate per day! Enterprise Architect Training Courses Tassc trainers are expert practitioners in Enterprise Architect with over 10 years experience in object

More information

A Model-based Certification Framework for the EnergyBus Standard

A Model-based Certification Framework for the EnergyBus Standard A Model-based Certification Framework for the EnergyBus Standard Alexander Graf- Brill, Saarland University Holger Hermanns, Saarland University Hubert Garavel, Inria Grenoble 1 Light Electric Vehicles

More information

On the Semantics of Communicating Hardware Processes and their Translation into LOTOS for the Verification of Asynchronous Circuits with CADP

On the Semantics of Communicating Hardware Processes and their Translation into LOTOS for the Verification of Asynchronous Circuits with CADP On the Semantics of Communicating Hardware Processes and their Translation into LOTOS for the Verification of Asynchronous Circuits with CADP Hubert Garavel, Gwen Salaun, Wendelin Serwe To cite this version:

More information

Software verification for ubiquitous computing

Software verification for ubiquitous computing Software verification for ubiquitous computing Marta Kwiatkowska Computing Laboratory, University of Oxford QA 09, Grenoble, June 2009 Software everywhere Electronic devices, ever smaller Laptops, phones,

More information

Model-based Analysis of Event-driven Distributed Real-time Embedded Systems

Model-based Analysis of Event-driven Distributed Real-time Embedded Systems Model-based Analysis of Event-driven Distributed Real-time Embedded Systems Gabor Madl Committee Chancellor s Professor Nikil Dutt (Chair) Professor Tony Givargis Professor Ian Harris University of California,

More information

TURTLE Four Weddings and a Tutorial

TURTLE Four Weddings and a Tutorial TURTLE Four Weddings and a Tutorial L. Apvrille, P. de Saqui-Sannes ERTS 2 Toulouse, France May 20, 2010 Rationale Verification-centric modeling of real-time and distributed systems Real-time UML profile

More information

The learning objectives of this chapter are the followings. At the end of this chapter, you shall

The learning objectives of this chapter are the followings. At the end of this chapter, you shall Chapter 5 Sequence diagrams In the previous chapters, we have seen different diagrams. Use case diagrams describe tasks that a system is supposed to perform. It gives high-level information about how a

More information

An improved fault-tolerant routing algorithm for a Network-on-Chip derived with formal analysis

An improved fault-tolerant routing algorithm for a Network-on-Chip derived with formal analysis An improved fault-tolerant routing algorithm for a Network-on-Chip derived with formal analysis Zhen Zhang, Wendelin Serwe, Jian Wu, Tomohiro Yoneda, Hao Zheng, Chris Myers To cite this version: Zhen Zhang,

More information

Validating Distributed Object and Component Designs

Validating Distributed Object and Component Designs Validating Distributed Object and Component Designs Nima Kaveh and Wolfgang Emmerich Department of Computer Science University College London Gower Street, London WC1E 6BT, UK {N.Kaveh W.Emmerich}@cs.ucl.ac.uk

More information

Asynchronous Coordination of Stateful Autonomic Managers in the Cloud

Asynchronous Coordination of Stateful Autonomic Managers in the Cloud Asynchronous Coordination of Stateful Autonomic Managers in the Cloud Rim Abid, Gwen Salaün, Noel De Palma, Soguy Mak-Kare Gueye To cite this version: Rim Abid, Gwen Salaün, Noel De Palma, Soguy Mak-Kare

More information

Complex Systems Design &DistributedCalculusandCoordination

Complex Systems Design &DistributedCalculusandCoordination Complex Systems Design &DistributedCalculusandCoordination Concurrency and Process Algebras: Theory and Practice - Klaim Francesco Tiezzi University of Camerino francesco.tiezzi@unicam.it A.A. 2014/2015

More information

Enabling Flexibility in Process-Aware

Enabling Flexibility in Process-Aware Manfred Reichert Barbara Weber Enabling Flexibility in Process-Aware Information Systems Challenges, Methods, Technologies ^ Springer Part I Basic Concepts and Flexibility Issues 1 Introduction 3 1.1 Motivation

More information

COMP 181. Agenda. Midterm topics. Today: type checking. Purpose of types. Type errors. Type checking

COMP 181. Agenda. Midterm topics. Today: type checking. Purpose of types. Type errors. Type checking Agenda COMP 181 Type checking October 21, 2009 Next week OOPSLA: Object-oriented Programming Systems Languages and Applications One of the top PL conferences Monday (Oct 26 th ) In-class midterm Review

More information

Formal Verification. Lecture 10

Formal Verification. Lecture 10 Formal Verification Lecture 10 Formal Verification Formal verification relies on Descriptions of the properties or requirements of interest Descriptions of systems to be analyzed, and rely on underlying

More information

Formal Modeling and Verification of GALS Systems Using GRL and CADP

Formal Modeling and Verification of GALS Systems Using GRL and CADP Formal Modeling and Verification of GALS Systems Using GRL and CADP Fatma Jebali, Frédéric Lang, Eric Léo, Radu Mateescu To cite this version: Fatma Jebali, Frédéric Lang, Eric Léo, Radu Mateescu. Formal

More information

Motivation: Model-driven. driven Engineering. Semantics of Model Transformation. Reiko Heckel University of Leicester, UK

Motivation: Model-driven. driven Engineering. Semantics of Model Transformation. Reiko Heckel University of Leicester, UK Semantics of Model Transformation Reiko Heckel University of Leicester, UK, University of Birmingham, 1 March 2007 Motivation: Model-driven driven Engineering Focus and primary artifacts are models instead

More information

INF672 Protocol Safety and Verification. Karthik Bhargavan Xavier Rival Thomas Clausen

INF672 Protocol Safety and Verification. Karthik Bhargavan Xavier Rival Thomas Clausen INF672 Protocol Safety and Verication Karthik Bhargavan Xavier Rival Thomas Clausen 1 Course Outline Lecture 1 [Today, Sep 15] Introduction, Motivating Examples Lectures 2-4 [Sep 22,29, Oct 6] Network

More information

COS 320. Compiling Techniques

COS 320. Compiling Techniques Topic 5: Types COS 320 Compiling Techniques Princeton University Spring 2016 Lennart Beringer 1 Types: potential benefits (I) 2 For programmers: help to eliminate common programming mistakes, particularly

More information

Verifying Concurrent ML programs

Verifying Concurrent ML programs Verifying Concurrent ML programs a research proposal Gergely Buday Eszterházy Károly University Gyöngyös, Hungary Synchron 2016 Bamberg December 2016 Concurrent ML is a synchronous language a CML program

More information

Quantifying the Parallelism in BPMN Processes using Model Checking

Quantifying the Parallelism in BPMN Processes using Model Checking Quantifying the Parallelism in BPMN Processes using Model Checking Radu Mateescu, Gwen Salaün, Lina Ye To cite this version: Radu Mateescu, Gwen Salaün, Lina Ye. Quantifying the Parallelism in BPMN Processes

More information

Lecture 2. Decidability and Verification

Lecture 2. Decidability and Verification Lecture 2. Decidability and Verification model temporal property Model Checker yes error-trace Advantages Automated formal verification, Effective debugging tool Moderate industrial success In-house groups:

More information

Clock-directed Modular Code-generation for Synchronous Data-flow Languages

Clock-directed Modular Code-generation for Synchronous Data-flow Languages 1 Clock-directed Modular Code-generation for Synchronous Data-flow Languages Dariusz Biernacki Univ. of Worclaw (Poland) Jean-Louis Colaço Prover Technologies (France) Grégoire Hamon The MathWorks (USA)

More information

Finite Model Generation for Distributed Java Programs

Finite Model Generation for Distributed Java Programs Finite Model Generation for Distributed Java Programs R. Boulifa and E. Madelaine INRIA Sophia-Antipolis, BP 93, 06902 Sophia-Antipolis Cedex, France {rabea.boulifa eric.madelaine}@sophia.inria.fr Abstract

More information

Formal Methods in Software Engineering. Lecture 07

Formal Methods in Software Engineering. Lecture 07 Formal Methods in Software Engineering Lecture 07 What is Temporal Logic? Objective: We describe temporal aspects of formal methods to model and specify concurrent systems and verify their correctness

More information

Flat (Draft) Pasqualino Titto Assini 27 th of May 2016

Flat (Draft) Pasqualino Titto Assini 27 th of May 2016 Flat (Draft) Pasqualino Titto Assini (tittoassini@gmail.com) 27 th of May 206 Contents What is Flat?...................................... Design Goals...................................... Design Non-Goals...................................

More information

Tool demonstration: Spin

Tool demonstration: Spin Tool demonstration: Spin 1 Spin Spin is a model checker which implements the LTL model-checking procedure described previously (and much more besides). Developed by Gerard Holzmann of Bell Labs Has won

More information

CS21 Decidability and Tractability

CS21 Decidability and Tractability CS21 Decidability and Tractability Lecture 9 January 26, 2018 Outline Turing Machines and variants multitape TMs nondeterministic TMs Church-Turing Thesis decidable, RE, co-re languages Deciding and Recognizing

More information

Analyzing Conversations of Web Services

Analyzing Conversations of Web Services Analyzing Conversations of Web Services Tevfik Bultan 1 Xiang Fu 2 Jianwen Su 1 1 Department of Computer Science, University of California, Santa Barbara Santa Barbara, CA 91306, USA. {bultan, su}@cs.ucsb.edu.

More information

Formal Specification and Verification of Fully Asynchronous Implementations of the Data Encryption Standard

Formal Specification and Verification of Fully Asynchronous Implementations of the Data Encryption Standard Formal Specification and Verification of Fully Asynchronous Implementations of the Data Encryption Standard Wendelin Serwe Inria Univ. Grenoble Alpes, LIG, F-38000 Grenoble, France CNRS, LIG, F-38000 Grenoble,

More information

Web Services Choreography and Process Algebra

Web Services Choreography and Process Algebra Web Services Choreography and Process Algebra 29th April 2004 Steve Ross-Talbot Chief Scientist, Enigmatec Corporation Ltd Chair W3C Web Services Activity Co-chair W3C Web Services Choreography Agenda

More information

Chapter 1. Introduction

Chapter 1. Introduction 1 Chapter 1 Introduction An exciting development of the 21st century is that the 20th-century vision of mechanized program verification is finally becoming practical, thanks to 30 years of advances in

More information

Proc. XVIII Conf. Latinoamericana de Informatica, PANEL'92, pages , August Timed automata have been proposed in [1, 8] to model nite-s

Proc. XVIII Conf. Latinoamericana de Informatica, PANEL'92, pages , August Timed automata have been proposed in [1, 8] to model nite-s Proc. XVIII Conf. Latinoamericana de Informatica, PANEL'92, pages 1243 1250, August 1992 1 Compiling Timed Algebras into Timed Automata Sergio Yovine VERIMAG Centre Equation, 2 Ave de Vignate, 38610 Gieres,

More information

Binary Decision Diagrams and Symbolic Model Checking

Binary Decision Diagrams and Symbolic Model Checking Binary Decision Diagrams and Symbolic Model Checking Randy Bryant Ed Clarke Ken McMillan Allen Emerson CMU CMU Cadence U Texas http://www.cs.cmu.edu/~bryant Binary Decision Diagrams Restricted Form of

More information

Modeling, Testing and Executing Reo Connectors with the. Reo, Eclipse Coordination Tools

Modeling, Testing and Executing Reo Connectors with the. Reo, Eclipse Coordination Tools Replace this file with prentcsmacro.sty for your meeting, or with entcsmacro.sty for your meeting. Both can be found at the ENTCS Macro Home Page. Modeling, Testing and Executing Reo Connectors with the

More information

1 A question of semantics

1 A question of semantics PART I BACKGROUND 1 A question of semantics The goal of this chapter is to give the reader a glimpse of the applications and problem areas that have motivated and to this day continue to inspire research

More information

On the Formalization of UML Activities for Component-Based Protocol Design Specifications

On the Formalization of UML Activities for Component-Based Protocol Design Specifications Brandenburg Technical University Cottbus Chair of Computer Networks and Communication Systems On the Formalization of UML Activities for Component-Based Protocol Design Specifications Prabhu Shankar Kaliappan,

More information

TIMO: Timed Mobility in Distributed Systems

TIMO: Timed Mobility in Distributed Systems TIMO: Timed Mobility in Distributed Systems Gabriel Ciobanu Romanian Academy, Institute of Computer Science, Iaşi E-mail: gabriel@info.uaic.ro Abstract A simple and expressive formalism called TIMO is

More information

CA464 Distributed Programming

CA464 Distributed Programming 1 / 25 CA464 Distributed Programming Lecturer: Martin Crane Office: L2.51 Phone: 8974 Email: martin.crane@computing.dcu.ie WWW: http://www.computing.dcu.ie/ mcrane Course Page: "/CA464NewUpdate Textbook

More information

Programming Embedded Systems

Programming Embedded Systems Programming Embedded Systems Lecture 10 An introduction to Lustre Wednesday Feb 15, 2012 Philipp Rümmer Uppsala University Philipp.Ruemmer@it.uu.se 1/34 Course topic: programming lang. Which language to

More information

Lesson 5 Web Service Interface Definition (Part II)

Lesson 5 Web Service Interface Definition (Part II) Lesson 5 Web Service Interface Definition (Part II) Service Oriented Architectures Security Module 1 - Basic technologies Unit 3 WSDL Ernesto Damiani Università di Milano Controlling the style (1) The

More information

Application: Programming Language Semantics

Application: Programming Language Semantics Chapter 8 Application: Programming Language Semantics Prof. Dr. K. Madlener: Specification and Verification in Higher Order Logic 527 Introduction to Programming Language Semantics Programming Language

More information

Temporal Refinement Using SMT and Model Checking with an Application to Physical-Layer Protocols

Temporal Refinement Using SMT and Model Checking with an Application to Physical-Layer Protocols Temporal Refinement Using SMT and Model Checking with an Application to Physical-Layer Protocols Lee Pike (Presenting), Galois, Inc. leepike@galois.com Geoffrey M. Brown, Indiana University geobrown@cs.indiana.edu

More information

Chapter Outline. Chapter 2 Distributed Information Systems Architecture. Distributed transactions (quick refresh) Layers of an information system

Chapter Outline. Chapter 2 Distributed Information Systems Architecture. Distributed transactions (quick refresh) Layers of an information system Prof. Dr.-Ing. Stefan Deßloch AG Heterogene Informationssysteme Geb. 36, Raum 329 Tel. 0631/205 3275 dessloch@informatik.uni-kl.de Chapter 2 Distributed Information Systems Architecture Chapter Outline

More information

Asynchronous Models. Chapter Asynchronous Processes States, Inputs, and Outputs

Asynchronous Models. Chapter Asynchronous Processes States, Inputs, and Outputs Chapter 3 Asynchronous Models 3.1 Asynchronous Processes Like a synchronous reactive component, an asynchronous process interacts with other processes via inputs and outputs, and maintains an internal

More information

Rule Formats for Nominal Modal Transition Systems

Rule Formats for Nominal Modal Transition Systems Rule Formats for Nominal Modal Transition Systems Anke Stüber Universitet Uppsala, Uppsala, Sweden anke.stuber@it.uu.se Abstract. Modal transition systems are specification languages that allow the expression

More information