Project

Back to overview

On The Interplay between Social Interactions and Software Architecture in Open Source Software

Applicant Schweitzer Frank
Number 125298
Funding scheme Interdisciplinary projects
Research institution Departement Management, Technologie und Ökonomie D-MTEC ETH Zürich
Institution of higher education ETH Zurich - ETHZ
Main discipline Science of management
Start/End 01.10.2009 - 30.09.2012
Approved amount 202'050.00
Show all

All Disciplines (3)

Discipline
Science of management
Other disciplines of Physics
Information Technology

Keywords (8)

Open Source Software; Complex networks; Software architecture; Innovation dynamics; Project organisation; network evolution; technological change; project management

Lay Summary (English)

Lead
Lay summary
Open source software (OSS) denotes computer software developed by voluntary contributions and distributed under specific licensing terms, enabling the user to study the code and alter it at will. The popularity of OSS is reflected by a number of highly successful products, such as the Firefox web browser or the Apache server. From a scientific perspective, OSS can be seen as a evolving complex network on two different, but interlinked system levels: (i) the product level, i.e., the structural level of the software architecture itself. Here, the nodes of the network are given by software modules (such as classes), whereas the links between nodes may describe the type of connection (such as usage or inheritance), (ii) the production level, i.e. the social interaction level of humans contributing to the software. Here, the nodes of the network represent the different people involved in the 'production' (such as developers), whereas the links express their various interactions (such as forum communication, or collaboration). As a predominant feature, both of these networks are highly dynamic in addition/deletion of nodes or links to/from the network. Moreover, they do not just change independently, but they coevolve. Hence, understanding the development of OSS puts a challenge on different sciences: Physics, to reveal (a) the structural features and (b) the abstract dynamics of these two networks; Computer Science, to elucidate the Software Engineering principles underlying OSS; Economics/Management Sciences, to understand how decentralized project organisation and self-organized social interaction may eventually result into a successful products.The current project sets out to answer these questions, not separately in a disciplinary manner, but in an integrated, highly interdisciplinary approach. It addresses the specifics of the two different system levels -- product and production -- and the relation between them, as key to a comprehensive insight into OSS in general, and successfull OSS products in particular. The research is data-driven, i.e. it investigates both: data about the software structure and the growth of OSS products and data about the communication in time of the developers and users of the very same projects, to a detailed extent not seen so far (more than 100.000 projects and about 2 million messages). By revealing these structural and dynamical features and possible similarities between projects very different in size and effort, the project aims at quantifying the determinants of success and failure of such projects -- an insight with potential impact far beyond OSS
Direct link to Lay Summary Last update: 21.02.2013

Responsible applicant and co-applicants

Employees

Publications

Publication
A Network Perspective on Software Modularity
Zanetti Marcelo Serano, Schweitzer Frank (2012), A Network Perspective on Software Modularity, in Proceedings of Architecture of Computing Systems Workshops 2012.
A Quantitative Study of Social Organization in Open Source Software Communities
Zanetti Marcelo Serrano, Sarigol Emre, Schweitzer F (2012), A Quantitative Study of Social Organization in Open Source Software Communities, in Imperial College Computing Student Workshop 2012, Schloss Dagstuhl.
Synchronised firing induced by network dynamics in excitable systems
Tessone CJ, Zanette DH (2012), Synchronised firing induced by network dynamics in excitable systems, in Europhysics Letters, 99(6), 68006.
Organic Design of Massively Distributed Systems: A Complex Networks Perspective
Scholtes Ingo, Tessone Claudio Juan (2012), Organic Design of Massively Distributed Systems: A Complex Networks Perspective, in Informatik Spektrum, 35(2), 75-86.
Sustainable growth in complex networks
Tessone CJ, Geipel MM, Schweitzer F (2011), Sustainable growth in complex networks, in Europhysics Letters, 96(5), 58005.
Vanishing hands? On the link between product and organization architecture
Press K, Geipel MM (2010), Vanishing hands? On the link between product and organization architecture, in INDUSTRIAL AND CORPORATE CHANGE, 19(5), 1493-1514.
Software Change Dynamics: Evidence from 35 Java Projects
Geipel MM, Schweitzer F, Schweitzer F (2009), Software Change Dynamics: Evidence from 35 Java Projects, in Proceedings of the European Software Engineering Conference, ESEC/FSE, ACM Association for Computing Machinery , New York, USA.
A complementary view on the growth of directory trees
Geipel MM, Tessone CJ (2009), A complementary view on the growth of directory trees, in EUROPEAN PHYSICAL JOURNAL B, 71(4), 641-648.

Scientific events

Active participation

