19
Lehrstuhl Informatik 5 (Information Systems) Prof. Dr. M. Jarke I5-KRNK-0713-1 This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License. Browser-Based Collaborative Modeling in Near Real-Time Petru Nicolaescu, Michael Derntl, Ralf Klamma RWTH Aachen University Advanced Community Information Systems (ACIS) {lastname}@dbis.rwth-aachen.de 9th IEEE International Conference on Collaborative Computing: Networking, Applications and Worksharing Austin, Texas, United States This project 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.

Browser-Based Collaborative Modeling in Near Real-Time

Embed Size (px)

DESCRIPTION

Nicolaescu, P., Derntl, M., Klamma, R.: Browser-Based Collaborative Modeling in Near Real-Time. In Proceedings of 9th IEEE International Conference on Collaborative Computing: Networking, Applications and Worksharing (CollaborateCom 2013). Austin, TX, USA: IEEE (2013)

Citation preview

Page 1: Browser-Based Collaborative Modeling in Near Real-Time

Lehrstuhl Informatik 5

(Information Systems)

Prof. Dr. M. Jarke

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

Browser-Based Collaborative

Modeling in Near Real-Time

Petru Nicolaescu, Michael Derntl, Ralf Klamma

RWTH Aachen University

Advanced Community Information Systems (ACIS)

{lastname}@dbis.rwth-aachen.de

9th IEEE International Conference on Collaborative

Computing: Networking, Applications and Worksharing

Austin, Texas, United States

This project 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.

Page 2: Browser-Based Collaborative Modeling in Near Real-Time

Lehrstuhl Informatik 5

(Information Systems)

Prof. Dr. M. Jarke

I5-KRNK-0713-2

Responsive Open

Community Information

Systems

Community Visualization

and Simulation

Community Analytics

Community Support

Web

An

alytics

Web

En

gin

eeri

ng

Advanced Community

Information Systems (ACIS)

Requirements

Engineering

Page 3: Browser-Based Collaborative Modeling in Near Real-Time

Lehrstuhl Informatik 5

(Information Systems)

Prof. Dr. M. Jarke

I5-KRNK-0713-3

Agenda

Motivation

Background and related work

System design & implementation

Evaluation

Conclusions and outlook

Page 4: Browser-Based Collaborative Modeling in Near Real-Time

Lehrstuhl Informatik 5

(Information Systems)

Prof. Dr. M. Jarke

I5-KRNK-0713-4

Motivation

Computer supported near real-time (NRT) collaboration

– Technology availability (e.g. XMPP, WebRTC)

– Large-scale adoption of collaborative systems

– Enables higher productivity

– Improved results as output

Support communities of practice with collaboration technologies beyond Google Docs

– Communities reluctant to adopt NRT collaboration

– Case study: enabling co-design support for teacher communities by redesign of IMS Learning Design stand-alone applications

Framework for NRT collaborative modelling

OpenGLM [24], COLLAGE [8], RELOAD [9]

Page 5: Browser-Based Collaborative Modeling in Near Real-Time

Lehrstuhl Informatik 5

(Information Systems)

Prof. Dr. M. Jarke

I5-KRNK-0713-5

IMS Learning Design(IMS LD)

Authoring

A specification used to describe a “learning design” of a “unit of learning”

Describes the teaching-learning process of a unit of learning (a course, a seminar, etc.)

Metis project

– supporting co-design for communities of practitioners using authoring tools (e.g. collaborative learning)

Three levels of implementation

– Level A: core elements

– Level B: adds control of properties and conditions

– Level C: adds notification to level B

Page 6: Browser-Based Collaborative Modeling in Near Real-Time

Lehrstuhl Informatik 5

(Information Systems)

Prof. Dr. M. Jarke

I5-KRNK-0713-6

Problem Identification

Page 7: Browser-Based Collaborative Modeling in Near Real-Time

Lehrstuhl Informatik 5

(Information Systems)

Prof. Dr. M. Jarke

I5-KRNK-0713-7

Real-time Collaborative Editing

Synchronous editing independent of the location of the users – Every user is aware of actions of his collaborators

– Editor responsiveness similar to single-user applications

– Consistency maintenance

Inconsistencies caused by divergence or causality-violation [11] (Sun et al., 1998)

Two approaches for consistency preservation – Conflict prevention (Xue et al., 2000)

– Conflict resolution [11] (Sun et al., 1998)

Architectures – Centralized architecture (client/server)

– Decentralized architecture (peer-to-peer)

Page 8: Browser-Based Collaborative Modeling in Near Real-Time

Lehrstuhl Informatik 5

(Information Systems)

Prof. Dr. M. Jarke

I5-KRNK-0713-8

Related Work

IMS LD authoring tools

Near real-time collaboration systems

Tool Application Type NRT Collaboration Async. Sharing

ReLoad [9] Desktop N/A N/A

ReCourse [23] Desktop N/A N/A

OpenGLM [24] Desktop N/A +

WebCollage [8] Web-based N/A +

System Type NRT Collaboration

Apache Wave [17] NRT collaboration platform Federated

