Self-organizing roles on Agile software development teams

Rashina Hoda, James Noble, Stuart Marshall

Research output: Contribution to journalArticleResearchpeer-review

180 Citations (Scopus)

Abstract

Self-organizing teams have been recognized and studied in various forms autonomous groups in socio-technical systems, enablers of organizational theories, agents of knowledge management, and as examples of complex-adaptive systems. Over the last decade, self-organizing teams have taken center stage in software engineering when they were incorporated as a hallmark of Agile methods. Despite the long and rich history of self-organizing teams and their recent popularity with Agile methods, there has been little research on the topic within software wngineering. Particularly, there is a dearth of research on how Agile teams organize themselves in practice. Through a Grounded Theory research involving 58 Agile practitioners from 23 software organizations in New Zealand and India over a period of four years, we identified informal, implicit, transient, and spontaneous roles that make Agile teams self-organizing. These roles Mentor, Coordinator, Translator, Champion, Promoter, and Terminator are focused toward providing initial guidance and encouraging continued adherence to Agile methods, effectively managing customer expectations and coordinating customer collaboration, securing and sustaining senior management support, and identifying and removing team members threatening the self-organizing ability of the team. Understanding these roles will help software development teams and their managers better comprehend and execute their roles and responsibilities as a self-organizing team.

Original languageEnglish
Pages (from-to)422-444
Number of pages23
JournalIEEE Transactions on Software Engineering
Volume39
Issue number3
DOIs
Publication statusPublished - Mar 2013
Externally publishedYes

Keywords

  • Agile software development
  • grounded theory
  • Self-organizing
  • software engineering
  • team roles

Cite this