47
Distributed Tool Suite Enhancing the Collaboration Experience LUCeS Adrian Fish [email protected] Miguel Gonzalez [email protected]

Distributed Tool Suite Enhancing the Collaboration Experience LUCeS Adrian Fish [email protected] Miguel Gonzalez [email protected]

Embed Size (px)

Citation preview

Distributed Tool SuiteEnhancing the Collaboration

Experience

LUCeS

Adrian Fish [email protected] Gonzalez [email protected]

About Us• We work for the Centre for e-Science (LUCeS)

at Lancaster University in the UK• We are currently funded, by the JISC, to develop

an e-Research environment for UK scientists using Sakai

• We have been focusing on developing advanced collaboration tools that extend and complement the standard ‘out of the box’ tool set that comes with Sakai

Table of Contents• Background

– The Problem– The Solution?

• The Tools and Some Use Cases– Whiteboard– Shared Display– Blogger– Conferencing

• Technical Stuff

Background

The Problem• From our experience, UK scientists commonly use a fragmented collection

of desktop and web based tools for collaboration and data analysis• We consulted with scientists; asking them what tools they use to collaborate

with each other• Some of the highlighted tools were VNC type display sharing tools, audio

and video conferencing and IRC (Internet Relay Chat) tools.• Our experts expressed that it would be nice to have a set of such tools in an

easily accessible, web-based toolkit• We discovered Sakai and were impressed with its method of grouping

users, and the default set of collaboration tools that come ‘out of the box’, BUT … it is still missing some of the tools described by our ‘experts’

• Most of the ‘missing’ tools are already well known in a classroom context, but need to be made available in a geographically distributed, collaborative context

The Solution?• Identify the most widely used standalone tools and either port them

into web applications or develop new web based versions from scratch

• Get some money off somebody so we can get paid to do the work!• The VRE Demonstrator project, funded by the JISC, is a

collaborative effort between 4 UK institutions, Lancaster, CCLRC Daresbury, Oxford and Portsmouth

• The project aims to provide a suite of useful tools and a Sakai ‘portal’ to give tangible demonstrations of their benefit for distributed scientific teams. Users get all Sakai’s collaboration tools plus our distributed tools and happiness prevails! In theory of course …

The Tools and Some Use Cases

A Quick Overview

• Whiteboard – a many-to-many drawing tool

• Shared Display – a one-to-many application sharing tool

• Blogger – a Sakai blogging tool• Conferencing – a tool for creating and

participating in audio and video conferences

Whiteboard• The whiteboard allows a group of worksite users to

collaboratively sketch onto a canvas• All participants receive the pen strokes from every other

participant• Can be used with the audio tool to build freehand

diagrams as a team, work on mathematical formulae, etc.

• Drops straight into Sakai with minimal configuration• Uses the MessagingService (more later about that) to

route the pen strokes to whiteboard participants

• A course tutor sets up a tutorial session involving the whiteboard and audio tools and then emails an invitation to her students

• Students log into the worksite at the pre-arranged time and start the tutorial session

• The tutor draws on the whiteboard and talks to her students simultaneously

bla, bla bla

UC1: Whiteboard and Audio

UC2: Whiteboard and Video

• A course tutor sets up a tutorial session involving the whiteboard and video tools and then emails an invitation to her students

• She shows a quartz rock to her students, freezes the image, partially sketches the crystal structure and asks a student to complete the sketch

Quartz!!!

Whiteboard

Whiteboard

Whiteboard

Whiteboard

Shared Display• Allows Sakai users to broadcast JPEG images

of their desktop to a select group of fellow worksite users

• Network friendly. Only the area of screen that has changed is sent to subscribers

• When used in conjunction with the audio tool you have a powerful tool for document editing or collaborative software development

• Only the producer needs to have installed the software visible in the display being broadcast -all that is being sent is a stream of JPEGs

Shared Display Use Cases

• A team wants to work on a document together. As one types the others watch, and can discuss the changes using the audio tool. This could be a Word document, a Java source file in Eclipse, Photoshop …

