18,956 research outputs found
Coordinating Knowledge Work in Multi-Team Programs: Findings from a Large-Scale Agile Development Program
Software development projects have undergone remarkable changes with the
arrival of agile development methods. While intended for small, self-managing
teams, these methods are increasingly used also for large development programs.
A major challenge in programs is to coordinate the work of many teams, due to
high uncertainty in tasks, a high degree of interdependence between tasks and
because of the large number of people involved. This revelatory case study
focuses on how knowledge work is coordinated in large-scale agile development
programs by providing a rich description of the coordination practices used and
how these practices change over time in a four year development program with 12
development teams. The main findings highlight the role of coordination modes
based on feedback, the use of a number of mechanisms far beyond what is
described in practitioner advice, and finally how coordination practices change
over time. The findings are important to improve the outcome of large
knowledge-based development programs by tailoring coordination practices to
needs and ensuring adjustment over time.Comment: To appear in Project Management Journa
Flexible Global Software Development (GSD): Antecedents of Success in Requirements Analysis
Globalization of software development has resulted in a rapid shift away from the traditional collocated, on-site development model, to the offshoring model. Emerging trends indicate an increasing interest in offshoring even in early phases like requirements analysis. Additionally, the flexibility offered by the agile development approach makes it attractive for adaptation in globally distributed software work. A question of significance then is what impacts the success of offshoring earlier phases, like requirements analysis, in a flexible and globally distributed environment? This article incorporates the stance of control theory to posit a research model that examines antecedent factors such as requirements change, facilitation by vendor and client site-coordinators, control, and computer-mediated communication. The impact of these factors on success of requirements analysis projects in a “flexible” global setting is tested using two quasi-experiments involving students from Management Development Institute, India and Marquette University, USA. Results indicate that formal modes of control significantly influence project success during requirements analysis. Further, facilitation by both client and vendor site coordinators positively impacts requirements analysis success
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'
Autonomous agile teams: Challenges and future directions for research
According to the principles articulated in the agile manifesto, motivated and
empowered software developers relying on technical excellence and simple
designs, create business value by delivering working software to users at
regular short intervals. These principles have spawned many practices. At the
core of these practices is the idea of autonomous, self-managing, or
self-organizing teams whose members work at a pace that sustains their
creativity and productivity. This article summarizes the main challenges faced
when implementing autonomous teams and the topics and research questions that
future research should address
Detecting Coordination Problems in Collaborative Software Development Environments
Software development is rarely an individual effort and generally involves teams of developers collaborating to generate good reliable code. Among the software code there exist technical dependencies that arise from software components using services from other components. The different ways of assigning the design, development, and testing of these software modules to people can cause various coordination problems among them. We claim\ud
that the collaboration of the developers, designers and testers must be related to and governed by the technical task structure. These collaboration practices are handled in what we call Socio-Technical Patterns.\ud
The TESNA project (Technical Social Network Analysis) we report on in this paper addresses this issue. We propose a method and a tool that a project manager can use in order to detect the socio-technical coordination problems. We test the method and tool in a case study of a small and innovative software product company
The mystery of the writing that isn’t on the wall: differences in public representations in traditional and agile software development
This paper considers the use of public displays, such as whiteboards and papers pinned to walls, by different software development teams, based on evidence from a number of empirical studies. This paper outlines differences in use observed between traditional and agile teams and begins
to identify the implications that they may have for software
development
- …