Chapter 8: Discussion and Future Work
8.2 Value of Principal Features of IMPROMPTU
Based on the results of our study, the ability of the MDE to effectively support users’ collaborative activities were due in large part to new functional and usability innovations provided by IMPROMPTU.
8.2.1 Independent Shared Input Processing
A significant technical advantage of IMPROMPTU is its ability to route remote input to shared applications without overriding the local input actions on the host device. Unlike existing systems and tools that require input focus to be maintained in the shared application, IMPROMPTU enables users to freely switch between shared and non-shared applications. This affordance was leveraged by users in our field study to support more effective multi-tasking when working on collaborative tasks. As an example, we often observed users leveraging this affordance to perform group debugging sessions. In these activities, one user (the current person that had the code checked out of the source repository) would share his code editors with peers. The developers would then take turns interacting with the shared code editor to explore solutions. While some edited code, other developers would create private instances of web browsers and project management tools on their local devices to research other potential solutions independently, including the user that is the owner of the shared code editor. This example illustrates IMPROMPTU’s ability to enable users to seamlessly use, and transition between, personal and shared applications. Such an affordance is not provided by existing screen and application sharing tools.
8.2.2 People-Centric User Interface
A key innovation of IMPROMPTU’s interface is its people-centric interface that enables quick identification of participating collaborators and the applications which they have shared with the group. With the interface users can also quickly, and with relatively low interaction overhead, instantiate replications of shared applications. In our field study, these design elements were shown to have high value to users as they facilitated users’ ability to easily engage in ad-hoc, serendipitous collaborations – situations where introducing a shared piece of information at the right time greatly aided the collaborative task.
In our study, we observed many instances where the value of quick access to users and applications was evident. For example, users found IMPROMPTU facilitated their ability to provide quick coding assistance on bugs, compiler errors, proper API syntax, etc. In
these cases, users would often keep their code editors shared so that, when help was solicited, their peers could quickly establish a local replication of the editor. As many participants in the study commented, this enabled the assisting user to see and understand the specific context related to the issue which enabled them to provide better informed recommendations.
8.2.3 Application-Level Multi-Source Sharing
Another key advantage of IMPROMPTU is its ability to allow users to replicate applications from multiple sources at the same time. Participants in our study found this especially useful when leveraging the large display as a workspace for comparing and combining information from multiple users. For example, in their daily planning meetings, team members from one of the groups studied would place information from several independent devices on the shared display at the same time to aid discussion. These items ranged from management tools summarizing open bugs to even quick design sketches. While many existing solutions support multi-destination sharing (i.e. one-to- many), IMPROMPTU is the first sharing framework to support both multi-destination and multi-source (i.e. many-to-one). This distinction further illustrates the versatility of the framework.
8.2.4 Negotiated Sharing Model
The push-then-pull negotiated model for sharing applications was also shown to be of high value to users. Specifically, post-evaluation discussions revealed that users appreciated the fact that they could make an application available to the team without forcing the application to immediately appear on other users’ devices. This was useful, according to users, because it respected the natural flow of engaging in a collaborative task. As one example that we observed, to gain feedback on a proposed project timeline, a lead developer made the application available to the rest of the team, and sent an IM announcement to the rest of the team requesting that they review the timeline and make comments or adjustments before they started their planning meeting later that afternoon. This allowed the members of the team to view and interact with the shared application when it was convenient for them. In contrast, existing solutions provided little control for
specifying if and where shared applications appear on replication consumer’s local device. By enabling more control for the replication consumer, IMPROMPTU upholds users’ ability to maintain control over their private, individual workspaces.
8.2.5 Beyond Simple Screen Sharing
The overall value of IMPROMPTU lies in its ability to support important principles of effective groupware design. For example, the framework’s independent input processing is crucial to supporting multiple, simultaneously occurring tasks and fluid transitions when switching tasks (see Chapter 2, Section 3 for further details). Existing tools do not support this capability, and as such, fail to realize this principle.
Additionally, IMPROMPTU was adopted as the preferred sharing tool, even when commercial tools (e.g. Microsoft LiveMeeting) were installed and available to the team. Participants in the study indicated their preference for IMPROMPTU because of its ability to support myriad modalities of collaboration, another core groupware principle (see Chapter 2, Section 3). Users were supported working tightly-coupled (e.g. working jointly to edit source code), loosely-coupled (e.g. share documents for review while working on independent tasks), or somewhere in between (e.g. work collectively to solve a bug in code while research solutions privately).
As we discuss above, satisfying these important principles proved to be critical in supporting the collaborative activities of our study participants. As a result, it is unlikely that performing a similar study using only a basic screen sharing tool would have produced the same results. In future longitudinal studies, we intend to investigate and show the differences between IMPROMPTU and other, more simplistic tools.