Approaching Collaborative Modeling as an Uncertainty Reduction Process
1. Romina Eramo, Alfonso Pierantonio, Gianni Rosa
name.surname@univaq.it
Approaching Collabora?ve Modeling
as an Uncertainty Reduc?on Process
Dipartimento di Ingegneria e Scienze
Università degli Studi dell’Aquila
dell’Informazione e Matematica
2. 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
3. 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
4. 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
gn,
near
at
es
rsion
ed to
me
s),
ource
rent
able
gy
n
rging
on
rately
Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo
5. 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
6. • 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
7. 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
9. 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
10. 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
11. 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
12. 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
13. 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
14. 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
17. 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
31. 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
33. STEP 1:
Management (filter)
Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo
"P12 First Integra?on Check" is
MANUALLY SELECTED
34. STEP 1:
Management (filter)
Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo
"P12 First Integra?on Check" is
MANUALLY SELECTED
35. 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
36. 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
37. 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
38. 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
39. 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
40. 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
41. STEP 2:
Management (filter)
Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo
"P1" is MANUALLY SELECTED
42. STEP 2:
Management (filter)
Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo
"P1" is MANUALLY SELECTED
43. 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
44. 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
45. 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
46. 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
47. 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
48. 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
49. STEP 3:
Management (filter)
Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo
"Municipal Desk" is MANUALLY
SELECTED
50. STEP 3:
Management (filter)
Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo
"Municipal Desk" is MANUALLY
SELECTED
51. 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
52. 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
53. 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
54. 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
55. 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
56. 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
57. 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
58. 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
59. 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
60. Thanks
Dipartimento di Ingegneria e Scienze
Università degli Studi dell’Aquila
dell’Informazione e Matematica
Romina Eramo
romina.eramo@univaq.it