60 research outputs found

    The Lifecycle of a Whiteboard Photo: Post-meeting Usage of Whiteboard Content Captured with Mobile Devices

    Get PDF
    The traditional dry-erase whiteboard is a ubiquitous tool in the workplace, particularly in meeting spaces where they are a key collaboration tool. Although research on whiteboard use and the development of whiteboard systems have been a staple in the Human-Computer Interaction (HCI) literature, there is a lack of how whiteboard content is used to direct actions outside the meeting. In today’s mobile-centric world, knowledge workers capture whiteboard content after a meeting by taking photos of them with mobile devices such as cellphones. This thesis empirically investigated post-meeting practices with whiteboard photos to explore how these practices might be better supported by technology. In particular, this thesis investigated the main post-meeting activities that whiteboard photos support, how people value whiteboard photos, and how they manage them. Nineteen knowledge workers from a variety of professions, companies, and industries across North America who were regular users of whiteboards were interviewed using a semi-structured protocol. A Thematic Analysis of the data revealed that whiteboard photos were primarily used to create superseding documents and were sometimes used as evidence of agreement. Whiteboard photos were used mostly in the short-term, and their value was transient. Also, an analysis of the minute detailed actions that interviewees reported taking with one or two recent whiteboard photos revealed that the typical lifecycle of those whiteboard photos involved a seven-stage lifecycle. Moreover, a memory recall task with six of the interviewees about previous meetings where a whiteboard was used revealed that general characteristics of those meetings were well remembered while characteristics about the whiteboard content were not well remembered. The findings suggested a set of unmet design needs for the development of improved mobile-centric whiteboard capture systems. The suggested design implications include the need for a mobile application that supports quick capture and the effortless transfer of whiteboard photos to productivity-oriented devices, and the need for a desktop application that supports the extraction of whiteboard content to aid users in creating superseding documents

    Change-centric improvement of team collaboration

    Get PDF
    In software development, teamwork is essential to the successful delivery of a final product. The software industry has historically built software utilizing development teams that share the workplace. Process models, tools, and methodologies have been enhanced to support the development of software in a collocated setting. However, since the dawn of the 21st century, this scenario has begun to change: an increasing number of software companies are adopting global software development to cut costs and speed up the development process. Global software development introduces several challenges for the creation of quality software, from the adaptation of current methods, tools, techniques, etc., to new challenges imposed by the distributed setting, including physical and cultural distance between teams, communication problems, and coordination breakdowns. A particular challenge for distributed teams is the maintenance of a level of collaboration naturally present in collocated teams. Collaboration in this situation naturally d r ops due to low awareness of the activity of the team. Awareness is intrinsic to a collocated team, being obtained through human interaction such as informal conversation or meetings. For a distributed team, however, geographical distance and a subsequent lack of human interaction negatively impact this awareness. This dissertation focuses on the improvement of collaboration, especially within geographically dispersed teams. Our thesis is that by modeling the evolution of a software system in terms of fine-grained changes, we can produce a detailed history that may be leveraged to help developers collaborate. To validate this claim, we first c r eate a model to accurately represent the evolution of a system as sequences of fine- grained changes. We proceed to build a tool infrastructure able to capture and store fine-grained changes for both immediate and later use. Upon this foundation, we devise and evaluate a number of applications for our work with two distinct goals: 1. To assist developers with real-time information about the activity of the team. These applications aim to improve developers’ awareness of team member activity that can impact their work. We propose visualizations to notify developers of ongoing change activity, as well as a new technique for detecting and informing developers about potential emerging conflicts. 2. To help developers satisfy their needs for information related to the evolution of the software system. These applications aim to exploit the detailed change history generated by our approach in order to help developers find answers to questions arising during their work. To this end, we present two new measurements of code expertise, and a novel approach to replaying past changes according to user-defined criteria. We evaluate the approach and applications by adopting appropriate empirical methods for each case. A total of two case studies – one controlled experiment, and one qualitative user study – are reported. The results provide evidence that applications leveraging a fine-grained change history of a software system can effectively help developers collaborate in a distributed setting

    Exploring young people's collaborative and creative processes using keyboard and computer based music technologies in formal and non-formal settings

    Get PDF
    In many UK music education settings, young people (11-17 years old) make music collectively. Despite this we currently lack understanding of the processes involved when collaboratively creating music, particularly when working around music technologies. To date, research has tended to focus on classroom-based collaborative interactions on well-defined tasks, where there is only one correct solution. As a result we know little about 1) the kinds of learning practices that emerge outside of school settings and 2) the processes young people engage in when working on open-ended, creative tasks. Addressing these areas, this research specifically set out to explore the nature of the creative process when composing music collaboratively using keyboards and sampling software, in school, community centre and music camp settings. The contextual relations or features of these different settings, such as the task setting, instruction and technology used and their influence on the creative music-making processes were examined. This was achieved through analysis of the young people's verbal dialogues, which resulted in greater understanding of the relations between context and creativity. The findings show that how the creative and musical content is organised, rather than the physical setting within which it takes place, plays a fundamental role in the types of talk and creative processes that emerge. Drawing on the results of the studies carried out, creativity was conceptualised as a cyclic process, with interdependent phases of exploration, discovery, elaboration, critical listening, refining and editing, recording and saving; with problem finding and discovery being central underlying drivers. Finally, the kinds of verbal dialogues that emerged across all the settings strongly indicated that traditional logical-deductive types of reasoning and talk are not necessary and may even be inappropriate for certain phases of the creative process. This finding is interesting and presents some challenges to our current understanding of collaborative learning. Consequently, it warrants further investigation. In sum, given the contemporary educational emphasis on self-directed and creative learners, the questions addressed in this thesis and the findings on the context and nature of the creative processes, and informal and formal learning, are considered timely and relevant

    Portable Checkpointing for Parallel Applications

    Full text link
    High Performance Computing (HPC) systems represent the peak of modern computational capability. As ever-increasing demands for computational power have fuelled the demand for ever-larger computing systems, modern HPC systems have grown to incorporate hundreds, thousands or as many as 130,000 processors. At these scales, the huge number of individual components in a single system makes the probability that a single component will fail quite high, with today's large HPC systems featuring mean times between failures on the order of hours or a few days. As many modern computational tasks require days or months to complete, fault tolerance becomes critical to HPC system design. The past three decades have seen significant amounts of research on parallel system fault tolerance. However, as most of it has been either theoretical or has focused on low-level solutions that are embedded into a particular operating system or type of hardware, this work has had little impact on real HPC systems. This thesis attempts to address this lack of impact by describing a high-level approach for implementing checkpoint/restart functionality that decouples the fault tolerance solution from the details of the operating system, system libraries and the hardware and instead connects it to the APIs implemented by the above components. The resulting solution enables applications that use these APIs to become self-checkpointing and self-restarting regardless of the the software/hardware platform that may implement the APIs. The particular focus of this thesis is on the problem of checkpoint/restart of parallel applications. It presents two theoretical checkpointing protocols, one for the message passing communication model and one for the shared memory model. The former is the first protocol to be compatible with application-level checkpointing of individual processes, while the latter is the first protocol that is compatible with arbitrary shared memory models, APIs, implementations and consistency protocols. These checkpointing protocols are used to implement checkpointing systems for applications that use the MPI and OpenMP parallel APIs, respectively, and are first in providing checkpoint/restart to arbitrary implementations of these popular APIs. Both checkpointing systems are extensively evaluated on multiple software/hardware platforms and are shown to feature low overheads
    • …
    corecore