Title

Structural Complexity and Programmer Team Strategy: An Experimental Test

Publication Type

Journal Article

Publication Date

2011

Abstract

This study develops and empirically tests the idea that the impact of structural complexity on perfective maintenance of object-oriented software is significantly determined by the team strategy of programmers (independent or collaborative). We analyzed two key dimensions of software structure, coupling and cohesion, with respect to the maintenance effort and the perceived ease-of-maintenance by pairs of programmers. Hypotheses based on the distributed cognition and task interdependence theoretical frameworks were tested using data collected from a controlled lab experiment employing professional programmers. The results show a significant interaction effect between coupling, cohesion, and programmer team strategy on both maintenance effort and perceived ease-of-maintenance. Highly cohesive and low-coupled programs required lower maintenance effort and were perceived to be easier to maintain than the low cohesive programs and high-coupled programs. Further, our results would predict that managers who allocate maintenance tasks to independent or collaborative programming teams depending on the structural complexity of software could lower their team’s maintenance effort by as much as 70% over managers who use simple uniform resource allocation policies. These results highlight the importance of achieving congruence between team strategies employed by collaborating programmers and the structural complexity of software.

Keywords

ObjectOriented Programming, Complexity Measures, Software Quality, Programming Teams, Maintenance Process, Management

Discipline

Software Engineering

Research Areas

Software Systems

Publication

IEEE Transactions on Software Engineering

Volume

38

Issue

5

First Page

1054

Last Page

1068

ISSN

0098-5589

Identifier

10.1109/TSE.2011.88

Publisher

IEEE

Additional URL

http://doi.ieeecomputersociety.org/10.1109/TSE.2011.88