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

Size: px
Start display at page:

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

Transcription

1 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, and Business Process Transformation: Componentization, A. Pataricza, University Relations IBM Academic Days Budapest University of Technology and Economics Department of Measurement and Information Systems

2 Contents Verification of process models (Anti)-pattern collection Outlook: Automatic verification

3 Correctness of process models How to measure the correctness of a model? o Functionality it does what we expect o Reliability it works reliably o Usability the process is understandable o Maintainability changes can be traced Correctness checking with formal methods o Eg. Petri-nets, data flow networks Defining patterns to be followed/avoided Built-in static analysis for design tools o Eg. BPEL 2.0 standard defines

4 Example model Fork Join Decision Merge IBM WebSphere Business Modeler

5 Example model Fork Join Decision Merge UML Activity Diagram

6 Example model Fork Join Decision Merge Business Process Modeling Notation

7 Example model Event-driven process chain

8 Which model is good for what? BPMN: high-level documentation, input for developers BPEL: execution built on web-services UML: modeling, documentation UML + ActionSemantics: code generation IBM Websphere Business Modeler: o Modeling, documentation o Simulation, scalability tasks o Monitoring o Input for given implementation tools IBM WebSphere Integration Developer

9 Describing conditions Explicit use of gateway objects Using data flow rules

10 Handling branches Fork No synchronization! Merge Decision Join Deadlock in the system!

11 Correct branch handling Decision Merge Fork Join

12 Handling loops Merge Fork May be executed infinitely! No outgoing branch from loop: livelock Merge Decision

13 Multiple connections Hard to understand, if data and control flow is not separated.

14 Exit from different branches Decision Merge Fork May cause deadlock at decision Join Allowed with parallelization

15 Handling events Eventhandling logic encoded as control. Incorrect, because every Start node is active at the same time! Good solution: define events

16 Termination Whole process terminates instead of just the parallel branches Exception handling and normal behavior separated, no hidden termination

17 Termination cont. Wrong interface definition! Nondeterminism/deadlock

18 Correct termination

19 Outlook: workflow verification Petri-net reduction o see business process abstraction/simplification o used for conformance checking o reduce state space Model-based workflow verification

20 Serial reduction fusion of serial places (FSP) fusion of serial transitions (FST)

21 Parallel reduction fusion of parallel places (FPP) fusion of parallel transitions (FPT)

22 Eliminate self-loops elminate self-looping place (ESP) eliminate self-looping transition (EST)

23 Example t 1 t 3 t 4 t 2 t 1 fires fusion of t 1 and t 2 (series transitions) t 12 fusion of t 3 and t 4 (series transitions) t 34

24 Example t 12 p 3 eliminate t 12 (self-looping transition) eliminate p 3 (self-looping place)

25 Example: result example is bounded, but not live (and not reversible)

26 Service composition (e.g. BPEL) o Widespread tool support Objectives o Design errors in choreography o Lack of formal verification Objectives: o Formal proof of compliance to the requirements on workflow o Derivation of mathematical analysis models by model transformations Formal analysis of workflows o Formal workflow semantics o Formal verification of properties E.g. variable access o Fault simulation: assessment of error propagation

27 A Workflow Example Basic activity Beginning of parallel execution Selection Policy Reject Recording Establish type Control flow Premium Pay End of parallel execution

28 Verification of Workflows Simulation Positive result Workflow (BPEL) Formal model (dataflow network) Analysis model (Promela) Model checker (SPIN ) Requirement (LTL expression) Negative result + counterexample

29 Verification of Workflows Simulation Positive result Workflow (BPEL) Formal model (dataflow network) IBM WebSphere Integration Developer Analysis model (Promela) SPIN modelchecker Requirement (LTL expression) Negative result + counterexample

30 Verification of Workflows Dataflow Network (generated) Abstract data Hierarchic modeling Model refinement Simulation Positive result Workflow (BPEL) Formal model (dataflow network) Analysis model (Promela) SPIN modelchecker Requirement Negative result Representation in the VIATRA2 (LTL + framework expression) counterexample Dataflow Network generated from parsed BPEL model

31 Verification of Workflows Target requirement Business level: no unauthorized business transaction Implementation level: each variable Positive Simulation should be initialized prior to a read access result Workflow (BPEL) Formal model (dataflow network) Analysis model (Promela) SPIN modelchecker Requirements LTL: linear temporal logical expression Requirement (LTL expression) Negative result + counterexample

32 Verification of Workflows Simulation Positive result Workflow (BPEL) Formal model (dataflow network) Analysis model (Promela) SPIN modelchecker Model checker Evaluation of LTL expressions Exhaustive state space traversal Requirement (LTL expression) Negative result + counterexample

33 Verification of Workflows Simulation Positive result Workflow (BPEL) Formal model (dataflow network) Analysis model (Promela) SPIN modelchecker Modelltranszformáció Model transformation VIATRA2 framework Requirement (LTL expression) Negative result + counterexample

34 Abstraction: qualitative modeling Formal methods have strict complexity limitations o Efficient, but still faithful abstractions are needed Qualitative abstraction: o A few of qualitative values out of an enumerated data type set o No detailed data representation o Drastic state space (analysis complexity) reduction Systematic methodology: predicate abstraction

35 Full model: Example IF credit_requested < THEN approval(director) ELSE approval(board) Deterministic abstraction: IF minor_credit_requested THEN approval(director) ELSE approval(board) o No representation is needed for value of credit_requested, o Only a single binary value (minor_credit_requested) representing the mode of operation o Invariant wrt. the limit of changes Nondeterministic abstraction: CHOOSE (approval(director), approval(board)) o No representation is needed for value of credit_requested, o Details -> random behavior

36 Estimation of the effects of a fault A resource/operation is good / faulty / missing (FAULT) System behavior? Analysis principle: o Assign faults to resources / operations o Trace the flow of errors (ERROR) o Check: is a service to the user affected (FAILURE)? Modeling and analysis: o Data items colored as good / faulty / suspicious o A component connected to another one in a potentially erroneous state is suspicious o Static worst case approximation: Damage Confinement Region

37 Dataflow Networks Node Port State Variable Uninitialized Written Read Written and read Fault written Fault written and read Token Activity Control Data D_F_Control Channel G(Variable.state!=Fault_written)

38 Mapping a Workflow to Dataflow Networks Policy Recording Establish type Premium Recording Establish type Policy Beginning of parallel execution Premium End of parallel Execution

39 Dynamics Qualitative Data Fault Simulation / Model Checking Variable 1 Uninitialized Written Read Written and read Fault written Fault written and read Activity A Read Control Data D_F_Control Variable 2 Uninitialized Written Read Written and read Fault written Fault written and read Activity A Write Control Data D_F_Control

40 Simulation of the Error Propagation Dynamics Variable Uninitialized Written Read Written and read Fault written Fault written and read If Control Data D_F_Control Activity Control Data D_F_Control Otherwise Control Activity Control Data D_F_Control

Business Process Transformation

Business Process Transformation Building Information Society with Innovation Business Process Transformation Based on the presentation of András Pataricza, Budapest University of Technology and Economics @ IBM Academic Days 2006 University

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

University of Pisa. MSc in Computer Engineering. Business Processes Management. Lectures

University of Pisa. MSc in Computer Engineering. Business Processes Management. Lectures University of Pisa MSc in Computer Engineering Business Processes Management Large and complex organizations are a tangible manifestation of advanced technology, more than machinery itself. (J.K. Galbraith)

More information

Business-Driven Software Engineering Lecture 3 Foundations of Processes

