Semantic Collaboration for Eclipse Modeling
Budapest University of Technology and Economics
Department of Measurement and Information Systems
Exploring the future of Eclipse Modeling:
Semantic Collaboration
Gábor Bergmann1,2, Csaba Debreceni1,2,
István Ráth1,3 and Dániel Varró1,2
1 Budapest University of Technology and Economics
2 MTA-BME Lendület Research Group on Cyber-Physical Systems
3 IncQuery Labs Ltd.
Semantic Collaboration for Eclipse Modeling
Motivation
 Growing interest in collaborative modeling
 Difficult problem
o Allow a group of modeling users work together seamlessly
• Not block each other
• But minimize the impact of conflicts
o On complex modeling scenarios (e.g. Systems Engineering)
• Logical hierarchies
• File structures
o While not necessarily seeing everything
• Internal policies
• External organizational boundaries (OEMS, subcontractors, ...)
Semantic Collaboration for Eclipse Modeling
What’s wrong today?
 Offline team support for Modeling still has gaps
o Usability
o Scalability
o Rigidity
• Access control tied to file system structure through file-
centric legacy mechanisms (e.g. SVN ACLs, Git addons)
• Model re-fragmentation is not easy
 Online collaboration (CDO, EMFStore) not always
a solution
o Requires (deep) modification of modeling tools
o “Exotic” infrastructure overhead (databases)
o Does not interplay well with file-centric processes
Challenge:
How to provide secure
access for collaboration,
while retaining
compatibility with
traditional VCS?
 Access control
aspects are interleaved
with model
fragmentation policies
 Access policy
changes are not easy
to follow through
(to say the least)
Semantic Collaboration for Eclipse Modeling
 Fine-grained access control
o Additional access restrictions
• Complementing file-based solutions
– Works together with SVN/Git ACLs
• Filtering and obfuscation
o Grant separate permissions on each
• Object (class instance)
• Slot (attribute instance)
• Link (reference instance)
Our vision for access control for models
Challenge:
How to identify assets in
rule-based policy?
…rules may evaluate
the context of
the model element via
model queries
Challenge:
How to express policy
for so many assets?
…use access rules instead
of individual permission
assignment
assets
Semantic Collaboration for Eclipse Modeling
How model repositories work
M
V1 V2 Filtered views
Gold model
Synchronization
User A User B
Database
DB
transactions
In-memory
copies
CDO/EMFStore-
aware tool
Semantic Collaboration for Eclipse Modeling
Our approach
M
V1 V2
Filtered views
Gold model
Synchronization
User A User B
VCS gold
repo
VCS operations
(checkout,
commit, …)
Local files in
working copy Your standard
tool
Server-side bidirectional model
transformations (VIATRA)
• Integrated via VCS hooks
• Scales well to large models
• New ACL
• Extends existing ACLs
• Context-aware, based
on model queries
V1 V2
VCS front
repos
All standard VCS
features work out of
the box!
• Locking
• Model-aware
• History
• Compare/merge
Semantic Collaboration for Eclipse Modeling
DEMO SCREENCAST
https://youtu.be/WJZOascRMno
Semantic Collaboration for Eclipse Modeling
Conclusions
 New semantic collaborative modeling framework
o Semantic = ACL „understands” the contents of model files
o Distinguished paper at MODELS 2016: https://goo.gl/hYWLhb
 SVN/Git
o Additional flexibility (fine-grained rule-based model-aware ACL)
o Security through server-side enforcement
o Without changing existing modeling and VCS tools
 Online collaboration on the web
o RAP
o Future plans: Che, others (WMF? even CDO/EMFStore is possible)
 We want to bring this to Eclipse, looking for interested parties
and contributors!
o Code, demos:
https://github.com/FTSRG/mondo-collab-framework
o Project proposal draft: http://goo.gl/ZndnQZ

Exploring the Future of Eclipse Modeling: Web and Semantic Collaboration

  • 1.
    Semantic Collaboration forEclipse Modeling Budapest University of Technology and Economics Department of Measurement and Information Systems Exploring the future of Eclipse Modeling: Semantic Collaboration Gábor Bergmann1,2, Csaba Debreceni1,2, István Ráth1,3 and Dániel Varró1,2 1 Budapest University of Technology and Economics 2 MTA-BME Lendület Research Group on Cyber-Physical Systems 3 IncQuery Labs Ltd.
  • 2.
    Semantic Collaboration forEclipse Modeling Motivation  Growing interest in collaborative modeling  Difficult problem o Allow a group of modeling users work together seamlessly • Not block each other • But minimize the impact of conflicts o On complex modeling scenarios (e.g. Systems Engineering) • Logical hierarchies • File structures o While not necessarily seeing everything • Internal policies • External organizational boundaries (OEMS, subcontractors, ...)
  • 3.
    Semantic Collaboration forEclipse Modeling What’s wrong today?  Offline team support for Modeling still has gaps o Usability o Scalability o Rigidity • Access control tied to file system structure through file- centric legacy mechanisms (e.g. SVN ACLs, Git addons) • Model re-fragmentation is not easy  Online collaboration (CDO, EMFStore) not always a solution o Requires (deep) modification of modeling tools o “Exotic” infrastructure overhead (databases) o Does not interplay well with file-centric processes Challenge: How to provide secure access for collaboration, while retaining compatibility with traditional VCS?  Access control aspects are interleaved with model fragmentation policies  Access policy changes are not easy to follow through (to say the least)
  • 4.
    Semantic Collaboration forEclipse Modeling  Fine-grained access control o Additional access restrictions • Complementing file-based solutions – Works together with SVN/Git ACLs • Filtering and obfuscation o Grant separate permissions on each • Object (class instance) • Slot (attribute instance) • Link (reference instance) Our vision for access control for models Challenge: How to identify assets in rule-based policy? …rules may evaluate the context of the model element via model queries Challenge: How to express policy for so many assets? …use access rules instead of individual permission assignment assets
  • 5.
    Semantic Collaboration forEclipse Modeling How model repositories work M V1 V2 Filtered views Gold model Synchronization User A User B Database DB transactions In-memory copies CDO/EMFStore- aware tool
  • 6.
    Semantic Collaboration forEclipse Modeling Our approach M V1 V2 Filtered views Gold model Synchronization User A User B VCS gold repo VCS operations (checkout, commit, …) Local files in working copy Your standard tool Server-side bidirectional model transformations (VIATRA) • Integrated via VCS hooks • Scales well to large models • New ACL • Extends existing ACLs • Context-aware, based on model queries V1 V2 VCS front repos All standard VCS features work out of the box! • Locking • Model-aware • History • Compare/merge
  • 7.
    Semantic Collaboration forEclipse Modeling DEMO SCREENCAST https://youtu.be/WJZOascRMno
  • 8.
    Semantic Collaboration forEclipse Modeling Conclusions  New semantic collaborative modeling framework o Semantic = ACL „understands” the contents of model files o Distinguished paper at MODELS 2016: https://goo.gl/hYWLhb  SVN/Git o Additional flexibility (fine-grained rule-based model-aware ACL) o Security through server-side enforcement o Without changing existing modeling and VCS tools  Online collaboration on the web o RAP o Future plans: Che, others (WMF? even CDO/EMFStore is possible)  We want to bring this to Eclipse, looking for interested parties and contributors! o Code, demos: https://github.com/FTSRG/mondo-collab-framework o Project proposal draft: http://goo.gl/ZndnQZ

Editor's Notes

  • #2 Utolsó módosítás: