A university for the world real R © 2009, www.yawlfoundation.org Chapter 18 Process Configuration Florian Gottschalk Marcello La Rosa.

Slides:



Advertisements
Similar presentations
ARCHITECTURES FOR ARTIFICIAL INTELLIGENCE SYSTEMS
Advertisements

A university for the world real R © 2009, Chapter 3 Advanced Synchronization Moe Wynn Wil van der Aalst Arthur ter Hofstede.
SOFTWARE TESTING. INTRODUCTION  Software Testing is the process of executing a program or system with the intent of finding errors.  It involves any.
Database Systems: Design, Implementation, and Management Tenth Edition
Software Modeling SWE5441 Lecture 3 Eng. Mohammed Timraz
A university for the world real R © 2009, Chapter 15 The Business Process Execution Language Chun Ouyang Marlon Dumas Petia Wohed.
Object-Oriented Analysis and Design
SSP Re-hosting System Development: CLBM Overview and Module Recognition SSP Team Department of ECE Stevens Institute of Technology Presented by Hongbing.
Interactive Generation of Integrated Schemas Laura Chiticariu et al. Presented by: Meher Talat Shaikh.
Chess Review May 8, 2003 Berkeley, CA Classes and Inheritance in Actor- Oriented Models Stephen Neuendorffer Edward Lee UC Berkeley.
Knowledge Acquisitioning. Definition The transfer and transformation of potential problem solving expertise from some knowledge source to a program.
UML CASE Tool. ABSTRACT Domain analysis enables identifying families of applications and capturing their terminology in order to assist and guide system.
Programming Language Semantics Mooly SagivEran Yahav Schrirber 317Open space html://
Semantics with Applications Mooly Sagiv Schrirber html:// Textbooks:Winskel The.
Propositional Calculus Math Foundations of Computer Science.
NON-FUNCTIONAL PROPERTIES IN SOFTWARE PRODUCT LINES: A FRAMEWORK FOR DEVELOPING QUALITY-CENTRIC SOFTWARE PRODUCTS May Mahdi Noorian
Path testing Path testing is a “design structural testing” in that it is based on detailed design & the source code of the program to be tested. The methodology.
[ §6 : 1 ] 6. Basic Methods II Overview 6.1 Models 6.2 Taxonomy 6.3 Finite State Model 6.4 State Transition Model 6.5 Dataflow Model 6.6 User Manual.
A university for the world real R © 2009, Chapter 14 EPCs Jan Mendling.
Software Testing Verification and validation planning Software inspections Software Inspection vs. Testing Automated static analysis Cleanroom software.
Introduction To System Analysis and design
Proceso kintamybių modeliavimas Modelling process variabilities Donatas Čiukšys.
Human-Centered Information Visualization Jiajie Zhang, Kathy Johnson, Jack Smith University of Texas at Houston Jane Malin NASA Johnson Space Center July.
Chapter 14: Artificial Intelligence Invitation to Computer Science, C++ Version, Third Edition.
Systems Architecture I1 Propositional Calculus Objective: To provide students with the concepts and techniques from propositional calculus so that they.
Chapter 8 – Software Testing Lecture 1 1Chapter 8 Software testing The bearing of a child takes nine months, no matter how many women are assigned. Many.
Overview of Software Testing 07/12/2013 WISTPC 2013 Peter Clarke.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 21. Review ANALYSIS PHASE (OBJECT ORIENTED DESIGN) Functional Modeling – Use case Diagram Description.
1 Software testing. 2 Testing Objectives Testing is a process of executing a program with the intent of finding an error. A good test case is in that.
1 On to Object Design Chapter 14 Applying UML and Patterns.
Introduction To System Analysis and Design
Conceptual Modelling – Behaviour
Major objective of this course is: Design and analysis of modern algorithms Different variants Accuracy Efficiency Comparing efficiencies Motivation thinking.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 22 Slide 1 Software Verification, Validation and Testing.
1 Devon M. Simmonds University of North Carolina, Wilmington CSC450 Software Engineering WorkFlow Modeling with Activity Diagrams.
1 Introduction to Software Engineering Lecture 1.
Illustrations and Answers for TDT4252 exam, June
A university for the world real R © 2009, Chapter 2 The Language: Rationale and Fundamentals (Part V) Nick Russell Arthur ter Hofstede.
UHD::3320::CH121 DESIGN PHASE Chapter 12. UHD::3320::CH122 Design Phase Two Aspects –Actions which operate on data –Data on which actions operate Two.
Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei College of Software and Microelectronics Northwestern Polytechnical.
1 Lectures 5,6 – Workflows and Internet Process Coordination Middleware: the glue for network computing Workflows and Internet Workflows Enabling Technologies.
Petri nets refresher Prof.dr.ir. Wil van der Aalst
Process-oriented System Analysis Process Mining. BPM Lifecycle.
A university for the world real R © 2009, Chapter 9 The Runtime Environment Michael Adams.
Object-Oriented Modeling: Static Models. Object-Oriented Modeling Model the system as interacting objects Model the system as interacting objects Match.
Human Computer Interaction
Written by Changhyun, SON Chapter 5. Introduction to Design Optimization - 1 PART II Design Optimization.
Institute for Software Integrated Systems Vanderbilt University On Metamodel Composition Akos Ledeczi, Greg Nordstrom, Gabor Karsai, Peter Volgyesi and.
Enterprise Systems Modeling EGN 5623 Enterprise Systems Optimization Fall, 2012.
MTAT Business Process Management Lecture 2 – Process Modeling I Marlon Dumas marlon.dumas ät ut. ee 1.
A university for the world real R © 2009, Chapter 12 The Declare Service Maja Pesic Helen Schonenberg Wil M.P. van der Aalst.
Logic Gates and Boolean Algebra Introduction to Logic II.
SOFTWARE TESTING LECTURE 9. OBSERVATIONS ABOUT TESTING “ Testing is the process of executing a program with the intention of finding errors. ” – Myers.
Enterprise Systems Modeling EGN 5621 Enterprise Systems Collaboration (Professional MSEM) Fall, 2012.
Circuit Synthesis A logic function can be represented in several different forms:  Truth table representation  Boolean equation  Circuit schematic 
Process Mining – Concepts and Algorithms Review of literature on process mining techniques for event log data.
Guidelines of Business Process Modeling Team: Alejandra Saavedra Andrea Rodriguez Ez Lawrence.
Knowledge Representation Techniques
Software Testing.
SysML v2 Formalism: Requirements & Benefits
Unified Modeling Language
Chapter 8 – Software Testing
The Systems Engineering Context
Software Quality Engineering
Chapter 10: Process Implementation with Executable Models
Objective of This Course
Analysis models and design models
Chapter 11 user support.
Chapter 7 Software Testing.
Presentation transcript:

a university for the world real R © 2009, Chapter 18 Process Configuration Florian Gottschalk Marcello La Rosa

a university for the world real R 2 © 2009, Overview 1.Introduction to Configurable Process Models 2.Process Configuration in YAWL 3.Questionnaire-driven Approach for Process Configuration 4.Tool Support 5.Conclusions

a university for the world real R 3 © 2009, Tape variantFilm variant What is a configurable process model? commonality = variability + variation point Integrated representation of multiple variants of a same process in a given domain, which can be configured for a specific setting, leading to an indivi- dualized process model.

a university for the world real R 4 © 2009, Configurable Process Models in the Process Lifecycle design configurationindividualizationimplementationexecution

a university for the world real R 5 © 2009, Features of a Configurable Process Model should guide the user to a model that fits his requirements must be able to generate all possible process variants must be a complete, integrated set of all possible process variants is the least common multiple of all process variations

a university for the world real R 6 © 2009, Variant BSuperclass Configurable ModelVariant A Inheritance Subclass Configuration A Theoretical explanation Inheritance of workflow behavior:

a university for the world real R 7 © 2009, Blocking Hiding –also called skipping Configuration Techniques block τ τ τ hide

a university for the world real R 8 © 2009, Port Configuration Task Ports enabled blocked hidden (skipped)

a university for the world real R 9 © 2009, Port types in YAWL Flow of tokens is determined by functions assigned to a YAWL task: join  input ports split  output ports rem  cancellation port nofi  multiple instance configuration

a university for the world real R 10 © 2009, Input ports (inflow) XOR-join Task is enabled if a token arrives from any arc  One input port for each incoming arc AND-join Task is enabled if tokens are arriving from all arcs  One input port for the whole task OR-join Task is enabled if tokens are arriving from all arcs from which a token can potentially arrive  One input port for the whole task

a university for the world real R 11 © 2009, Output ports (outflow) XOR-split Task releases one token via one of the arcs  One output port for each outgoing arc AND-split Task releases tokens via all arcs only  One output port for the whole task OR-split Task can release tokens via any combination of outgoing arcs  One output port for every combination of outgoing arcs

a university for the world real R 12 © 2009, Configuration Example (A, B, C, E) or (A, B, D, E) (A, B, C, E) (B, C, E)

