20
Lehrstuhl Informatik 5 (Information Systems) Prof. Dr. M. Jarke 1 This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License. Near Real-Time Collaborative Conceptual Modeling on the Web Michael Derntl, Petru Nicolaescu, Stephan Erdtmann Ralf Klamma, Matthias Jarke RWTH Aachen University Lehrstuhl Informatik 5 – Information Systems lastname@dbis.rwth-aachen.de ER 2015 | 21 Oct 2015 This work has been funded with support from the European Commission. This presentation reflects the views only of the authors, and the Commission cannot be held responsible for any use which may be made of the information contained therein.

SyncMeta: Near Real-time Collaborative Conceptual Modeling on the Web

Embed Size (px)

Citation preview

Lehrstuhl Informatik 5

(Information Systems)

Prof. Dr. M. Jarke

1 This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.

Near Real-Time Collaborative

Conceptual Modeling on the Web

Michael Derntl, Petru Nicolaescu, Stephan Erdtmann

Ralf Klamma, Matthias Jarke

RWTH Aachen University

Lehrstuhl Informatik 5 – Information Systems

[email protected]

ER 2015 | 21 Oct 2015

This work has been funded with support from the European Commission. This presentation reflects

the views only of the authors, and the Commission cannot be held responsible for any use which

may be made of the information contained therein.

Lehrstuhl Informatik 5

(Information Systems)

Prof. Dr. M. Jarke

2

Motivation

Conceptual modeling– Key activity in many areas

– Social, creative process [FK98] – collaborative work [RKV08]

Typical collaboration: asynchronous

Availability of near real-time (NRT) collaborative modeling tools– On desktop and on the Web

– From highly domain-specific tools like Kanban Tool1…

– … to very generic ones like draw.io2

1 http://kanbantool.com2 http://www.draw.io

Lehrstuhl Informatik 5

(Information Systems)

Prof. Dr. M. Jarke

3

Near Real-Time Collaborative Editing

Synchronous editing independent of the location of the users– Propagation of user actions to collaborators

– Responsiveness similar to single-user applications

– Consistency maintenance

Inconsistencies caused by divergence or causality-violation [SE98]

Two approaches for consistency preservation– Conflict prevention [XZS00]

– Conflict resolution [SE98]

Architectures– Centralized architecture (client/server)

– Decentralized architecture (peer-to-peer)

Lehrstuhl Informatik 5

(Information Systems)

Prof. Dr. M. Jarke

4

Objectives

Functional

• Framework for NRT collaborative modelling

(domain-independent)

• Meta model based

• Visual modeling

• Awareness

• Structure editing support

Non-Functional

• Open source code

• Building on open protocols

• Runs in Web browsers

Research the shift towards Web-based collaborative modeling

Lehrstuhl Informatik 5

(Information Systems)

Prof. Dr. M. Jarke

5

Related Tools & Frameworks

Platform Domain-

Indepen-

dent

Meta-

Modeling

NRT

Collab

oration

Awareness Web-

based

Open

Source

MetaEdit+ [TPK07] Smalltalk ✓ ✓ (✓)

ADOxx [FK13] Gecko/C++ ✓ ✓

DiaMeta [Mi07] Java / EMF ✓ ✓ ✓

Gallardo et al.

[GBR12]

Java / EMF ✓ ✓ ✓ ✓

Tiger [Eh05] Java / EMF ✓ ✓

AToM3 [LVA04] Python ✓ ✓ ✓

GenGED [BEW04] Java ✓ ✓

TWICE [SLHi14] Java/JS/

GWT

✓ ✓ ✓ ✓ ✓

SyncMeta JS/ ROLE SDK ✓ ✓ ✓ ✓ ✓ ✓

Lehrstuhl Informatik 5

(Information Systems)

Prof. Dr. M. Jarke

7

Real-time collaboration on both modeling layers

Meta-Modeling Framework:

Modeling Process & User Roles

Lehrstuhl Informatik 5

(Information Systems)

Prof. Dr. M. Jarke

11

Model Editor is special instance of Meta-Model Editor

Uses special Export Widget for Model Editor Generation

GUI Architecture

Lehrstuhl Informatik 5

(Information Systems)

Prof. Dr. M. Jarke

12

Technical Realization

Communication protocol: XMPP – Suitable protocol for NRT communication

– Multiple extensions available (publish subscribe, multi-user chat)

– Client and server support

Open source ROLE SDK based on Apache Shindig– User management

– Personal and collaborative widget space management

– XMPP based multi-user chat

Inter-widget communication (IWC) [GVD+11]

– Local IWC based on HTML5 Web Messaging API

– Remote IWC based on XMPP Publish Subscribe XEP

– Strophe.js (XMPP over BOSH and WebSockets)

Conflict Resolution– Opencoweb OT Javascript framework

Lehrstuhl Informatik 5

(Information Systems)

Prof. Dr. M. Jarke

13

Model Editor - Functionality

Near real-time synchronization

Awareness

- Activity Pane

- Highlighting of nodes

User interaction to add nodes / edges

- Palette

- Context menu

Export of Model as JSON, PNG File

- Custom export widgets

Lehrstuhl Informatik 5

(Information Systems)

Prof. Dr. M. Jarke

14

End-User Evaluation

Goal

- Evaluation of usability and usefulness of Model Editor

- Obtain feedback for improvement

Methodology

- Editor instance for i* modeling language [Yu95]

- Evaluation session in groups of two

- Participants could see and talk to each other, but were not

able to see each other‘s screen (Skype-like setting)

- Task: Jointly recreate a given i* model using the editor

- Rating using surveys with seven-point Likert scale items

Lehrstuhl Informatik 5