Business-Driven Software Engineering Lecture 3 Foundations of Processes Business-Driven Software Engineering Lecture 3 Foundations of Processes Jochen Küster jku@zurich.ibm.com Agenda Introduction and Background Process Modeling Foundations Activities and Process Models Summary

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

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

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

MODEL CHECKING OF SERVICES WORKFLOW RECONFIGURATION: A PERSPECTIVE ON DEPENDABILITY

MODEL CHECKING OF SERVICES WORKFLOW RECONFIGURATION: A PERSPECTIVE ON DEPENDABILITY 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

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

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

Model Checking of Software

Model Checking of Software Model Checking of Software Patrice Godefroid Bell Laboratories, Lucent Technologies SpecNCheck Page 1 August 2001 A Brief History of Model Checking Prehistory: transformational programs and theorem proving

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

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

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

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

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

Analytics for Performance Optimization of BPMN2.0 Business Processes

Analytics for Performance Optimization of BPMN2.0 Business Processes Analytics for Performance Optimization of BPMN2.0 Business Processes Robert M. Shapiro, Global 360, USA Hartmann Genrich, GMD (retired), Germany INTRODUCTION We describe a new approach to process improvement

More information

Instantaneous Soundness Checking of Industrial Business Process Models

Instantaneous Soundness Checking of Industrial Business Process Models Instantaneous Soundness Checking of Industrial Business Process Models Dirk Fahland 1, Cédric Favre 2, Barbara Jobstmann 4, Jana Koehler 2, Niels Lohmann 3, Hagen Völzer 2, and Karsten Wolf 3 1 Humboldt-Universität

More information

Process Modeling using BPMN 2.0

Process Modeling using BPMN 2.0 Process Modeling using BPMN 2.0 This chapter provides a brief overview of Business Process Modeling Notation (BPMN) concepts with particular emphasis on the BPMN 2.0 additions. In addition, it describes

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

Formal Verification of Software

Formal Verification of Software Formal Verification of Software Sabine Broda Department of Computer Science/FCUP 12 de Novembro de 2014 Sabine Broda (DCC-FCUP) Formal Verification of Software 12 de Novembro de 2014 1 / 26 Formal Verification

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

HECTOR a software model checker with cooperating analysis plugins. Nathaniel Charlton and Michael Huth Imperial College London

HECTOR a software model checker with cooperating analysis plugins. Nathaniel Charlton and Michael Huth Imperial College London HECTOR a software model checker with cooperating analysis plugins Nathaniel Charlton and Michael Huth Imperial College London Introduction HECTOR targets imperative heap-manipulating programs uses abstraction

More information

Temporal Logics. Computation Tree Logic

Temporal Logics. Computation Tree Logic Temporal Logics CTL: definition, relationship between operators, adequate sets, specifying properties, safety/liveness/fairness Modeling: sequential, concurrent systems; maximum parallelism/interleaving

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

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

Business Process Management and IT Architecture Design. The T case study. Dr. Jana Koehler Olaf Zimmermann IBM Zurich Research Laboratory Business Process Management and IT Architecture Design The T case study Dr. Jana Koehler Olaf Zimmermann IBM Zurich Research Laboratory ZRL BIT at a Glance IBM Zurich Research Lab (ZRL), Rüschlikon/ZH

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

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

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

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

Modeling Guidelines Manual

Modeling Guidelines Manual Modeling Guidelines Manual [Insert company name here] July 2014 Author: John Doe john.doe@johnydoe.com Page 1 of 22 Table of Contents 1. Introduction... 3 2. Business Process Management (BPM)... 4 2.1.

More information

Using Separation of Concerns for Embedded Systems Design. α=90

Using Separation of Concerns for Embedded Systems Design. α=90 Using Separation of Concerns for Embedded Systems Design α=90 Ethan Jackson and Janos Sztipanovits EmSoft 05, Jersey City, New Jersey September 19, 2005 Part I Outline Introduction: Discuss major design

More information

Kirsten Sinclair SyntheSys Systems Engineers

