Upload
romina-eramo
View
29
Download
0
Embed Size (px)
Citation preview
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
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
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
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
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
• 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
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
Example
Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo
INITIAL MODEL
VERSION 1
Modeler A Organization 1
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
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
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
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
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
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
Model-driven approach
Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo
Model-driven approach
Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo
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
BPMN
UBPMN
Model-driven approach
Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo
Modeling
Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo
Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo
Modeling
Modeling
Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo
Modeling
Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo
Modeling
Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo
Modeling
Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo
Modeling
Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo
Modeling
Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo
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
Model-driven approach
Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo
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
Management (filter)
Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo
STEP 1:
Management (filter)
Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo
"P12 First Integra?on Check" is MANUALLY SELECTED
STEP 1:
Management (filter)
Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo
"P12 First Integra?on Check" is MANUALLY SELECTED
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
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
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
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
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
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
STEP 2:
Management (filter)
Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo
"P1" is MANUALLY SELECTED
STEP 2:
Management (filter)
Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo
"P1" is MANUALLY SELECTED
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
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
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
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
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
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
STEP 3:
Management (filter)
Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo
"Municipal Desk" is MANUALLY SELECTED
STEP 3:
Management (filter)
Approaching Collabora?ve Modeling as an Uncertainty Reduc?on Process – Romina Eramo
"Municipal Desk" is MANUALLY SELECTED
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
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
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
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
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
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
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
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
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
Thanks
Dipartimento di Ingegneria e Scienze
Università degli Studi dell’Aquila dell’Informazione e Matematica
Romina Eramo [email protected]