As software systems become increasingly larger and developed by teams of software developers it is important for software visualization researchers to help support software developers collaborate better with tools, techniques, and environments.
A paper entitled Collaborative Visualization: Definition, Challenges and Research Agenda by Petra Isenberg, Niklas Elmqvist, Jean Scholtz, Daniel Cernea, Kwan-Liu, Hans Hagen in Information Visualization Journal, October 2011 sheds some light about a sub-area of CSCW and Information Visualization called Collaborative Visualization which is of relevance to the SoftVis community.
- http://ivi.sagepub.com/content/10/4/310 (IV Journal)
- http://www.aviz.fr/~isenberg/publications/papers/Isenberg_2011_CVD.pdf (Pre-print)
The conflux of two growing areas of technology – collaboration and visualization – into a new research direction, collaborative visualization, provides new research challenges. Technology now allows us to easily connect and collaborate with one another – in settings as diverse as over networked computers, across mobile devices, or using shared displays such as interactive walls and tabletop surfaces. Digital information is now regularly accessed by multiple people in order to share information, to view it together, to analyze it, or to form decisions. Visualizations are used to deal more effectively with large amounts of information while interactive visualizations allow users to explore the underlying data. While researchers face many challenges in collaboration and in visualization, the emergence of collaborative visualization poses additional challenges, but it is also an exciting opportunity to reach new audiences and applications for visualization tools and techniques.
The purpose of this article is (1) to provide a definition, clear scope, and overview of the evolving field of collaborative visualization, (2) to help pinpoint the unique focus of collaborative visualization with its specific aspects, challenges, and requirements within the intersection of general computer-supported cooperative work and visualization research, and (3) to draw attention to important future research questions to be addressed by the community. We conclude by discussing a research agenda for future work on collaborative visualization and urge for a new generation of visualization tools that are designed with collaboration in mind from their very inception.
Collaborative visualization is the shared use of computer-supported, (interactive) visual representations of data by more than one person with the common goal of contribution to joint information processing activities.
Collaborative Visualization Scenarios:
Collaborative visualization can occur in many scenarios delineated according to space and time. See the following image taken from the paper.
The following are the challenges to address in the research space intersecting collaborative work and visualization:
|Aspect||Collaborative Visualization Challenge|
|Users||Multiple Participants, domain specific e.g. multiple software developers|
|Tasks||Collaborative activity centric e.g. pair software analysis|
|Cognition||Collaborative foraging and collaborative sensemaking e.g. mining software for increased understanding|
|Results||Consensus, shared insight e.g. what parts of a system need refactoring|
|Interaction||Multiple inputs e.g. how to design systems to avoid interaction conflicts|
|Visual Representations||Multiple displays, novel display, and input technology e.g. different views of a software system like structure and evolution|
|Evaluation||Social interaction e.g. how to evaluate the possible additional insights or the group learning effect that can be achieved using such a system|
One of the main goals of research in collaborative visualization is to enable people to collaboratively use visual representations of data to gain additional understanding, knowledge, and insight into the data – different or more encompassing – than would have been possible had they explored the data individually. To learn more about how this goal can be reached, researchers have to address both the technical challenges of designing and implementing digital and physical environments that support collaborative data analysis, as well as the social aspects of group work.
Goals for collaborative visualization research:
- More dedicated research on the challenges listed above e.g. interaction with visualization systems – particularly focusing on collaborative interactions and data exchanges
- Engage new audiences e.g. software developers
- Standardize collaboration support e.g. develop software visualization toolkits instead of techniques and plugins
- Expand to new collaborative spaces e.g. distributed or co-located software development
- Develop dedicated evaluation methods e.g. specific methods for evaluating software visualization systems
- Integration and adoption e.g. getting more industry people to use software visualization tools
- Derive a higher level understanding e.g. map out a better understanding of collaborative software analysis as a process and do empirical studies on developers comprehending software
Collaborative Software Visualization
Some researchers in the SoftVis community have begun working in this Collaborative Software Visualization sub-area, with some links to their papers:
- Craig Anslow, Stuart Marshall, James Noble, and Robert Biddle. Interactive Multi-touch Surfaces for Software Visualization. In Proceedings of the Workshop on Data Exploration for Interactive Surfaces (DEXIS) at the Conference on Interactive Tabletops and Surfaces (ITS), 2011.
- Sandro Boccuzzo, Harald C. Gall. Multi-Touch Collaboration for Software Exploration. In Proceedings of the International Conference on Program Comprehension (ICPC) 2010.
- Niko Myller. Collaborative Software Visualization for Learning: Theory and Applications.. PhD Thesis. University of Eastern Finland. 2009.
- Margaret-Anne Storey, Chris Bennett, R. Ian Bull, Daniel German. Remixing Visualization to Support Collaboration in Software Maintenance. Frontiers of Software Maintenance at the International Conference on Software Maintenance (ICSM), 2008.