Kirsten Sinclair SyntheSys Systems Engineers Kirsten Sinclair SyntheSys Systems Engineers Kirsten Sinclair SyntheSys Systems Engineers Spicing-up IBM s Enterprise Architecture tools with Petri Nets On Today s Menu Appetiser: Background Starter: Use

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

Formal Engineering for Industrial Software Development

Formal Engineering for Industrial Software Development Shaoying Liu Formal Engineering for Industrial Software Development Using the SOFL Method With 90 Figures and 30 Tables Springer Contents Introduction 1 1.1 Software Life Cycle... 2 1.2 The Problem 4 1.3

More information

Usage of Business Process Choreography

Usage of Business Process Choreography Usage of Business Process Choreography Akira Tanaka, Hitachi, Ltd. tanakaak@soft.hitachi.co.jp Infrastructures and Standard 1 Agenda Introduction Lifecycle! Design phase! Usage phase! Managing phase Remarks

More information

BPM Based Robust E-business Application Development (practical experience report)

BPM Based Robust E-business Application Development (practical experience report) BPM Based Robust E-business Application Development (practical experience report) Gy. Csertán 1, A. Pataricza 1, P. Harang 1, O. Dobán 1, G. Biros 2, A. Dancsecz 2, and F. Friedler 2 1 Budapest University

More information

10g versions followed on separate paths due to different approaches, but mainly due to differences in technology that were known to be huge.

10g versions followed on separate paths due to different approaches, but mainly due to differences in technology that were known to be huge. Oracle BPM 11g Platform Analysis May 2010 I was privileged to be invited to participate in "EMEA BPM 11g beta bootcamp" in April 2010, where I had close contact with the latest release of Oracle BPM 11g.

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

Static Program Transformations for Efficient Software Model Checking

Static Program Transformations for Efficient Software Model Checking Static Program Transformations for Efficient Software Model Checking Shobha Vasudevan Jacob Abraham The University of Texas at Austin Dependable Systems Large and complex systems Software faults are major

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

Chapter 10. Practical Database Design Methodology. The Role of Information Systems in Organizations. Practical Database Design Methodology

Chapter 10. Practical Database Design Methodology. The Role of Information Systems in Organizations. Practical Database Design Methodology Chapter 10 Practical Database Design Methodology Practical Database Design Methodology Design methodology Target database managed by some type of database management system Various design methodologies

More information

Analyzing Service Contract with Model Checking

Analyzing Service Contract with Model Checking Analyzing Service Contract with Model Checking Contract-Oriented Software Development for Internet Services Joseph C. Okika, Anders P. Ravn Department of Computer Science Aalborg University, Denmark FLACOS

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

Faculty of Science and Technology MASTER S THESIS. Writer: Artur Latifov

Faculty of Science and Technology MASTER S THESIS. Writer: Artur Latifov Faculty of Science and Technology MASTER S THESIS Study program/ Specialization: Computer science Spring semester, 2012 Open Writer: Artur Latifov Faculty supervisor: (Artur Latifov) Chunming Rong External

More information

Business Process Verification: The Application of Model Checking and Timed Automata

Business Process Verification: The Application of Model Checking and Timed Automata Business Process Verification: The Application of Model Checking and Timed Automata Luis E. Mendoza Morales Processes and Systems Department, Simón Bolívar University, P.O. box 89000, Baruta, Venezuela,

More information

Static Analysis. Find the Bug! 15-654: Analysis of Software Artifacts. Jonathan Aldrich. disable interrupts. ERROR: returning with interrupts disabled

Static Analysis. Find the Bug! 15-654: Analysis of Software Artifacts. Jonathan Aldrich. disable interrupts. ERROR: returning with interrupts disabled Static Analysis 15-654: Analysis of Software Artifacts Jonathan Aldrich 1 Find the Bug! Source: Engler et al., Checking System Rules Using System-Specific, Programmer-Written Compiler Extensions, OSDI

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

