60
Romina Eramo , Alfonso Pierantonio, Gianni Rosa [email protected] Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process Dipartimento di Ingegneria e Scienze Università degli Studi dell’Aquila dell’Informazione e Matematica

Approaching Collaborative Modeling as an Uncertainty Reduction Process

Embed Size (px)

Citation preview

Page 1: Approaching Collaborative Modeling as an Uncertainty Reduction Process

Romina Eramo, Alfonso Pierantonio, Gianni Rosa [email protected]

Approaching Collabora?ve Modeling

as an Uncertainty Reduc?on Process

Dipartimento di Ingegneria e Scienze

Università degli Studi dell’Aquila

dell’Informazione e Matematica

Page 2: Approaching Collaborative Modeling as an Uncertainty Reduction Process

Introduc?on

•  Over the last decades many MDE technologies have been conceived to benefit industry in terms of produc?vity, quality and reuse

•  Complex soIware systems demand for effec?ve and specific approaches to keep under control increasing soIware func?onali?es, heterogeneity, team size and geographical distribu?on of developers

•  MDE technologies have to cope with cri?cal concerns such as collabora?ve modeling

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

Page 3: Approaching Collaborative Modeling as an Uncertainty Reduction Process

Collabora?ve modeling

•  In a typical scenario, mul?ple modelers work on the same model in mul?ple branches –  each modeler (or sub team) ini?alizes a repository branch and

makes modifica?ons to this model –  versions grow rapidly

•  Tradi?onal text based version control systems (e.g., SVN, Git) allow programmers to write code by locking a por?on of work or to edit code collabora?vely –  programmers tend to frequently perform merge opera?ons

involving different versions of the same textual ar?facts

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

Page 4: Approaching Collaborative Modeling as an Uncertainty Reduction Process

Collabora?ve modeling

•  In soIware design decisions are made at different development stages and obtaining the merged version early could not be desired

•  Designers may have not the complete, consistent and accurate informa?on required to make a decision at design-?me (or when the conflict occurs)

•  It can be regarded as a source of uncertainty

Conversely, in software design, that is a complex and non-linear process, decisions are made at different development stages and obtaining the merged version early could not be desired Designers may have not the complete, consistent and accurate information required to make a decision at design-time (or when the conflict occurs), that can be regarded as a source of uncertainty

they could perform some analysis or wait for different view models before to be able to choose the best strategy they could be interested in postponing the version merging and continuing to operate on their model versions separately

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

Page 5: Approaching Collaborative Modeling as an Uncertainty Reduction Process

Example

•  Learn PAd project* aims at developing a social and collabora?ve plaZorm that enables Public Administra?ons (PAs) to: –  modeling and manage complex processes and large amount of

informa?on –  upda?ng and sharing models among different organiza?ons

with interrelated ac?vi?es •  The standard nota?on BPMN (Business Processing Model

and Nota?on) is mainly used to specify business processes

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo *Model-Based Social Learning for Public Administra?ons is part of the program FP7-ICT-2013.8.2

Page 6: Approaching Collaborative Modeling as an Uncertainty Reduction Process

•  Ci?zens make a request to municipality and third par?es in order to obtain the permission to start a business ac?vity according to the Italian law

•  The employee in charge checks the received documents and verifies their validity

•  The valid requests are sent to third party in PA in order to undergo the final verifica?on and eventually to be accepted

Example

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

"Check Applica6on" sub- process

"Titolo Unico" process

Page 7: Approaching Collaborative Modeling as an Uncertainty Reduction Process

Example

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

INITIAL MODEL

•  Star?ng from the ini?al model, modelers from different organiza?ons performs their edi?ng in a collabora?ve way

Page 8: Approaching Collaborative Modeling as an Uncertainty Reduction Process

Example

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

INITIAL MODEL

VERSION 1

Modeler A Organization 1

Page 9: Approaching Collaborative Modeling as an Uncertainty Reduction Process

Example

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

INITIAL MODEL

VERSION 1

Modeler A Organization 1

VERSION 2

Modeler B Organization 1

Page 10: Approaching Collaborative Modeling as an Uncertainty Reduction Process

Example

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

VERSION 1

Modeler A Organization 1

VERSION 2

Modeler B Organization 1

VERSION 3

Modeler C Organization 2

Page 11: Approaching Collaborative Modeling as an Uncertainty Reduction Process

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

Example VERSION 1

Modeler A Organization 1

VERSION 2

