Analysis of the interdependent co-evolution of product structures and community structures using dependency modelling techniques

Within the engineering design literature, dependency modelling techniques have been used to model the structure and evolution of products. While a product's structure has significant implications on the product's quality and the complexity of product development process, recent studies within organisational science suggest that an organisation's structure also has a direct impact on the product structures. This interdependence is particularly important in open-source products developed by communities because there is no community structure imposed at the beginning of the process. Both the product structure and the community structure undergo dynamic co-evolution. Understanding this co-evolution is crucial as open-source development processes are being extended beyond software products to hardware products. To understand the interdependence between product and community structures, empirically testable hypotheses, based on the theory of socio-technical coordination, are formulated in this paper. A dynamic network-based approach is proposed where products are modelled as networks of interfacing modules and communities are modelled as networks of collaborating participants. The proposed approach for testing the hypotheses involves (a) modelling the evolution of networks across consecutive versions and (b) measuring the overlap between anticipated and actual communities. The approach is presented for Drupal, which is an open-source software product. Drupal is chosen due to the availability of product and community data for different versions. Based on the analysis, it is concluded that product structures significantly influence the community structures. However, the impact of community structures on the product structures is weak. While the results are specific to the case study, the approach is general enough to be utilised for other open-source software and hardware products. The approach can also be used to model the evolution of loosely coupled informal communities within traditional organisations.

[1]  Kevin Crowston,et al.  Coordination without discussion? Socio-technical congruence and Stigmergy in Free and Open Source So , 2009 .

[2]  Christopher Lettl,et al.  Revealing dynamics and consequences of fit and misfit between formal and informal networks in multi-institutional product development collaborations , 2008 .

[3]  Alan MacCormack,et al.  The Impact of Component Modularity on Design Evolution: Evidence from the Software Industry , 2007 .

[4]  P. Jaccard,et al.  Etude comparative de la distribution florale dans une portion des Alpes et des Jura , 1901 .

[5]  Steven D. Eppinger,et al.  The Misalignment of Product Architecture and Organizational Structure in Complex Product Development , 2004, Manag. Sci..

[6]  Kathleen M. Carley,et al.  A Social Network Approach to Free/Open Source Software Simulation , 2005 .

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

[8]  M E J Newman,et al.  Community structure in social and biological networks , 2001, Proceedings of the National Academy of Sciences of the United States of America.

[9]  M E J Newman,et al.  Modularity and community structure in networks. , 2006, Proceedings of the National Academy of Sciences of the United States of America.

[10]  Brian Fitzgerald,et al.  Open Source Software Development: Future or Fad? , 2007 .

[11]  Ian T. Jolliffe,et al.  A Method for Comparing Two Hierarchical Clusterings: Comment , 1983 .

[12]  Alan MacCormack,et al.  Exploring the Duality between Product and Organizational Architectures: A Test of the Mirroring Hypothesis , 2011 .

[13]  Stefan Koch,et al.  Free / open source software development , 2004 .

[14]  Thomas W. Malone,et al.  What is coordination theory , 1988 .

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

[16]  Daniela E. Damian,et al.  Does Socio-Technical Congruence Have an Effect on Software Build Success? A Study of Coordination in a Software Project , 2011, IEEE Transactions on Software Engineering.

[17]  J. Leon Zhao,et al.  A Comparison of Evaluation Networks and Collaboration Networks in Open Source Software Communities , 2008, AMCIS.

[18]  A. V. D. Ven,et al.  Determinants of Coordination Modes within Organizations , 1976 .

[19]  Jean-Loup Guillaume,et al.  Fast unfolding of communities in large networks , 2008, 0803.0476.

[20]  Arnaldo Camuffo,et al.  Beyond the "Mirroring" Hypothesis: Product Modularity and Interorganizational Relations in the Air Conditioning Industry , 2012, Organ. Sci..

[21]  Chiara Francalanci,et al.  THE CO-EVOLUTION OF SOCIAL NETWORKS AND SOFTWARE STRUCTURES: A STUDY OF OPEN SOURCE AND CLOSED SOURCE PROJECTS. , 2009 .

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

[23]  Premkumar T. Devanbu,et al.  Latent social structure in open source projects , 2008, SIGSOFT '08/FSE-16.

[24]  Yuanfang Cai,et al.  Analyzing the Evolution of Large-Scale Software Systems Using Design Structure Matrices and Design Rule Theory: Two Exploratory Cases , 2008, Seventh Working IEEE/IFIP Conference on Software Architecture (WICSA 2008).

[25]  Martin G. Everett,et al.  Models of core/periphery structures , 2000, Soc. Networks.

[26]  M. Barber Modularity and community detection in bipartite networks. , 2007, Physical review. E, Statistical, nonlinear, and soft matter physics.

[27]  Alan MacCormack,et al.  Exploring the Structure of Complex Software Designs: An Empirical Study of Open Source and Proprietary Code , 2006, Manag. Sci..

[28]  Yuanfang Cai,et al.  Coordination Implications of Software Architecture in a Global Software Development Project , 2008, WICSA.

[29]  HERBERT A. SIMON,et al.  The Architecture of Complexity , 1991 .

[30]  Manuel E. Sosa A structured approach to predicting and managing technical interactions in software development , 2008 .

[31]  William M. Rand,et al.  Objective Criteria for the Evaluation of Clustering Methods , 1971 .

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

[33]  Michael Weiss,et al.  Design Evolution of an Open Source Project Using an Improved Modularity Metric , 2009, OSS.

[34]  Steven D. Eppinger,et al.  Identifying Modular and Integrative Systems and Their Impact on Design Team Interactions , 2003 .

[35]  Audris Mockus,et al.  Formulation and preliminary test of an empirical theory of coordination in software engineering , 2003, ESEC/FSE-11.

[36]  James D. Herbsleb,et al.  Socio-technical congruence: a framework for assessing the impact of technical and work dependencies on software development productivity , 2008, ESEM '08.

[37]  G. Hoetker Do Modular Products Lead to Modular Organizations , 2006 .

[38]  Françoise Détienne,et al.  A Methodological Framework for Socio-Cognitive Analyses of Collaborative Design of Open Source Software , 2006, Computer Supported Cooperative Work (CSCW).

[39]  Nicolas Ducheneaut,et al.  Socialization in an Open Source Software Community: A Socio-Technical Analysis , 2005, Computer Supported Cooperative Work (CSCW).

[40]  Akif Günes Koru,et al.  An Exploratory Study on the Evolution of OSS Developer Communities , 2008, Proceedings of the 41st Annual Hawaii International Conference on System Sciences (HICSS 2008).

[41]  Gregory R. Madey,et al.  Modeling the Free/Open Source Software Community: A Quantitative Investigation , 2008 .

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

[43]  Gregory R. Madey,et al.  Exploration of the Open Source Software Community , 2004 .

[44]  Mary E. Helander,et al.  An Analysis of Congruence Gaps and Their Effect on Distributed Software Development , 2008 .

[45]  James D. Herbsleb,et al.  Global Software Engineering: The Future of Socio-technical Coordination , 2007, Future of Software Engineering (FOSE '07).

[46]  D. V. Steward,et al.  The design structure system: A method for managing the design of complex systems , 1981, IEEE Transactions on Engineering Management.

[47]  Jin Xu,et al.  A Topological Analysis of the Open Souce Software Development Community , 2005, Proceedings of the 38th Annual Hawaii International Conference on System Sciences.