Beyond technical aspects: how do community smells influence the intensity of code smells?

Fabio Palomba (Corresponding author), Damian Andrew Tamburri, Francesca Arcelli Fontana, Rocco Oliveto, Andy Zaidman, A. Serebrenik

Research output: Contribution to journalArticleAcademicpeer-review

51 Citations (Scopus)
257 Downloads (Pure)

Abstract

Code smells are poor implementation choices applied by developers during software evolution that often lead to critical flaws or failure. Much in the same way, community smells reflect the presence of organizational and socio-technical issues within a software community that may lead to additional project costs. Recent empirical studies provide evidence that community smells are often---if not always---connected to circumstances such as code smells. In this paper we look deeper into this connection by conducting a mixed-methods empirical study of 117 releases from 9 open-source systems. The qualitative and quantitative sides of our mixed-methods study were run in parallel and assume a mutually-confirmative connotation. On the one hand, we survey 162 developers of the 9 considered systems to investigate whether developers perceive relationship between community smells and the code smells found in those projects. On the other hand, we perform a fine-grained analysis into the 117 releases of our dataset to measure the extent to which community smells impact code smell intensity (i.e., criticality). We then propose a code smell intensity prediction model that relies on both technical and community-related aspects. The results of both sides of our mixed-methods study lead to one conclusion: community-related factors contribute to the intensity of code smells. This conclusion supports the joint use of community and code smells detection as a mechanism for the joint management of technical and social problems around software development communities.
Original languageEnglish
Article number8546762
Pages (from-to)108-129
Number of pages22
JournalIEEE Transactions on Software Engineering
Volume47
Issue number1
Early online date2020
DOIs
Publication statusPublished - 10 Jan 2021

Keywords

  • Code smells
  • Convergence
  • Feature extraction
  • Open source software
  • Predictive models
  • Software engineering
  • Tools
  • community smells
  • mixed-methods study
  • organizational structure

Fingerprint

Dive into the research topics of 'Beyond technical aspects: how do community smells influence the intensity of code smells?'. Together they form a unique fingerprint.

Cite this