a university for the world real R 13 © 2009, Cancellation ports (inflow) Cancellation also represents an inflow of tokens, but can also take 0 tokens Takes the maximum number of available tokens, similar to the OR-join  One cancellation port for the whole task Hiding of Cancellation ports makes no sense  No skippable action between the activation of the cancellation port and the outflow of tokens

a university for the world real R 14 © 2009, Multiple Instance configuration 1.Increase of the minimal number of instances to be started 2.Decrease of the maximal number of instances to be started 3.Increase of the threshold value 4.Restrict dynamic creation of instances to static creation

a university for the world real R 15 © 2009, Multiple Instance configuration 1.Increase of the minimal number of instances to be started 2.Decrease of the maximal number of instances to be started

a university for the world real R 16 © 2009, 3.Increase of the threshold value Multiple Instance configuration

a university for the world real R 17 © 2009, 4.Restrict from dynamic to static instance creation dyn Multiple Instance configuration

a university for the world real R 18 © 2009, Transforming a port configuration

a university for the world real R 19 © 2009, Example 1 Transforming a port configuration: the OR-split

a university for the world real R 20 © 2009, Example 2 Transforming a port configuration: the OR-split

a university for the world real R 21 © 2009, Example 3 Transforming a port configuration: the OR-split

a university for the world real R 22 © 2009, Questionnaire-driven configuration Configuring a process model can be difficult and time- consuming, due to: –size of the variability space, –complexity of the domain. Domain experts usually have little or no knowledge about modeling notations (e.g. in the screen business). Need to facilitate the configuration of process models by domain experts, without requiring process modeling knowledge.

a university for the world real R 23 © 2009, Questionnaire-based approach Configuration can be simplified if carried out by answering a set of questions no need to be aware of modeling notations. The basic concepts of the approach are questions and domain facts: –a question is composed of a set of domain facts; –a domain fact encodes a business choice and can be set to “true” or “false”. Variation points in the process model are mapped to boolean expressions over domain facts. Questions may affect one or multiple variation points:

a university for the world real R 24 © 2009, Domain constraints The configuration space of the domain is restricted by a set of propositional logic domain constraints over the domain facts. By means of domain constraints, answers to questions may be determi- ned by previous answers. DC 10 : f 11  f 12 DC 11 :  f 10 ⇒  f 12 DC 10 DC 11

a university for the world real R 25 © 2009, Questionnaire model

a university for the world real R 26 © 2009, Order dependencies

a university for the world real R 27 © 2009, Mapping process models to questionnaire models Process Model Mapping Questionnaire Model p SEQ ⇔  f 12 c a 2 2 p SEQ ⇔  f 11 c b 2 2 p AND ⇔ f 11  f 12 c 2 p OR ⇔ false c 2 p XOR ⇔ false c 2 MC 6 : MC 7 : MC 8 : MC 9 : MC 10 :

a university for the world real R 28 © 2009, Mapping process models to questionnaire models A mapping links process facts to domain facts: The mapping ensures domain compliance and process model correctness. C-EPC C-YAWL

a university for the world real R 29 © 2009, Constraints in action DC 6 DC 8 MC 22 MC 25 PC 4 DC 6 : f 5 ⇒ f 13 DC 8 : f 8 ⇒ f 15 MC 22 : p ON ⇔ f 13 d MC 25 : p ON ⇔ f 15 e PC 4 : p ON ⇒  p SEQ d c4c4 b4b4 Domain constraints MappingProcess constraints

a university for the world real R 30 © 2009, = Application of the approach Interactive QuestionnaireConfigurable Process Model Individualized Model answers input to Questionnaire model Mapping +

a university for the world real R 31 © 2009, Tool support: Synergia Open-source Modular: 6 standalone applications, Provides end-to-end support for process model configuration, Independent of specific modeling notations, Supports C-EPC and C-YAWL.

a university for the world real R 32 © 2009, Discussion Is there a need for configurable models? –Do you have the same experience that highly-standardized processes (such as the Order Fulfillment example) are still adapted to individual needs? Is it feasible to create configurable models? –What do you think about how we individualized the Order Fulfillment model compared to the intended use of your software? Are configurable models useful? –Can you imagine that you provide similar models which can be adapted “without drawing arcs and nodes”?

a university for the world real R 33 © 2009, Conclusions Process Configuration is a viable mechanism to automate the derivation of customized models from a reference model in a specific domain Process Configuration in YAWL is grounded in the concept of Inheritance of Workflow Behavior and is achieved via 2 operators: hide, block The Questionnaire-based approach facilitates the configuration of (complex) process models such as the Order Fulfillment example by non-modeling experts Tool support is available with the Synergia toolset

a university for the world real R 34 © 2009, For more information… …visit