Etherpad (etherpad.org) Collaborative text editor Client - Server

Google Real-time API (developers.google.com/drive)

Client-side collaboration APIs Client - Server

GROVE [16] Collaborative text editing system Client - Server

OpenCoWeb Open-source NRT collaboration framework P2P / Client-Server

Page 9: Browser-Based Collaborative Modeling in Near Real-Time

Lehrstuhl Informatik 5

(Information Systems)

Prof. Dr. M. Jarke

I5-KRNK-0713-9

Key Contributions

SyncLD: Web-based NRT collaborative IMS learning

design authoring tool

– Web-based application

– NRT concurrent editing in a decentralized

context based on open-source software

and Operational Transformation (OT)

– Visual modelling

– Use case for NRT collaborative modelling

Evaluation of usability for the Web-based

synchronous learning design authoring

Page 10: Browser-Based Collaborative Modeling in Near Real-Time

Lehrstuhl Informatik 5

(Information Systems)

Prof. Dr. M. Jarke

I5-KRNK-0713-10 Space (shared by multiple users)

ROLE Framework

Web widget (Collaborative Web Component)

EU FP7 ROLE Project

http://role-sandbox.eu/

Page 11: Browser-Based Collaborative Modeling in Near Real-Time

Lehrstuhl Informatik 5

(Information Systems)

Prof. Dr. M. Jarke

I5-KRNK-0713-11

SyncLD

Multi-user chat and

presence awareness

(based on ROLE SDK)

Visual modelling for

activities

Tree structure and

property editing available

– Activities

– Environments

– Roles

– Role-parts

– Resources

NRT property changes

NRT shared editing for

text-based fields

Page 12: Browser-Based Collaborative Modeling in Near Real-Time

Lehrstuhl Informatik 5

(Information Systems)

Prof. Dr. M. Jarke

I5-KRNK-0713-12

SyncLD Architecture

Page 13: Browser-Based Collaborative Modeling in Near Real-Time

Lehrstuhl Informatik 5

(Information Systems)

Prof. Dr. M. Jarke

I5-KRNK-0713-13

Implementation

XMPP

– Suitable protocol for NRT communication

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

– Client and server support (Smack, Strophe, Openfire, ejabberd)

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)

– Local IWC based on HTML5 Web Messaging API

– Remote IWC based on XMPP Publish Subscribe XEP

– Strophe.js (XMPP over Bosch and WebSockets)

Page 14: Browser-Based Collaborative Modeling in Near Real-Time

Lehrstuhl Informatik 5

(Information Systems)

Prof. Dr. M. Jarke

I5-KRNK-0713-14

Operational Transformation (OT)

OpenCoWeb framework

– Javascript OT peer to peer client-side library

– Modifications to integrate with the ROLE infrastructure

and to support the IMS LD model

Page 15: Browser-Based Collaborative Modeling in Near Real-Time

Lehrstuhl Informatik 5

(Information Systems)

Prof. Dr. M. Jarke

I5-KRNK-0713-15

Operations and the OT Engine

Page 16: Browser-Based Collaborative Modeling in Near Real-Time

Lehrstuhl Informatik 5

(Information Systems)

Prof. Dr. M. Jarke

I5-KRNK-0713-16

User Evaluation

5 evaluation sessions within the METIS project – Predefined authoring scenario

– 4 steps

– 3 users per session

– 1 IMS LD authoring expert

– Concurrent model modifications

Questionnaire – 7 multiple choice questions

– Open questions

Targets – Experience synchronized Web-based collaborative IMS LD

authoring while increasing the chance of concurrent edits

– Usability and usefulness of the tool

– Compare the output for consistency

Page 17: Browser-Based Collaborative Modeling in Near Real-Time

Lehrstuhl Informatik 5

(Information Systems)

Prof. Dr. M. Jarke

I5-KRNK-0713-17

User Evaluation Results

Page 18: Browser-Based Collaborative Modeling in Near Real-Time

Lehrstuhl Informatik 5

(Information Systems)

Prof. Dr. M. Jarke

I5-KRNK-0713-18

Technical Evaluation & Challenges

ROLE messaging infrastructure for NRT collaboration setting

OT Engine performance (consistency preservation)

Integration of the open source projects

Challenges – Awareness for multiple users

– Late-join support

– Import functionality

Page 19: Browser-Based Collaborative Modeling in Near Real-Time

Lehrstuhl Informatik 5

(Information Systems)

Prof. Dr. M. Jarke

I5-KRNK-0713-19

Conclusions and Future Work

SyncLD – Supports NRT collaborative editing of learning design models and

was perceived highly useful by designers

– Open source integration for enabling NRT collaboration – XMPP-based NRT messaging infrastructure

– OT client framework for ensuring data integrity and consistency

– Web-based authoring better perceived than desktop

Future work – Potential integration with the Integrated Learning Design

Environment (ILDE) in the METIS project

– Awareness widget and activity tracker

– Provide nudges for collaboration support

– Abstraction of the NRT collaboration framework for arbitrary models using flexible modeling processes