(Information Systems)

Prof. Dr. M. Jarke

15

End-User Evaluation (cont.)

Participants

- Ten group sessions with 20 participants in total

- Diverse expertise of conceptual modeling and the i*

modeling language (novices as well as experts)

- Regular to frequent usage of graphical editors

Lehrstuhl Informatik 5

(Information Systems)

Prof. Dr. M. Jarke

16

Evaluation:

Quantitative Results

Overall

– Very positive overall rating (M = 5.7; SD = 1.2)

– User interface and usability also good (M = 5.9 and 5.7,

respectively)

– Ratings independent of user experience (r = .32; p = .17)

User interaction

– For adding nodes resp. edges participants prefer the context

menu (M = 5.9 and 5.7, resp.) over palette (M = 5.3 each)

Awareness

– Node highlighting (M = 5.7; SD = 1.2) slightly higher than

activity pane (M = 5.5; SD = 1.4)

Lehrstuhl Informatik 5

(Information Systems)

Prof. Dr. M. Jarke

17

Evaluation:

Suggested Improvements

Increase overview for large models

Highlighting of remote changes

Keyboard shortcuts

Multiselection of nodes

Automatic node arrangement

Drag & drop from palette

Lehrstuhl Informatik 5

(Information Systems)

Prof. Dr. M. Jarke

18

Conclusion and Future Work

Key points

- Browser-based Meta-Modeling Framework

- Generation of RTC Editors for Visual Modeling Languages

Different types of user interaction

Awareness

- Pilot case: i* editor; generally positive evaluation

Future work

- Views for NRT modeling

- Recommendations during modeling

- Improvement of collaboration using the Yjs OSS library

Lehrstuhl Informatik 5

(Information Systems)

Prof. Dr. M. Jarke

19

THANK YOU FOR LISTENING

[email protected]

Nicolaescu Petru

SyncMeta Project Description

GitHub: https://github.com/rwth-acis/syncmeta

Lehrstuhl Informatik 5

(Information Systems)

Prof. Dr. M. Jarke

20

References

[BEW04] Bardohl, R.; Ermel, C.; Weinhold, I: GenGED–a visual definition tool for visual modeling environments. In Pfaltz, J. L.; Nagl, M.; Böhlen, B. (Hrsg.): Applications of Graph Transformations with Industrial Relevance. Springer, Berlin, 2004; p. 413–419.

[Eh05] Ehrig, K. et al.: Generation of visual editors as eclipse plug-ins. In: Proc. 20th IEEE/ACM Int. Conf. on Automated Software Engineering. ACM, New York, 2005; p. 134–143.

[FK98] Floyd, C.; Klischewski, R.: Modellierung - ein Handgriff zur Wirklichkeit. Zur sozialen Konstruktion und Wirksamkeit von Informatik-Modellen. In: Pohl, K.; Schürr, A.; Vossen, G. (Hrsg.): Modellierung '98. CEUR-WS.org, 1998.

[FK13] Fill, H.-G.; Karagiannis, D.: On the conceptualisation of modelling methods using the ADOxx meta modelling platform. In: Enterprise Modelling and Information Systems Architectures, 8(1), 2013.

[GBR12] Gallardo, J.; Bravo, C.; Redondo, M. A.: A model-driven development method for collaborative modeling tools. Journal of Network and Computer Applications, 35(3), 2012; p. 1086–1105.

[GVD+11] Govaerts, S.; Verbert, K.; Dahrendorf, D.; Ullrich, C.; Schmidt, M.; Werkle, M.; Chatterjee, A.; Nussbaumer, A.; Renzel, D.; Scheffel, M.; Friedrich, M.; Santos, J. L.; Duval, E.; Law, E.: Towards Responsive Open Learning Environments: The ROLE InteroperabilityFramework. In: Proc. EC-TEL 2011. Springer, Berlin, 2011; S. 125-138.

[LVA04] de Lara, J.; Vangheluwe, H.; Alfonseca, M.: Meta-modelling and graph grammars for multi-paradigm modelling in AToM³. Software and Systems Modeling, 3(3), 2004; p. 194–209.

[Mi07] Minas, M.: Generating meta-model-based freehand editors. Electronic Communi-cations of the EASST, 1, 2007.

[SLHi14] Schmid, O., Lisowska Masson, A., Hirsbrunner, B.: Real-time collaboration through web applications: an introduction to the Toolkit for Web-based Interactive Collaborative Environments (TWICE). Personal and Ubiquitous Computing

18(5) (2014) 1201{1211[Ol07] Olivé, A.: Conceptual modeling of information systems. Springer, 2007.

[RKV08] Renger, M.; Kolfschoten, G. L.; de Vreede, G.-J.: Challenges in Collaborative Modeling: A Literature Review. Lecture Notes in Business Information Processing, Volume 10, 2008; p. 61-77.

[SE98] Sun, C.; Ellis, C.: Operational transformation in real-time group editors: issues, algorithms, and achievements. In: Proc. 1998 ACM Conf. on Computer Supported Cooperative Work. ACM, New York, 1998; p. 59–68.

[TPK07] Tolvanen, J.-P.; Pohjonen, R.; Kelly, S.: Advanced tooling for domain-specific modeling: Metaedit+. In: Sprinkle, J.; Gray, J.; Rossi, M.; Tolvanen, J.-P. (Hrsg.): 7th OOPSLA Workshop on Domain-Specific Modeling, Finland, 2007.

[XZS00] Xue, L.; Zhang, K.; Sun, C.: Conflict control locking in distributed cooperative graphics editors. In: Proc. 1st Int. Conf. on Web Information Systems Engineering. IEEE, Los Alamitos, 2000; p. 401–408.