SearcharxivSearch

arXiv subjects

Linus Ververs

Publications and source records attributed to Linus Ververs.

2 recordsLinked to original sources

Managing Power Gaps as an Element of Pair Programming Skill: A Grounded Theory

Background: In pair programming, Togetherness (the partners understand each other's mental state well) is a main success factor. Maintaining high Togetherness is an element of pair programming skill. Some sessions appear to go badly although Togetherness appears good. Objective: Understand under what circumstances this is possible. Method: Grounded Theory Methodology based on 21 recorded pair programming sessions with 22 developers from 5 German software companies and 6 interviews with different developers from 4 other German companies. Results: We explain how a Power Gap can make a session dysfunctional despite the presence of high Togetherness, how it comes into existence due to a Knowledge Gap and Hierarchical Behavior, why its consequences (Defensive Behavior and Disengaging Behavior) are problematic, and how it can be reduced or prevented by Equalizing Behavior. Conclusions: Pair programming practitioners can improve their pair programming skill by unlearning problematic behaviors related to Power Gaps and by learning to recognize Power Gaps and apply Equalizing Behavior.

cs.SE

Qualitative Analysis of the Teacher and Student Roles in Pair Programming

Background: Pair programming is a well-established and versatile agile practice. Previous research has found it to involve far more different roles than the well-known Driver and Observer/Navigator roles. Pair programming often involves heavy knowledge transfer from mainly one partner to the other. Objective: Understand how to fill the ensuing Teacher and Student roles well (positive behavioral patterns). Understand how they may break (anti-patterns). Method: Open coding and axial coding of 17 recorded pair programming sessions with 18 developers from 5 German software companies, plus interviews with 6 different developers from 4 other German companies. Results: We describe six facets of effective Teacher behavior (e.g. Prioritizing Knowledge Transfer) and two facets of effective Student behavior (e.g. Expressing Knowledge Wants). We describe four harmful would-be-Teacher behaviors (e.g. Pushing Unwanted Knowledge), and one harmful would-be-Student behavior (Failing to Provide a Back Channel). Conclusions: The role facets can serve as learning goals and to-do list for developers who want to develop strong pair programming skill. The anti-patterns can serve as warnings for one's own general behavior and as triggers for immediate meta-discussion if they occur within a pairing session.

cs.SE