Introduction
Theseus is a prototype interface that can increase a software developer's perceived trustworthiness of their distributed team members by exposing important information about them through a set of appropriate visualizations. Theseus is a web application built using GWT, the Google Web Toolkit. It integrates with a developer's Google contacts, their projects' work item repositories or issue trackers, e-mail, source-code and other contextual factors (such as time zone) to give the developer insights into their colleagues availability and responsiveness.
Motivation
Trust is a significant human-oriented aspect of successful and productive collaborations. A lack of information about distributed colleagues can work against developing trust in distributed teams. Remote workers are likely to have much less information and lower quality information about their remote partners. For example, if Chris had known Alex was working on three projects, the past two months of which he was in Brazil working on fixing bugs, he could have modified his expectations with respect to his availability. Research has shown that a lack of situational knowledge and the reduced ability to process it effectively can cause individuals in remote teams to attribute breakdowns to the individual rather than the situation itself, eroding team cohesion and lasting solutions. In this instance, a loss of trust is more difficult to repair. When what is actually observed in the world (e.g., a developer's failure to deliver work on time) clashes with expectations (e.g., their perceived ability to deliver on time), trust can be slow to build between collaborators. The explanations distributed software developers give for these breakdowns are called attributions (Figure 1).
Figure 1. Dispositional attributions are reflective of low perceived trustworthiness, while situational attributions are reflective of high perceived trustworthiness.
There are several aspects of the process of setting expectations in the context of globally distributed software development that can be addressed and improved. First, developing a sense of trust can take time due to the lack of information about other colleagues' activities and the lack of ways to manage this information in order to set realistic expectations. Distributed developers can ultimately reach the same levels of trust as collocated team members; it just takes longer. A tool that can partially automate this process can provide time savings. Second, in software development, the interactions that help set expectations are typically hidden in project repositories or incomplete documents over time (Figure 2).
Figure 2. Collaborative traces (CTs) are representations of past and current activity of a group of developers manipulating software development artifacts.
Further, a lack of situational information about colleagues can negatively and more importantly, inaccurately, bias trust judgments. If a developer is involved in multiple projects across several time zones, one shouldn't expect same day responses, for example. An approach that renders this information explicitly from project and team artifacts can prepare people to make trust judgments based on meaningful and more complete data. Third, the sheer number of artifacts involved makes this data, if presented in textual form, difficult to interpret. Visualizations can be more effective in revealing and summarizing this information.