OMG releases BPMN 1.1 - What's changed?

OMG releases BPMN 1.1 - What's changed? OMG releases BPMN 1.1 - What's changed? (revised version as of April 2008) Gero Decker 1 and Torben Schreiter 2 1 Hasso Plattner Institute, Potsdam, Germany 2 inubit AG, Berlin, Germany Abstract The Business

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

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

Specification and Analysis of Contracts Lecture 1 Introduction

Specification and Analysis of Contracts Lecture 1 Introduction Specification and Analysis of Contracts Lecture 1 Introduction Gerardo Schneider gerardo@ifi.uio.no http://folk.uio.no/gerardo/ Department of Informatics, University of Oslo SEFM School, Oct. 27 - Nov.

More information

Overview Motivating Examples Interleaving Model Semantics of Correctness Testing, Debugging, and Verification

Overview Motivating Examples Interleaving Model Semantics of Correctness Testing, Debugging, and Verification Introduction Overview Motivating Examples Interleaving Model Semantics of Correctness Testing, Debugging, and Verification Advanced Topics in Software Engineering 1 Concurrent Programs Characterized by

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

Developing SOA solutions using IBM SOA Foundation

Developing SOA solutions using IBM SOA Foundation Developing SOA solutions using IBM SOA Foundation Course materials may not be reproduced in whole or in part without the prior written permission of IBM. 4.0.3 4.0.3 Unit objectives After completing this

More information

The ProB Animator and Model Checker for B

The ProB Animator and Model Checker for B The ProB Animator and Model Checker for B A Tool Description Michael Leuschel and Michael Butler Department of Electronics and Computer Science University of Southampton Highfield, Southampton, SO17 1BJ,

More information

APPROACHES TO SOFTWARE TESTING PROGRAM VERIFICATION AND VALIDATION

APPROACHES TO SOFTWARE TESTING PROGRAM VERIFICATION AND VALIDATION 1 APPROACHES TO SOFTWARE TESTING PROGRAM VERIFICATION AND VALIDATION Validation: Are we building the right product? Does program meet expectations of user? Verification: Are we building the product right?

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

Two Roles of Processes in SOA

Two Roles of Processes in SOA Abstract Vitaly Khusidman The synergy between BPM and SOA is well known and is explained in a number of publications. However, the distinction between business processes that orchestrate services in the

More information

Software Active Online Monitoring Under. Anticipatory Semantics

Software Active Online Monitoring Under. Anticipatory Semantics Software Active Online Monitoring Under Anticipatory Semantics Changzhi Zhao, Wei Dong, Ji Wang, Zhichang Qi National Laboratory for Parallel and Distributed Processing P.R.China 7/21/2009 Overview Software

More information

On Negotiation as Concurrency Primitive. Javier Esparza, Techn. Univ. München (D) Jörg Desel, FernUniversität in Hagen (D)

On Negotiation as Concurrency Primitive. Javier Esparza, Techn. Univ. München (D) Jörg Desel, FernUniversität in Hagen (D) On Negotiation as Concurrency Primitive Javier Esparza, Techn. Univ. München (D) Jörg Desel, FernUniversität in Hagen (D) 1 On Negotiation as Concurrency Primitive I: arbitrary / weakly deterministic /deterministic

More information

A Business Process Services Portal

A Business Process Services Portal A Business Process Services Portal IBM Research Report RZ 3782 Cédric Favre 1, Zohar Feldman 3, Beat Gfeller 1, Thomas Gschwind 1, Jana Koehler 1, Jochen M. Küster 1, Oleksandr Maistrenko 1, Alexandru

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

MODELING OF SERVICE ORIENTED ARCHITECTURE: FROM BUSINESS PROCESS TO SERVICE REALISATION

