Understanding Community Smells Variability: A Statistical Approach

Social debt has been defined as the presence in a project of costly sub-optimal organizational conditions, e.g., non-cohesive development communities whose members have communication or coordination issues. Community smells are indicators of such sub-optimal organizational structures and may well lead to social debt. Recently, several studies analyzed actors affecting presence of community smells and their harmfulness, or proposed refactoring strategies to mitigate them. However, to the best of our knowledge, there is still a limited understanding of the factors influencing the variability of community smells, namely how they increase/decrease in magnitude over time. In this paper, we aim at conducting the first statistical experimentation on the matter, by analyzing how a set of 40 socio-technical factors, e.g., turnover or communicability, impact the variability of four community smells on a dataset composed of 60 open-source communities. The results of the study reveal that communicability is, in most cases, important to reduce the risk of an increase of community smell instances, while broadening the collaboration network does not always have a positive effect.

[1]  Alexander Serebrenik,et al.  Beyond Technical Aspects: How Do Community Smells Influence the Intensity of Code Smells? , 2018, IEEE Transactions on Software Engineering.

[2]  Rick Kazman,et al.  The Architect's Role in Community Shepherding , 2016, IEEE Software.

[3]  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.

[4]  Sherlock A. Licorish Collaboration patterns of successful globally distributed agile software teams: the role of core developers , 2013 .

[5]  Hans van Vliet,et al.  Overcoming challenges in global software development: The role of brokers , 2014, 2014 IEEE Eighth International Conference on Research Challenges in Information Science (RCIS).

[6]  Laurie A. Williams,et al.  Predicting failures with developer networks and social network analysis , 2008, SIGSOFT '08/FSE-16.

[7]  Damian A. Tamburri,et al.  Software Architecture Social Debt: Managing the Incommunicability Factor , 2019, IEEE Transactions on Computational Social Systems.

[8]  Paul Ralph,et al.  Social theory for software engineering research , 2016, EASE.

[9]  Henri Theil,et al.  A Multinomial Extension of the Linear Logit Model , 1969 .

[10]  Laurie A. Williams,et al.  Socio-technical developer networks: should we trust our measurements? , 2011, 2011 33rd International Conference on Software Engineering (ICSE).

[11]  Shan Ling Pan,et al.  Boundary spanning by design: Toward aligning boundary-spanning capacity and strategy in IT outsourcing , 2013, IEEE Transactions on Engineering Management.

[12]  Rick Kazman,et al.  Exploring Community Smells in Open-Source: An Automated Approach , 2019, IEEE Transactions on Software Engineering.

[13]  Claes Wohlin,et al.  Guidelines for snowballing in systematic literature studies and a replication in software engineering , 2014, EASE '14.

[14]  Ioannis Stamelos,et al.  An experimental investigation of personality types impact on pair effectiveness in pair programming , 2009, Empirical Software Engineering.

[15]  Emmanuelle Vaast,et al.  The Emergence of Boundary Spanning Competence in Practice: Implications for Implementation and Use of Information Systems , 2005, MIS Q..

[16]  Andrea De Lucia,et al.  Splicing Community Patterns and Smells: A Preliminary Study , 2020, ICSE.

[17]  Sven Apel,et al.  From Developer Networks to Verified Communities: A Fine-Grained Approach , 2015, 2015 IEEE/ACM 37th IEEE International Conference on Software Engineering.

[18]  R Leifer,et al.  Organizational/environmental interchange: a model of boundary spanning activity. , 1978, Academy of management review. Academy of Management.

[19]  Sidney W. A. Dekker Deferring to expertise versus the prima donna syndrome: a manager’s dilemma , 2014, Cognition, Technology & Work.

[20]  Gemma Catolino,et al.  Gender Diversity and Women in Software Teams: How Do They Affect Community Smells? , 2019, 2019 IEEE/ACM 41st International Conference on Software Engineering: Software Engineering in Society (ICSE-SEIS).

[21]  Premkumar T. Devanbu,et al.  Gender and Tenure Diversity in GitHub Teams , 2015, CHI.

[22]  Ahmed E. Hassan,et al.  Studying the Impact of Social Structures on Software Quality , 2010, 2010 IEEE 18th International Conference on Program Comprehension.

