Quarterly Report - Opera browser - The alternative web browser
Browser-Based Collaborative Modeling in Near Real-Time
-
Upload
nicolaescu-petru -
Category
Technology
-
view
1.330 -
download
2
description
Transcript of 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.
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
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
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]
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
Lehrstuhl Informatik 5
(Information Systems)
Prof. Dr. M. Jarke
I5-KRNK-0713-6
Problem Identification
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)
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
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
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/
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
Lehrstuhl Informatik 5
(Information Systems)
Prof. Dr. M. Jarke
I5-KRNK-0713-12
SyncLD Architecture
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)
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
Lehrstuhl Informatik 5
(Information Systems)
Prof. Dr. M. Jarke
I5-KRNK-0713-15
Operations and the OT Engine
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
Lehrstuhl Informatik 5
(Information Systems)
Prof. Dr. M. Jarke
I5-KRNK-0713-17
User Evaluation Results
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
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