MODELING OF SERVICE ORIENTED ARCHITECTURE: FROM BUSINESS PROCESS TO SERVICE REALISATION MODELING OF SERVICE ORIENTED ARCHITECTURE: FROM BUSINESS PROCESS TO SERVICE REALISATION Marek Rychlý and Petr Weiss Faculty of Information Technology, Brno University of Technology, Czech Republic, rychly@fit.vutbr.cz,

More information

Chapter 8 The Enhanced Entity- Relationship (EER) Model

Chapter 8 The Enhanced Entity- Relationship (EER) Model Chapter 8 The Enhanced Entity- Relationship (EER) Model Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 8 Outline Subclasses, Superclasses, and Inheritance Specialization

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

i. Node Y Represented by a block or part. SysML::Block,

i. Node Y Represented by a block or part. SysML::Block, OMG SysML Requirements Traceability (informative) This document has been published as OMG document ptc/07-03-09 so it can be referenced by Annex E of the OMG SysML specification. This document describes

More information

Bruce Silver Associates Independent Expertise in BPM

Bruce Silver Associates Independent Expertise in BPM Bruce Silver Associates Independent Expertise in BPM BPMN and the Business Process Expert Summary: BPMN has become the standard language of the Business Process Expert, usable for descriptive process modeling,

More information

Using temporal business rules to verify and guide service composition

Using temporal business rules to verify and guide service composition Swinburne University of Technology Faculty of Information and Communication Technologies HIT4000 Honours Project A Thesis on Using temporal business rules to verify and guide service composition Phan,

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

SemTalk BPMN Tutorial APRIL 2015 Email: support@semtalk.com. Tutorial SemTalk 4.3 BPMN Edition for Business Process Analysis

SemTalk BPMN Tutorial APRIL 2015 Email: support@semtalk.com. Tutorial SemTalk 4.3 BPMN Edition for Business Process Analysis Tutorial SemTalk 4.3 BPMN Edition for Business Process Analysis Contents 1. About Business Process Modeling Notation (BPMN)... 3 2. Starting SemTalk BPMN Edition... 4 3. Editing a Process... 7 3.1. Adding

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

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

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

Introducing Formal Methods. Software Engineering and Formal Methods

Introducing Formal Methods. Software Engineering and Formal Methods Introducing Formal Methods Formal Methods for Software Specification and Analysis: An Overview 1 Software Engineering and Formal Methods Every Software engineering methodology is based on a recommended

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

Dynamic business process management based on the combined control and data networks

Dynamic business process management based on the combined control and data networks Preprints of the 2013 IFAC Conference on Manufacturing Modelling, Management, and Control, Saint Petersburg State University and Saint Petersburg National Research University of Information Technologies,

More information

A Manifesto for Semantic Model Differencing

A Manifesto for Semantic Model Differencing A Manifesto for Semantic Model Differencing ME-10, October 2010 Shahar Maoz, Jan Oliver Ringert, Bernhard Rumpe Lehrstuhl Informatik 3 () http://www.se-rwth.de/ Seite 2 One slide abstract Existing approaches

More information

A Test Case Generator for the Validation of High-Level Petri Nets

A Test Case Generator for the Validation of High-Level Petri Nets A Test Case Generator for the Validation of High-Level Petri Nets Jörg Desel Institut AIFB Universität Karlsruhe D 76128 Karlsruhe Germany E-mail: desel@aifb.uni-karlsruhe.de Andreas Oberweis, Torsten

More information

Business Process Standards and Modeling

Business Process Standards and Modeling Business Process Standards and Modeling Janne J. Korhonen Helsinki University of Technology STANDARDS Standards Organizations Object Management Group (www.omg.org) Business Process Modeling Notation (BPMN)

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

Coverability for Parallel Programs

Coverability for Parallel Programs 2015 http://excel.fit.vutbr.cz Coverability for Parallel Programs Lenka Turoňová* Abstract We improve existing method for the automatic verification of systems with parallel running processes. The technique

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

