Interpretative case studies on agile team productivity and management
Introduction
The management of software development productivity is a key issue in software organizations, where the major drivers are lower cost and shorter time-to-market [18], [100]. To manage productivity effectively, it is important to identify the most relevant difficulties and develop strategies to cope with them. Agile methods, including Extreme Programming [10] and Scrum [89], have evolved as approaches to simplify the software development process, potentially leading to better productivity. They aim to shorten development time and handle the inevitable changes resulting from market dynamics [50], [82].
Considerable research has been directed at identifying factors that have a significant impact on software development productivity [100], [106]. In general, the studied productivity factors were related to product (specific characterization of software), personnel (team member capabilities, experience, and motivation), project (management aspects, resource constraints), or process issues (software methods and tools). Continuously evaluating productivity factors is important, as factors may change under new software engineering practices [81].
Although the industry has extensively adopted agile methods, little research has empirically examined the software development agility construct regarding its dimensions, determinants, and effects on software development productivity and performance [54], [95], [8], [35], [92]. Understanding the factors that affect productivity could help determine where to concentrate management efforts (and related financial resources) from a practical standpoint and where to focus research efforts from an academic perspective [86]. However, to the best of our knowledge, no study in the literature has investigated the major factors influencing agile team productivity.
In a preliminary study [69], we investigated general factors influencing agile team productivity using two industrial case studies. The studied teams reported that the main general factors influencing agile team productivity were (1) team composition and allocation, (2) external dependencies, and (3) staff turnover. They also reported that, among the agile practices, pair programming and collocation most impacted productivity variations.
In the current paper, we extend and refine that work. Our objective is now to provide a better understanding of some factors (and mediators) that impact agile team productivity. We have thus conducted a new industrial, multiple-case study that draws on the general team effectiveness literature. We investigate the following research question:
RQ: Which factors do have an impact, and in what way, on team productivity when using agile methods?
In this extension, we added one large company and two data sources for all three companies: observational field notes and documentation from team retrospectives. We performed a more comprehensive analysis based on these sources and developed more detailed explanations on how the most perceived factors impacted agile team productivity. We developed a conceptual framework for agile team productivity, which provides clarity and focus in the study and drives further discussion around the results [70]. Finally, data from multiple-case studies were analyzed thematically and presented in a thematic map.
As the answer to our research question, we found that agile team management is the most influent factor on agile team productivity. Team design choices and staff turnover emerged as relevant intra-team management issues, while inter-team coordination emerged as an important inter-team management issue. In this paper, we present a conceptual framework to support the factor analysis and refine it to incorporate new information based on our findings.
The remainder of this paper is organized as follows. Section 2 presents a review on software productivity definitions and a conceptual framework for agile team productivity. Section 3 describes our research question and method in detail. Section 4 presents results from a multiple-case study performed in three Brazilian companies. Section 5 contains a discussion of our findings, and Section 6 concludes and provides suggestions for further work.
Section snippets
Background: productivity definitions and a conceptual framework to study agile team productivity
In this section, we give a short introduction to software productivity and present the conceptual framework that is the basis for our work.
Research method
We investigated our research question “Which factors do have an impact, and in what way, on team productivity when using agile methods?” To answer this research question, we performed a multiple-case study in the Brazilian IT industry. Case studies [41], [104] have high potential for analyzing performance improvement, and they are appropriate for studying complex performance issues [76].
The criteria for case selection included the following: (1) companies using agile methods (XP [10] or Scrum
Agile team management and productivity
We describe below results from the thematic analysis, providing a short description for each theme and presenting quotations and other evidence that support the findings.
Fig. 4 presents the results from the thematic network analysis of agile team productivity factors. In the following sections, we describe the organizing themes, team design choices, team member turnover, and inter-team coordination, the main factors impacting agile team productivity, all related to the global theme agile team
Discussion
Through an interpretative field study in three large companies in Brazil, we investigated factors that affect agile team productivity. We now discuss the cases in light of our research question, RQ: “Which factors do have an impact, and in what way, on team productivity when using agile methods?”
The productivity of the studied agile teams was more sensitive to team management issues. Agile teams often take responsibility for managing their own work and behaviors; while others usually make
Conclusion
We have conducted a multiple-case study of agile teams in three large Brazilian IT companies for 6 months. The results presented here are based on detailed and rigorous investigations of three teams, summarized in Table 2. This paper sheds light on under-researched questions pertaining to the productivity factors of agile teams.
The major original contributions of this paper are (1) to explore, in an industrial setting, a significant agile productivity factor: team management, (2) to analyze team
Acknowledgements
We would like to thank the companies and their employees who contributed to this project. This research is supported by FAPESP, Brazil, proc. 2009/10338-3, CNPq, Brazil, proc. 76661/2010-2, and the Research Council of Norway, proc. 202657.
References (110)
- et al.
How do personality, team processes and task characteristics relate to job satisfaction and software quality?
Information and Software Technology
(2009) - et al.
A survey study of critical success factors in agile software projects
Journal of Systems and Software
(2008) - et al.
What makes teams work: group effectiveness research from the shop floor to the executive suite
Journal of Management
(1997) - et al.
Research synthesis in software engineering: a tertiary study
Information and Software Technology
(2011) - et al.
What affects information systems development team performance? An exploratory study from the perspective of combined socio-technical theory and coordination theory
Computers in Human Behavior
(2011) - et al.
The impact of the Abilene Paradox on double-loop learning in an agile team
Information and Software Technology
(2007) - et al.
A teamwork model for understanding an agile team: a case study of a scrum project
Information and Software Technology
(2010) - et al.
Mediators between coordination and is project performance
Information and Management
(2007) Measuring and predicting software productivity: a systematic map and review
Information and Software Technology
(2011)- et al.
What do software practitioners really think about project success: an exploratory study
Journal of Systems and Software
(2005)