176 research outputs found
Distributed-Pair Programming can work well and is not just Distributed Pair-Programming
Background: Distributed Pair Programming can be performed via screensharing
or via a distributed IDE. The latter offers the freedom of concurrent editing
(which may be helpful or damaging) and has even more awareness deficits than
screen sharing. Objective: Characterize how competent distributed pair
programmers may handle this additional freedom and these additional awareness
deficits and characterize the impacts on the pair programming process. Method:
A revelatory case study, based on direct observation of a single, highly
competent distributed pair of industrial software developers during a 3-day
collaboration. We use recordings of these sessions and conceptualize the
phenomena seen. Results: 1. Skilled pairs may bridge the awareness deficits
without visible obstruction of the overall process. 2. Skilled pairs may use
the additional editing freedom in a useful limited fashion, resulting in
potentially better fluency of the process than local pair programming.
Conclusion: When applied skillfully in an appropriate context, distributed-pair
programming can (not will!) work at least as well as local pair programming
Pair programming and the re-appropriation of individual tools for collaborative software development
Although pair programming is becoming more prevalent in software development, and a number of reports have been written about it [10] [13], few have addressed the manner in which pairing actually takes place [12]. Even fewer consider the methods used to manage issues such as role change or the communication of complex issues. This paper highlights the way resources designed for individuals are re-appropriated and augmented by pair programmers to facilitate collaboration. It also illustrates that pair verbalisations can augment the benefits of the collocated team, providing examples from ethnographic studies of pair programmers 'in the wild'
A framework for understanding the factors influencing pair programming success
Pair programming is one of the more controversial aspects of several Agile system development methods, in particular eXtreme Programming (XP). Various studies have assessed factors that either drive the success or suggest advantages (and disadvantages) of pair programming.
In this exploratory study the literature on pair programming is examined and factors distilled. These factors are then compared and contrasted with those discovered in our recent Delphi study of pair programming.
Gallis et al. (2003) have proposed an initial framework aimed at providing a comprehensive identification of the major factors impacting team programming situations including pair programming. However, this
study demonstrates that the framework should be extended to include an additional category of factors that relate to organizational matters. These factors will be further refined, and used to develop and empirically evaluate a conceptual model of pair programming (success)
Improving Learning of Programming Through E-Learning by Using Asynchronous Virtual Pair Programming
The problem of learning programming subjects, especially through distance
learning and E-Learning, has been widely reported in literatures. Many attempts
have been made to solve these problems. This has led to many new approaches in
the techniques of learning of programming. One of the approaches that have been
proposed is the use of virtual pair programming (VPP). Most of the studies about
VPP in distance learning or e-learning environment focus on the use of the
synchronous mode of collaboration between learners. Not much research have been
done about asynchronous VPP. This paper describes how we have implemented VPP
and a research that has been carried out to study the effectiveness of asynchronous
VPP for learning of programming. In particular, this research study the
effectiveness of asynchronous VPP in the learning of object-oriented programming
among students at Open University Malaysia (OUM). The result of the research has
shown that most of the learners have given positive feedback, indicating that they
are happy with the use of asynchronous VPP. At the same time, learners did
recommend some extra features that could be added in making asynchronous VPP
more enjoyable. (Authors' abstract
Defining a distributed agile methodology for an open source scenario
In this paper we propose and describe an agile methodology for distributed development (MADD - Methodology for Agile Distributed Development). In particular, it's illustrated a set of best practices to apply in a distributed and agile context, chosen on the base of their impact software quality and team interoperation. Beyond the proposed methodology, we show the results of a survey that we submitted to various contributors of Open Source projects. The survey has been of support to the definition of the MADD, helping to more understand and estimate if, how and how much agile practices and values are already present in the OS world, that today represents one of the most emblematic examples of distributed development. The MADD methodology will be adopted on a software development project at the University of Cagliari (Italy), by a group of students that will work like an Open Source community
- …