A Static Analyzer for Large Safety-Critical Software. Considered Programs and Semantics. Automatic Program Verification by Abstract Interpretation

A Static Analyzer for Large Safety-Critical Software. Considered Programs and Semantics. Automatic Program Verification by Abstract Interpretation PLDI 03 A Static Analyzer for Large Safety-Critical Software B. Blanchet, P. Cousot, R. Cousot, J. Feret L. Mauborgne, A. Miné, D. Monniaux,. Rival CNRS École normale supérieure École polytechnique Paris

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 and Code Generation for UML State Machines and Collaborations

Model Checking and Code Generation for UML State Machines and Collaborations Model Checking and Code Generation for UML State Machines and Collaborations Alexander Knapp and Stephan Merz Institut für Informatik, Ludwig-Maximilians-Universität München {knapp,merz}@informatik.uni-muenchen.de

More information

Module 10. Coding and Testing. Version 2 CSE IIT, Kharagpur

Module 10. Coding and Testing. Version 2 CSE IIT, Kharagpur Module 10 Coding and Testing Lesson 23 Code Review Specific Instructional Objectives At the end of this lesson the student would be able to: Identify the necessity of coding standards. Differentiate between

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

An Introduction to Business Process Modeling

An Introduction to Business Process Modeling An Introduction to Business Process Modeling Alejandro Vaisman Université Libre de Bruxelles avaisman@ulb.ac.be Abstract. Business Process Modeling (BPM) is the activity of representing the processes of

More information

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

TECH. Requirements. Why are requirements important? The Requirements Process REQUIREMENTS ELICITATION AND ANALYSIS. Requirements vs. CH04 Capturing the Requirements Understanding what the customers and users expect the system to do * The Requirements Process * Types of Requirements * Characteristics of Requirements * How to Express

More information

Approaches to Improve System Dependability From Formal Verification to Model-Based Testing

Approaches to Improve System Dependability From Formal Verification to Model-Based Testing Approaches to Improve System Dependability From Formal Verification to Model-Based Testing Andreas Ulrich, Peter Amthor, Marlon Vieira Siemens AG, Corporate Technology, CT SE/SCR andreas.ulrich@siemens.com

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

Automotive Software Engineering

Automotive Software Engineering Automotive Software Engineering List of Chapters: 1. Introduction and Overview 1.1 The Driver Vehicle Environment System 1.1.1 Design and Method of Operation of Vehicle Electronic 1.1.2 Electronic of the

More information

µz An Efficient Engine for Fixed points with Constraints

µz An Efficient Engine for Fixed points with Constraints µz An Efficient Engine for Fixed points with Constraints Kryštof Hoder, Nikolaj Bjørner, and Leonardo de Moura Manchester University and Microsoft Research Abstract. The µz tool is a scalable, efficient

More information

Doctor of Philosophy in Computer Science

Doctor of Philosophy in Computer Science Doctor of Philosophy in Computer Science Background/Rationale The program aims to develop computer scientists who are armed with methods, tools and techniques from both theoretical and systems aspects

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

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

Types of UML Diagram. UML Diagrams 140703-OOAD. Computer Engineering Sem -IV

Types of UML Diagram. UML Diagrams 140703-OOAD. Computer Engineering Sem -IV 140703-OOAD Computer Engineering Sem -IV Introduction to UML - UML Unified Modeling Language diagram is designed to let developers and customers view a software system from a different perspective and

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

64 JOURNAL OF SOFTWARE, VOL. 2, NO. 3, SEPTEMBER 2007

64 JOURNAL OF SOFTWARE, VOL. 2, NO. 3, SEPTEMBER 2007 64 JOURNAL OF SOFTWARE, VOL. 2, NO. 3, SEPTEMBER 2007 An Automatic Test Case Generation Framework for Web Services Yongyan Zheng, Jiong Zhou, Paul Krause Department of Computing, University of Surrey,

More information