Stigmergic coordination in FLOSS development teams: Integrating explicit and implicit mechanisms

The vast majority of literature on coordination in team-based projects has drawn on a conceptual separation between explicit (e.g. plans, feedback) and implicit coordination mechanisms (e.g. mental maps, shared knowledge). This analytic distinction presents some limitations in explaining how coordination is reached in organizations characterized by distributed teams, scarce face to face meetings and fuzzy and changing lines of authority, as in free/libre open source software (FLOSS) development.Analyzing empirical illustrations from two FLOSS projects, we highlight the existence of a peculiar model, stigmergic coordination, which includes aspects of both implicit and explicit mechanisms. The work product itself (implicit) and the characteristics under which it is shared (explicit) play an under-appreciated role in helping software developers manage dependencies as they arise. We develop this argument beyond the existing literature by working with an existing coordination framework, considering the role that the codebase itself might play at each step. We also discuss the features and the practices to support stigmergic coordination in distributed teams, as well as recommendations for future research.

[1]  David Budgen,et al.  Empirical Software Engineering , 2014, Computing Handbook, 3rd ed..

[2]  James D. Herbsleb,et al.  Identification of coordination requirements: implications for the Design of collaboration and awareness tools , 2006, CSCW '06.

[3]  Kim B. Clark,et al.  Design Rules: The Power of Modularity Volume 1 , 1999 .

[4]  Andrea Omicini,et al.  Cognitive Stigmergy: Towards a Framework Based on Agents and Artifacts , 2006, E4MAS.

[5]  Christine Halverson,et al.  Designing task visualizations to support the coordination of work in software development , 2006, CSCW '06.

[6]  André van der Hoek,et al.  Palantir: raising awareness among configuration management workspaces , 2003, 25th International Conference on Software Engineering, 2003. Proceedings..

[7]  James D. Thompson Organizations in Action: Social Science Bases of Administrative Theory , 1967 .

[8]  Kjeld Schmidt,et al.  Cooperative Work and Coordinative Practices - Contributions to the Conceptual Foundations of Computer-Supported Cooperative Work (CSCW) , 2011, Computer Supported Cooperative Work.

[9]  Saul Greenberg,et al.  A framework for asynchronous change awareness in collaborative documents and workspaces , 2006, Int. J. Hum. Comput. Stud..

[10]  Francesco Bolici,et al.  Journal of Information , Communication and Ethics in Society Organizational trust in a networked world : Analysis of the interplay between social factors and Information and Communication Technology , 2016 .

[11]  Carl Gutwin,et al.  Group awareness in distributed software development , 2004, CSCW.

[12]  Tom Ziemke,et al.  Social cognition, artefacts, and stigmergy: A comparative analysis of theoretical frameworks for the understanding of artefact-mediated collaborative activity , 2001, Cognitive Systems Research.

[13]  Lars Rune Christensen,et al.  The logic of practices of stigmergy: representational artifacts in architectural design , 2008, CSCW.

[14]  Walt Scacchi,et al.  Understanding Software Maintenance Work , 1987, IEEE Transactions on Software Engineering.