Title Type of contribution Title of article or contribution Date Place Persons involved
Vom Programmierer zum Team, vom Team zur Community - Perspektiven des Social Software Engineering 26.11.2012 Nürnberg
IBM Developer Days, Talk MS Zanetti "Empirical Software Engineering" 14.11.2012 Zürich
ICCSW, Talk M.S. Zanetti "A Quantitative Study of Social Organisation in Open Source Software Communities" 27.09.2012 London
European conference on Complex Systems, Talk M.S. Zanetti "Sustainable Network Growth Based on Modular Structures" 04.09.2012 Brussels
International Conference on Software Engineering, Talk M.S. Zanetti "The Co-evolution of Socio-technical Structures in Sustainable Software Development: Lessons form the Open Source Software Communities" 04.06.2012 Zürich
Research Seminar, Talk IScholtes "Design of adaptive distributed systems: A complex networks perspective" 20.04.2012 Belgium
Lecture Series at interdisciplinary Summer School, Talk I Scholtes "The Statistical Mechanics of Networks: Applications in Future Information Systems" 31.03.2012 Würzburg
Workshop on Complex Sciences in the Engineering of Computing Systems, Talk CJ Tessone "Monogamous networks in Open Source Communities" 28.02.2012 München
Workshop on Complex Sciences in the Engineering of Computing Systems, Talk M.S. Zanetti "A Network Perspective on Software Modularity" 28.02.2012 München
Workshop on Complex Sciences in the Engineering of Computing Systems, Talk I Scholtes "Complex Network Models and the Stochastic Management of P2P Topologies" 28.02.2012 München
Center for the study of Complex Systems Seminar Series, Talk F. Schweitzer "Open source software as a complex network" 04.10.2011 Michigan, USA
Talk F Schweitzer "Open source software as a complex network" 04.10.2011 Michigan
Workshop Dynamics on and of Complex Networks V, Talk CJ. Tessone"Global synchronization induced by network dynamics in excitable systems" 16.09.2011 Vienna, Austria
European Conference on Complex Systems, Talk CJ. Tessone "Software evolution: from inhomogeneous evolution to coarse-grained dynamics" 13.09.2011 Vienna, Austria
Conference on Application of Social Networks, Talk MV Tomasello "Cuttlefish for visualization of network dynamics in research alliances" 13.09.2011 Zürich
Application of Social Network Analysis 2011 Conference, Talk M. Tomasello "Cuttlefish for visualization of network dynamics in research alliances" 13.09.2011 Zurich, Switzerland
Master / PhD Course "Networks" Talk M. Müller "Empirical Research on Alliance and Network Formation" 09.12.2010 Strasbourg, France
Interdisciplinary Seminar: Modeling Complex Socio-Economic Systems and Crises, Talk CJ. Tessone "Network growth in open source software" 05.10.2010 Zurich, Switzerland
Talk F Schweitzer "The Hidden Complexity of Open Source Software" 30.09.2010 Shanghai
Talk F. Schweitzer "The Hidden Complexity of Open Source Software" 30.09.2010 Shanghai
Second Annual Meeting COST, Talk F Schweitzer "Open Source Software as a Complex Network" 26.05.2010 Bulgaria
NetSci 2010, Talk F Schweitzer "Open Source Software: Networks of Social and Functional Dependencies" 10.05.2010 Boston
Annual Conference of the German Physical Society, Talk F Schweitzer "The Hidden Complexity of Open Source Software" 21.03.2010 Regensburg
March meeting of the German Physical Society, Talk F Schweitzer "The hidden complexity of open source software" 21.03.2010 Regensburg
Workshop Mining Software Archives, Talk F Schweitzer "OSS Projects: Software Structure, Dynamics, Communication" 14.03.2010 Ascona


Knowledge transfer events

Active participation

Title Type of contribution Date Place Persons involved
Talk of F. Schweitzer "Open source software as a complex network" 11.08.2011 Singapore, Singapore


Associated projects

Number Title Start Funding scheme
101805 The Processes and Competitive Dynamics of Open Source Software Projects 01.10.2003 Project funding (Div. I-III)

Abstract

Open Source Software (OSS) can be seen as an evolving complex network on two different, but interlinked system levels: First, the product, i.e., the structural level of the software architecture itself. Here, the nodes of the network are given by software modules (such as functions or classes), whereas the links between nodes may describe the type of connection (such as usage or inheritance). Second, the production level, i.e. the level of the social interaction among individuals contributing to the software. Here, the nodes of the network represent the different people involved in the 'production' (such as developers), whereas the links express their various interactions (such as forum communication, or collaboration). As a predominant feature, both of these networks are highly dynamic in addition/deletion of nodes or links to/from the network. Moreover, they do not just change independently, but they coevolve. Hence, understanding the development of OSS puts a challenge on different sciences: Physics, to reveal (a) the structural features and (b) the abstract dynamics of these two networks; Computer Science, to elucidate the Software Engineering principles underlying OSS; Economics/Management Sciences, to understand how decentralized project organisation and self-organized social interaction may eventually result into a successful products.The current project sets out to answer these questions, not separately in a disciplinary manner, but in an integrated, highly interdisciplinary approach. It addresses the specifics of the two different system levels -product and production- and the relation between them, as key to a comprehensive insight into OSS in general, and successfull OSS products in particular. The research is data-driven, i.e. it investigates both: data about the software structure and the growth of OSS products and data about the communication in time of the developers and users of the very same projects, to a detailed extent not seen so far (more than 100.000 projects and about 2 million messages). By revealing these structural and dynamical features and possible similarities between projects very different in size and effort, the project aims at quantifying the determinants of success and failure of such projects -- an insight with potential impact far beyond OSS.
-