• A tutor demonstrates some software to her students. She uses the software whilst talking about her actions. The students watch, listen and can ask questions via the audio tool

Edit

View View View

TalkTalk

Talk

Show

View View View

TalkTalk

Talk

Shared Display

Shared Display

Shared Display

Starting the Producer

Email Invitation

Starting the Consumer

Blogger• Brings powerful blog functionality to Sakai• Worksite users can author rich blog entries, can insert

inline images and attach files• Title, abstract and keywords can be specified for each

entry• Two editing modes, rich text (WYSIWYG) and html• Private, worksite and public visibility of entries, specified

by author• Entries can be searched easily• Entries can be commented by other worksite users

Blogger Use Cases

• Can be used as a shared journal for a tutorial group. The journal entries will be stored in the database for later use

• Can be used to construct lessons; text, images, links and attachments can be combined together. The same approach can be used to construct a ‘newspaper’ for a worksite

Blogger

Blogger

Blogger

Blogger

Blogger

Blogger

Blogger

Conferencing

• Gives Sakai worksite users the ability to start, and participate in, full multi-way audio and video conferences from within the Sakai environment

• The audio tool adds value to the other tools in the suite - it is hard ‘doing’ textual chat whilst using a whiteboard!

Conferencing

Conferencing

Conferencing

Technical Stuff

MessagingService• A Spring component that allows tool clients to

create new channels with specified users• Drops into Sakai using a standard maven build• Is currently used by the whiteboard and shared

display tools, but is generic enough to be easily used for others

• Comes with a Sakai tool base class that handles all of the interaction with the messaging service. This can be specialised into your tool by implementing a few simple methods

MessagingService

• Invitees join channels using the MessagingWebService. The web service passes the invitee’s IP address to the MessagingService

• Clients send datagrams to the MessagingService. Service inspects the packet header and passes the packet to the specified channel. The channel forwards the packet on to all the subscribers, using the addresses supplied via the web service

MessagingService Classes

Shared Display• Uses the MessagingService to send JPEG desktop

snapshots to channel subscribers• Screen is broken into a set of tiles, designed to fit into a

64KB datagram packet. At 32bpp colour depth, this equates to a 128 pixel square tile per datagram

• Only the tiles that have changed are sent; this should hopefully reduce bandwidth requirements

• One-to-many. The user that creates the channel becomes the publisher and their screen is grabbed, split and broadcast to the other channel users.

Whiteboard

• Strokes of the mouse are encoded as vectors inside a datagram packet, and also recorded in a journal

• The packet is sent to the messaging service, which then sends it on to all the channel subscribers

• Subscribers extract the vectors from the packet, write them to the journal and draw the pen strokes

ConferencingService

• The conferencing service is a Spring component that drops into Sakai and needs minimal configuration

• It sets up four datagram sockets and routes packets received on these sockets to the relevant conference object

• Implements a software multicast algorithm and delivers all the received datagrams to all conference subscribers

Conferencing Service

Sakai

The InternetThe Internet

Dispatcher Conference

Audio/Video Conferencing• Both audio and video conferences are controlled from

one Sakai tool• Both use JMF on the client and the conferencing service

on the server (Sakai)• The conferencing service is a software multicasting

system and follows the well known publish/subscribe model for users joining conferences

• It needs four ports open on the Sakai host machine, two for audio’s data and control (RTP and RTCP) packets and two for the video. The service dispatches the packets to the correct conference object for forwarding to subscribers

Questions I Would Ask

• Skype’s really cool. Why do an audio tool when Skype is free?

• MSN Messenger has a whiteboard. Why do a whiteboard in Sakai?

The Future• Large scale testing !• p2p networking for the tools• A scripting framework for the tools, so we can trigger the

launch of audio after whiteboard, for example• A communication framework for the tools so that the

whiteboard can grab a snapshot from the shared display for freehand decoration, for example

• Large scale testing !• Some more Large Scale Testing (LST)• LST (blah, blah, blah) …