[23]  Gemma Catolino,et al.  Refactoring Community Smells in the Wild: The Practitioner’s Field Manual , 2020, 2020 IEEE/ACM 42nd International Conference on Software Engineering: Software Engineering in Society (ICSE-SEIS).

[24]  Philippe Kruchten,et al.  Social debt in software engineering: insights from industry , 2015, Journal of Internet Services and Applications.

[25]  Joel West,et al.  The Role of Participation Architecture in Growing Sponsored Open Source Communities , 2008 .

[26]  Daniel J. Greenhoe Properties of distance spaces with power triangle inequalities , 2016, PeerJ Prepr..

[27]  Hans van Vliet,et al.  The effect of governance on global software development: An empirical research in transactive memory systems , 2014, Inf. Softw. Technol..

[28]  Andrea De Lucia,et al.  [Journal First] The Scent of a Smell: An Extensive Comparison Between Textual and Structural Smells , 2018, 2018 IEEE/ACM 40th International Conference on Software Engineering (ICSE).

[29]  Steffen Staab,et al.  Firm-Sponsored Developers in Open Source Software Projects: a Social Capital Perspective , 2016, ECIS.

[30]  Helen Sharp,et al.  Software Engineering: Community and Culture , 2000, IEEE Softw..

[31]  Marco Tulio Valente,et al.  What is the Truck Factor of popular GitHub applications? A first assessment , 2015, PeerJ Prepr..

[32]  Audris Mockus,et al.  Organizational volatility and its effects on software defects , 2010, FSE '10.

[33]  Jan Bosch,et al.  Technical Debt tracking: Current state of practice: A survey and multiple case study in 15 large organizations , 2018, Sci. Comput. Program..

[34]  Mohamed Wiem Mkaouer,et al.  Learning to detect community smells in open source software projects , 2020, Knowl. Based Syst..

[35]  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.

[36]  Catholijn M. Jonker,et al.  Modeling Power Distance in Trade , 2009, MABS.

[37]  Marco Torchiano,et al.  On the Difficulty of Computing the Truck Factor , 2011, PROFES.

[38]  Mohamed Wiem Mkaouer,et al.  On the Detection of Community Smells Using Genetic Programming-based Ensemble Classifier Chain , 2020, 2020 ACM/IEEE 15th International Conference on Global Software Engineering (ICGSE).

[39]  Hannu Jaakkola,et al.  Culture Sensitive Aspects in Software Engineering , 2012, Conceptual Modelling and Its Theoretical Foundations.

[40]  Jan Bosch,et al.  Revealing Social Debt with the CAFFEA Framework: An Antidote to Architectural Debt , 2017, 2017 IEEE International Conference on Software Architecture Workshops (ICSAW).

[41]  Fabio Palomba,et al.  Success and Failure in Software Engineering: A Followup Systematic Literature Review , 2020, IEEE Transactions on Engineering Management.

[42]  Fabio Palomba,et al.  Predicting the emergence of community smells using socio-technical metrics: A machine-learning approach , 2021, J. Syst. Softw..

[43]  Alexander Serebrenik,et al.  Code of conduct in open source projects , 2017, 2017 IEEE 24th International Conference on Software Analysis, Evolution and Reengineering (SANER).

[44]  Eleni Stroulia,et al.  On the Personality Traits of StackOverflow Users , 2013, 2013 IEEE International Conference on Software Maintenance.

[45]  Alexander Serebrenik,et al.  Discovering community patterns in open-source: a systematic approach and its evaluation , 2018, Empirical Software Engineering.

[46]  Param Vir Singh,et al.  Network Effects: The Influence of Structural Capital on Open Source Project Success , 2011, MIS Q..

[47]  Gregorio Robles,et al.  Developer Turnover in Global, Industrial Open Source Projects: Insights from Applying Survival Analysis , 2017, 2017 IEEE 12th International Conference on Global Software Engineering (ICGSE).

[48]  Ju Long,et al.  Understanding the Role of Core Developers in Open Source Software Development , 2006 .

[49]  Deirdre N. McCloskey,et al.  The Standard Error of Regressions , 1996 .

[50]  Gemma Catolino,et al.  Gender Diversity and Community Smells: Insights From the Trenches , 2020, IEEE Software.

[51]  Gemma Catolino,et al.  The Secret Life of Software Communities: What we Know and What we Don't Know , 2019, BENEVOL.