VisConnect: Distributed Event Synchronization for Collaborative Visualization.

Tools and interfaces are increasingly expected to be synchronous and distributed to accommodate remote collaboration. Yet, adoption of these techniques for data visualization is low partly because development is difficult: existing collaboration software systems either do not support simultaneous interaction or require expensive redevelopment of existing visualizations. We contribute VisConnect: a web-based synchronous distributed collaborative visualization system that supports most web-based SVG data visualizations, balances system safety with responsiveness, and supports simultaneous interaction from many collaborators. VisConnect works with existing visualization implementations with little-to-no code changes by synchronizing low-level JavaScript events across clients such that visualization updates proceed transparently across clients. This is accomplished via a peer-to-peer system that establishes consensus among clients on the per-element sequence of events, and uses a lock service to grant access over elements to clients. We contribute collaborative extensions of traditional visualization interaction techniques, such as drag, brush, and lasso, and discuss different strategies for collaborative visualization interactions. To demonstrate the utility of VisConnect, we present novel examples of collaborative visualizations in the healthcare domain, remote collaboration with annotation, and show in an education case study for e-learning with 22 participants that students found the ability to remotely collaborate on class activities helpful and enjoyable for understanding concepts. A free copy of this paper and source code are available on OSF at osf.io/ut7e6 and at visconnect.us.

[1]  Hans Hagen,et al.  Collaborative visualization: Definition, challenges, and research agenda , 2011, Inf. Vis..

[2]  W. A. Stoller Intensive diabetes management , 2002 .

[3]  Sachin Agarwal,et al.  Data Synchronization , 2006, The Handbook of Mobile Middleware.

[4]  Leslie Lamport,et al.  The part-time parliament , 1998, TOCS.

[5]  Andreas Buja,et al.  Painting multiple views of complex objects , 1990, OOPSLA/ECOOP '90.

[6]  Yanchun Zhang,et al.  Achieving convergence, causality preservation, and intention preservation in real-time cooperative editing systems , 1998, TCHI.

[7]  Chandrajit L. Bajaj,et al.  Distributed and collaborative visualization , 1994, Computer.

[8]  Wendy E. Mackay,et al.  Webstrates: Shareable Dynamic Media , 2015, UIST.

[9]  Carlos Eduardo Scheidegger,et al.  Collaborative visual analysis with RCloud , 2015, 2015 IEEE Conference on Visual Analytics Science and Technology (VAST).

[10]  Jeffrey S. Norris,et al.  Immersive and collaborative data visualization using virtual reality platforms , 2014, 2014 IEEE International Conference on Big Data (Big Data).

[11]  Hao Jiang,et al.  WeSpace: the design development and deployment of a walk-up and share multi-surface visual collaboration system , 2009, CHI.

[12]  C. Bajaj,et al.  Web based collaborative visualization of distributed and parallel simulation , 1999, Proceedings 1999 IEEE Parallel Visualization and Graphics Symposium (Cat. No.99EX381).

[13]  Clemens Nylandsted Klokmose,et al.  Vistribute: Distributing Interactive Visualizations in Dynamic Multi-Device Setups , 2019, CHI.

[14]  Petra Isenberg,et al.  Collaborative Brushing and Linking for Co‐located Visual Analytics of Document Collections , 2009, Comput. Graph. Forum.

[15]  Tim Pattison,et al.  View Coordination Architecture for Information Visualisation , 2001, InVis.au.

[16]  Martin J. Eppler,et al.  The Benefits of Synchronous Collaborative Information Visualization: Evidence from an Experimental Evaluation , 2009, IEEE Transactions on Visualization and Computer Graphics.

[17]  Clarence A. Ellis,et al.  Concurrency control in groupware systems , 1989, SIGMOD '89.

[18]  Rita Kop,et al.  Connectivism: Learning theory of the future or vestige of the past? , 2008 .

[19]  Chris North,et al.  SAViL: cross-display visual links for sensemaking in display ecologies , 2018, Personal and Ubiquitous Computing.

[20]  Kristin A. Cook,et al.  Illuminating the Path: The Research and Development Agenda for Visual Analytics , 2005 .

[21]  Niklas Elmqvist,et al.  Hugin: a framework for awareness and coordination in mixed-presence collaborative information visualization , 2010, ITS '10.

[22]  HeerJeffrey,et al.  D3 Data-Driven Documents , 2011 .

[23]  Roman Rädle,et al.  Vistrates: A Component Model for Ubiquitous Analytics , 2019, IEEE Transactions on Visualization and Computer Graphics.

[24]  Michael Schwind,et al.  Synchronite - A Service for Real-Time Lightweight Collaboration , 2010, 2010 International Conference on P2P, Parallel, Grid, Cloud and Internet Computing.

[25]  Gordon V. Cormack A Counterexample to the Distributed Operational Transform and a Corrected Algorithm for Point-to-point Communication , 2002 .

[26]  Bianchi Serique Meiguins,et al.  Collaborative Augmented Reality Application for Information Visualization Support , 2011, 2011 15th International Conference on Information Visualisation.

[27]  Andrew E. Johnson,et al.  Visualization in Teleimmersive Environments , 1999, Computer.

[28]  Wei Lin,et al.  WiDS Checker: Combating Bugs in Distributed Systems , 2007, NSDI.

[29]  Jeffrey Heer,et al.  SpanningAspectRatioBank Easing FunctionS ArrayIn ColorIn Date Interpolator MatrixInterpola NumObjecPointI Rectang ISchedu Parallel Pause Scheduler Sequen Transition Transitioner Transiti Tween Co DelimGraphMLCon IData JSONCon DataField DataSc Dat DataSource Data DataUtil DirtySprite LineS RectSprite , 2011 .

[30]  Bor Plestenjak,et al.  An algorithm for drawing planar graphs , 1999, Softw. Pract. Exp..

[31]  Cody Dunne,et al.  IDMVis: Temporal Event Sequence Visualization for Type 1 Diabetes Treatment Decision Support , 2019, IEEE Transactions on Visualization and Computer Graphics.

[32]  Niklas Elmqvist,et al.  Visfer: Camera-based visual data transfer for cross-device visualization , 2019, Inf. Vis..

[33]  Niklas Elmqvist,et al.  PolyChrome: A Cross-Device Framework for Collaborative Web Visualization , 2014, ITS '14.

[34]  Ian Roffe,et al.  E‐learning: engagement, enhancement and execution , 2002 .

[35]  Bowen Alpern,et al.  Recognizing safety and liveness , 2005, Distributed Computing.

[36]  Ricardo Langner,et al.  VisTiles: Coordinating and Combining Co-located Mobile Devices for Visual Data Exploration , 2018, IEEE Transactions on Visualization and Computer Graphics.

[37]  Leslie Lamport,et al.  Proving the Correctness of Multiprocess Programs , 1977, IEEE Transactions on Software Engineering.

[38]  M. Sheelagh T. Carpendale,et al.  Interactive Tree Comparison for Co-located Collaborative Information Visualization , 2007, IEEE Transactions on Visualization and Computer Graphics.

[39]  J.C. Roberts,et al.  State of the Art: Coordinated & Multiple Views in Exploratory Visualization , 2007, Fifth International Conference on Coordinated and Multiple Views in Exploratory Visualization (CMV 2007).

[40]  Chengzheng Sun,et al.  Operational transformation in real-time group editors: issues, algorithms, and achievements , 1998, CSCW '98.