Modeler B Organization 1

VERSION 3

Modeler C Organization 2

VERSION 4

Modeler D Organization 3

Page 12: Approaching Collaborative Modeling as an Uncertainty Reduction Process

Example and mo?va?on

•  For the scope of the Learn PAd repository, models and their versions has to be maintained and traced, so that further organiza?ons can access and re-use it

•  Hence, it is crucial to have a comprehensive model representa6on that enable the informa?on tracing and the management of different model versions in an automa?c manner

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

Page 13: Approaching Collaborative Modeling as an Uncertainty Reduction Process

Uncertainty reduc?on process

•  Changes introduced by modelers are maintained as alterna?ve elements in the model producing uncertainty

•  Decisions may be made at different development stages requiring the designers to work with their model versions as long as uncertainty can be solved and a merged version can be obtained

•  During the management, modelers increasingly reduce (un?l resolve) such uncertainty by choosing among the alterna?ves

Page 14: Approaching Collaborative Modeling as an Uncertainty Reduction Process

Model-driven approach

Towards Analysing Non-Determinism in Bidirectional Transformations – Romina Eramo

The uncertainty metamodel can be generated to represent mul?ple edi?ngs in collabora?ve modeling as design alterna?ves

Metamodel

Modeling

Modelers can collaborately edit models with uncertainty that seman?cally corresponding to a set of models conform to the base matamodel

Management

Design alterna?ves can be selected and/or merged and the desired (final) model versions obtained

Page 15: Approaching Collaborative Modeling as an Uncertainty Reduction Process

Model-driven approach

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

Page 16: Approaching Collaborative Modeling as an Uncertainty Reduction Process

Model-driven approach

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

Page 17: Approaching Collaborative Modeling as an Uncertainty Reduction Process

Metamodel

•  Given a metamodel MM it is possible to derive its metamodel with uncertainty UMM by means of an automated construc?on

•  A model with uncertainty is used to intensionally represent all the alterna?ve models

•  UMM contains specific connec?ves (points of uncertainty) where model elements belongs to a certain version are agached

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

Page 18: Approaching Collaborative Modeling as an Uncertainty Reduction Process

BPMN

Page 19: Approaching Collaborative Modeling as an Uncertainty Reduction Process

UBPMN

Page 20: Approaching Collaborative Modeling as an Uncertainty Reduction Process

Model-driven approach

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

Page 21: Approaching Collaborative Modeling as an Uncertainty Reduction Process

Modeling

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

Page 22: Approaching Collaborative Modeling as an Uncertainty Reduction Process

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

Modeling

Page 23: Approaching Collaborative Modeling as an Uncertainty Reduction Process

Modeling

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

Page 24: Approaching Collaborative Modeling as an Uncertainty Reduction Process

Modeling

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

Page 25: Approaching Collaborative Modeling as an Uncertainty Reduction Process

Modeling

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

Page 26: Approaching Collaborative Modeling as an Uncertainty Reduction Process

Modeling

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

Page 27: Approaching Collaborative Modeling as an Uncertainty Reduction Process

Modeling

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

Page 28: Approaching Collaborative Modeling as an Uncertainty Reduction Process

Modeling

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

Page 29: Approaching Collaborative Modeling as an Uncertainty Reduction Process

Modeling

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

•  (Nested) uncertainty points represent modelers modifica?ons

•  Models with uncertainty represent different version models

Page 30: Approaching Collaborative Modeling as an Uncertainty Reduction Process

Model-driven approach

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

Page 31: Approaching Collaborative Modeling as an Uncertainty Reduction Process

Need for interoperability and management

•  The concr opera?on gives the modeler an effec?ve support to achieve a complete interoperability between the base and the uncertainty metamodels

concr : UMM → MM

•  The filter opera?on allows modelers to itera?vely reduce the uncertainty by selec?ng the desired alterna?ves in a parametric manner

filter : P × UMM → UMM

–  when the uncertainty is totally resolved, the final model represen?ng the desired design model is obtained

–  the modeler may inten?onally manage a sub-set of uncertainty points and postpone the complete resolu?on

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

Page 32: Approaching Collaborative Modeling as an Uncertainty Reduction Process

Management (filter)

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

Page 33: Approaching Collaborative Modeling as an Uncertainty Reduction Process

STEP 1:

Management (filter)

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

"P12 First Integra?on Check" is MANUALLY SELECTED

