How Much Does Software Complexity Matter for Maintenance Productivity? The Link Between Team Instability and Diversity

Michel Benaroch, Kalle Lyytinen

Research output: Contribution to journalArticlepeer-review

Abstract

Software complexity decreases maintenance productivity, as do team attributes of instability and knowledge diversity. We know little about the extent to which the two team attributes interact with software complexity and shape productivity across systems of varying complexity. We address this gap by investigating whether and to what degree software complexity moderates the effects of team instability and knowledge diversity on maintenance productivity over the life of a system. We posit, given the exponential growth of code and task dependencies inherent in complex software systems, that system-level complexity has a significant nonlinear amplifying effect on the adverse effects of the two team attributes. To validate the presence of such an effect, we conduct a robust split-sample econometric analysis using three years of maintenance data from 426 mission-critical systems of a Fortune 100 company. The sampled systems vary in size (50KLOC to 2000KLOC, where 20% exceed 500KLOC), with a considerable portion of the sample manifesting 'high' to 'very high' software complexity. The analysis corroborates the known adverse effects of team instability, team knowledge diversity, and software complexity on maintenance productivity. More importantly, it shows - as theorized - that the adverse effects of the team attributes on maintenance productivity are significantly amplified only when software complexity grows high. We conclude with practical and research implications about how to manage software teams maintaining complex software over the life of a system.

Original languageEnglish (US)
Pages (from-to)2459-2475
Number of pages17
JournalIEEE Transactions on Software Engineering
Volume49
Issue number4
DOIs
StatePublished - Apr 1 2023

Keywords

  • Interaction effects
  • high software complexity
  • productivity
  • software complexity
  • software maintenance
  • team instability
  • team knowledge diversity

ASJC Scopus subject areas

  • Software

Fingerprint

Dive into the research topics of 'How Much Does Software Complexity Matter for Maintenance Productivity? The Link Between Team Instability and Diversity'. Together they form a unique fingerprint.

Cite this