[15]  Reijo Sulonen,et al.  Supporting virtual software projects on the Web , 1998, Proceedings Seventh IEEE International Workshop on Enabling Technologies: Infrastucture for Collaborative Enterprises (WET ICE '98) (Cat. No.98TB100253).

[16]  Beth A. Bechky,et al.  10 Coordination in Organizations: An Integrative Perspective , 2009 .

[17]  Kevin Crowston,et al.  C OLLABORATION T HROUGH O PEN S UPERPOSITION : A T HEORY OF THE O PEN S OURCE W AY 1 , 2016 .

[18]  P. So.KC rgaard Object-oriented programming and computerised shared material , 1988 .

[19]  Victor R. Basili,et al.  Communication and Organization in Software Development: An Empirical Study , 1997, IBM Syst. J..

[20]  Kevin Crowston,et al.  Alone together: a socio-technical theory of motivation, coordination and collaboration technologies in organizing for free and open source software development , 2009 .

[21]  Carla Simone,et al.  Coordination mechanisms: Towards a conceptual foundation of CSCW systems design , 1996, Computer Supported Cooperative Work (CSCW).

[22]  Kevin Crowston,et al.  The interdisciplinary study of coordination , 1994, CSUR.

[23]  L. Sproull,et al.  Coordinating Expertise in Software Development Teams , 2000 .

[24]  J. Herbsleb,et al.  Global software development , 2001 .

[25]  B. Asher The Professional Vision , 1994 .

[26]  Lars Rune Christensen,et al.  Practices of stigmergy in architectural work , 2007, GROUP.

[27]  Elihu M. Gerson,et al.  Analyzing due process in the workplace , 1986, COCS '86.

[28]  JoAnne Yates,et al.  Life in the Trading Zone: Structuring Coordination Across Boundaries in Postbureaucratic Organizations , 2006, Organ. Sci..

[29]  Robert E. Kraut,et al.  Coordination in software development , 1995, CACM.

[30]  Li-Te Cheng,et al.  Sometimes you need to see through walls: a field study of application programming interfaces , 2004, CSCW.

[31]  Beth A. Bechky Sharing Meaning Across Occupational Communities: The Transformation of Understanding on a Production Floor , 2003, Organ. Sci..

[32]  Francis Heylighen,et al.  Why is Open Access Development so Successful? Stigmergic organization and the economics of information , 2006, ArXiv.

[33]  Robert P. Smith,et al.  A model-based method for organizing tasks in product development , 1994 .

[34]  M. E. Conway HOW DO COMMITTEES INVENT , 1967 .

[35]  A. P. Chan,et al.  Coordination and Virtualization: the Role of Electronic Networks and Personal Relationships , 1999 .

[36]  T. Malone,et al.  Toward an interdisciplinary theory of coordination , 2003 .

[37]  J. Alberto Espinosa,et al.  Explicit versus implicit coordination mechanisms and task dependencies: One size does not fit all. , 2004 .

[38]  James D. Herbsleb,et al.  Architectures, coordination, and distance: Conway’s law and beyond , 1999 .

[39]  Matthijs den Besten,et al.  The allocation of collaborative efforts in open-source software , 2008, Inf. Econ. Policy.

[40]  P.-P. Grasse La reconstruction du nid et les coordinations interindividuelles chezBellicositermes natalensis etCubitermes sp. la théorie de la stigmergie: Essai d'interprétation du comportement des termites constructeurs , 1959, Insectes Sociaux.

[41]  Bill Curtis,et al.  A field study of the software design process for large systems , 1988, CACM.

[42]  Victor R. Basili,et al.  Editorial: Open Source and Empirical Software Engineering , 2001, Empirical Software Engineering.

[43]  Jay R. Galbraith Organization Design: An Information Processing View , 1974 .

[44]  Jean-Michel Dalle,et al.  The Allocation of Software Development Resources In ‘Open Source’ Production Mode , 2005 .

[45]  James D. Herbsleb,et al.  Communication networks in geographically distributed software development , 2008, CSCW.

[46]  Susan Leigh Star,et al.  Institutional Ecology, `Translations' and Boundary Objects: Amateurs and Professionals in Berkeley's Museum of Vertebrate Zoology, 1907-39 , 1989 .

[47]  T. Schelling,et al.  The Strategy of Conflict. , 1961 .

[48]  Audris Mockus,et al.  A case study of open source software development: the Apache server , 2000, Proceedings of the 2000 International Conference on Software Engineering. ICSE 2000 the New Millennium.

[49]  Susan Leigh Star,et al.  The Structure of Ill-Structured Solutions: Boundary Objects and Heterogeneous Distributed Problem Solving , 1989, Distributed Artificial Intelligence.

[50]  C. Gibson,et al.  Team Implicit Coordination Processes: A Team Knowledge–Based Approach , 2008 .

[51]  Slim Kallel,et al.  Enabling Technologies: Infrastructure for Collaborative Enterprises , 2015, Comput. J..

[52]  Rebecca E. Grinter Supporting articulation work using software configuration management systems , 1996, Computer Supported Cooperative Work (CSCW).

[53]  David F. Redmiles,et al.  On The Roles of APIs in the Coordination of Collaborative Software Development , 2009, Computer Supported Cooperative Work (CSCW).

[54]  Organizations , 1992, Restoration & Management Notes.

[55]  Kim B. Clark,et al.  The Option Value of Modularity in Design: An Example From Design Rules, Volume 1: The Power of Modularity , 2000 .

[56]  Kevin Crowston,et al.  Coordination and Collective Mind in Software Requirements Development , 1998, IBM Syst. J..

[57]  Phanish Puranam,et al.  Integrating Acquired Capabilities: When Structural Integration is (Un)Necessary , 2009, Organ. Sci..

[58]  Li-Te Cheng,et al.  Shared waypoints and social tagging to support collaboration in software development , 2006, CSCW '06.

[59]  Audris Mockus,et al.  Shared Mental Models and Coordination in Large-Scale, Distributed Software Development , 2001, ICIS.

[60]  Kim B. Clark,et al.  Design Rules: The Power of Modularity , 2000 .

[61]  A. Strauss Work and the Division of Labor , 1985 .

[62]  Paul Dourish,et al.  Seeking the source: software source code as a social and technical artifact , 2005, GROUP.

[63]  James L. Wright,et al.  Source code that talks: an exploration of Eclipse task comments and their implication to repository mining , 2005, MSR '05.

[64]  David Lorge Parnas,et al.  The Modular Structure of Complex Systems , 1984, IEEE Transactions on Software Engineering.

[65]  Audris Mockus,et al.  Shared Mental Models, Familiarity, and Coordination: A Multi-Method Study of Distributed Software Teams , 2002, ICIS.