Page 34: Approaching Collaborative Modeling as an Uncertainty Reduction Process

STEP 1:

Management (filter)

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

"P12 First Integra?on Check" is MANUALLY SELECTED

Page 35: Approaching Collaborative Modeling as an Uncertainty Reduction Process

STEP 1:

•  All the u-point elements are AUTOMATICALLY SELECTED

Management (filter)

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

"P12 First Integra?on Check" is MANUALLY SELECTED

Page 36: Approaching Collaborative Modeling as an Uncertainty Reduction Process

STEP 1:

•  All the u-point elements are AUTOMATICALLY SELECTED

•  "Modeler B" is AUTOMATICALLY SOLVED

Management (filter)

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

"P12 First Integra?on Check" is MANUALLY SELECTED

Page 37: Approaching Collaborative Modeling as an Uncertainty Reduction Process

STEP 1:

•  All the u-point elements are AUTOMATICALLY SELECTED

•  "Modeler B" is AUTOMATICALLY SOLVED

Management (filter)

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

"P12 First Integra?on Check" is MANUALLY SELECTED

Page 38: Approaching Collaborative Modeling as an Uncertainty Reduction Process

STEP 1:

•  All the u-point elements are AUTOMATICALLY SELECTED

•  "Modeler B" is AUTOMATICALLY SOLVED

•  "Modeler D" is AUTOMATICALLY DROPPED

Management (filter)

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

"P12 First Integra?on Check" is MANUALLY SELECTED

Page 39: Approaching Collaborative Modeling as an Uncertainty Reduction Process

STEP 1:

•  All the u-point elements are AUTOMATICALLY SELECTED

•  "Modeler B" is AUTOMATICALLY SOLVED

•  "Modeler D" is AUTOMATICALLY DROPPED

•  "Modeler B,D" is AUTOMATICALLY SOLVED

Management (filter)

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

"P12 First Integra?on Check" is MANUALLY SELECTED

Page 40: Approaching Collaborative Modeling as an Uncertainty Reduction Process

STEP 1:

•  All the u-point elements are AUTOMATICALLY SELECTED

•  "Modeler B" is AUTOMATICALLY SOLVED

•  "Modeler D" is AUTOMATICALLY DROPPED

•  "Modeler B,D" is AUTOMATICALLY SOLVED

Management (filter)

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

"P12 First Integra?on Check" is MANUALLY SELECTED

Page 41: Approaching Collaborative Modeling as an Uncertainty Reduction Process

STEP 2:

Management (filter)

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

"P1" is MANUALLY SELECTED

Page 42: Approaching Collaborative Modeling as an Uncertainty Reduction Process

STEP 2:

Management (filter)

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

"P1" is MANUALLY SELECTED

Page 43: Approaching Collaborative Modeling as an Uncertainty Reduction Process

STEP 2: •  All the u-point elements are

AUTOMATICALLY SELECTED

Management (filter)

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

"P1" is MANUALLY SELECTED

Page 44: Approaching Collaborative Modeling as an Uncertainty Reduction Process

STEP 2: •  All the u-point elements are

AUTOMATICALLY SELECTED •  "Modeler B, D" is AUTOMATICALLY

SOLVED

Management (filter)

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

"P1" is MANUALLY SELECTED

Page 45: Approaching Collaborative Modeling as an Uncertainty Reduction Process

STEP 2: •  All the u-point elements are

AUTOMATICALLY SELECTED •  "Modeler B, D" is AUTOMATICALLY

SOLVED

Management (filter)

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

"P1" is MANUALLY SELECTED

Page 46: Approaching Collaborative Modeling as an Uncertainty Reduction Process

STEP 2: •  All the u-point elements are

AUTOMATICALLY SELECTED •  "Modeler B, D" is AUTOMATICALLY

SOLVED

•  "Modeler A" is AUTOMATICALLY DROPPED

Management (filter)

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

"P1" is MANUALLY SELECTED

Page 47: Approaching Collaborative Modeling as an Uncertainty Reduction Process

STEP 2: •  All the u-point elements are

AUTOMATICALLY SELECTED •  "Modeler B, D" is AUTOMATICALLY

SOLVED

•  "Modeler A" is AUTOMATICALLY DROPPED

•  "ModelerA, B, D" is AUTOMATICALLY SOLVED

Management (filter)

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

"P1" is MANUALLY SELECTED

Page 48: Approaching Collaborative Modeling as an Uncertainty Reduction Process

STEP 2: •  All the u-point elements are

AUTOMATICALLY SELECTED •  "Modeler B, D" is AUTOMATICALLY

SOLVED

•  "Modeler A" is AUTOMATICALLY DROPPED

•  "ModelerA, B, D" is AUTOMATICALLY SOLVED

Management (filter)

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

"P1" is MANUALLY SELECTED

Page 49: Approaching Collaborative Modeling as an Uncertainty Reduction Process

STEP 3:

Management (filter)

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

"Municipal Desk" is MANUALLY SELECTED

Page 50: Approaching Collaborative Modeling as an Uncertainty Reduction Process

STEP 3:

Management (filter)

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

"Municipal Desk" is MANUALLY SELECTED

Page 51: Approaching Collaborative Modeling as an Uncertainty Reduction Process

STEP 3:

•  All the u-point elements are AUTOMATICALLY SELECTED

Management (filter)

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

"Municipal Desk" is MANUALLY SELECTED

Page 52: Approaching Collaborative Modeling as an Uncertainty Reduction Process

STEP 3:

•  The related elements are AUTOMATICALLY SELECTED

•  "Modeler A,B,D" is AUTOMATICALLY SOLVED

Management (filter)

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

"Municipal Desk" is MANUALLY SELECTED

Page 53: Approaching Collaborative Modeling as an Uncertainty Reduction Process

STEP 3:

•  The related elements are AUTOMATICALLY SELECTED

•  "Modeler A,B,D" is AUTOMATICALLY SOLVED

Management (filter)

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

"Municipal Desk" is MANUALLY SELECTED

Page 54: Approaching Collaborative Modeling as an Uncertainty Reduction Process

STEP 3:

•  The related elements are AUTOMATICALLY SELECTED

•  "Modeler A,B,D" is AUTOMATICALLY SOLVED

•  "Modeler C" is AUTOMATICALLY DROPPED

Management (filter)

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

"Municipal Desk" is MANUALLY SELECTED

Page 55: Approaching Collaborative Modeling as an Uncertainty Reduction Process

STEP 3:

•  The related elements are AUTOMATICALLY SELECTED

•  "Modeler A,B,D" is AUTOMATICALLY SOLVED

•  "Modeler C" is AUTOMATICALLY DROPPED

•  "Modeler A,B,C,D" is AUTOMATICALLY SOLVED

Management (filter)

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

"Municipal Desk" is MANUALLY SELECTED

Page 56: Approaching Collaborative Modeling as an Uncertainty Reduction Process

STEP 3:

•  The related elements are AUTOMATICALLY SELECTED

•  "Modeler A,B,D" is AUTOMATICALLY SOLVED

•  "Modeler C" is AUTOMATICALLY DROPPED

•  "Modeler A,B,C,D" is AUTOMATICALLY SOLVED

Management (filter)

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

"Municipal Desk" is MANUALLY SELECTED

Page 57: Approaching Collaborative Modeling as an Uncertainty Reduction Process

Management (filter)

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

Modelers may solve all the uncertainty and obtain a final model

version otherwise may par?ally solve the

uncertainty and postpone some decisions

Page 58: Approaching Collaborative Modeling as an Uncertainty Reduction Process

Challenges

Our approach requires to be integrated on a collabora?ve modeling plaZorm that supports mul? users in real ?me and collabora?ve modeling paying agen?on to efficiency and performance

MODELING SYSTEM

Visualiza?on of models with uncert. in concrete syntax

Tackling the problem of dependencies and conflicts

Allowing manipula?on and analysis of models with uncert.

Visual editor to interact and manage models with uncert.

① 

②  ③ 

④ 

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

Page 59: Approaching Collaborative Modeling as an Uncertainty Reduction Process

Conclusion

•  Collabora?ve modeling is a crucial concern in soIware development. MDE-based approaches and tools have to enable designers to create and refine models in a collabora?ve manner

•  This work represent a first step to support collabora?ve modeling with a metamodel-independent approach capable of represents and manage design alterna?ves as a model with uncertainty

•  We plan to thoroughly study the exis?ng technologues providing collabora?ve modeling support and then to work toward a framework enabling users to design and manage their models by a comprehensible interface

Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo

Page 60: Approaching Collaborative Modeling as an Uncertainty Reduction Process

Thanks

Dipartimento di Ingegneria e Scienze

Università degli Studi dell’Aquila dell’Informazione e Matematica

Romina Eramo [email protected]