Structural Complexity and Programmer Team Strategy: An Experimental Test
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.
ObjectOriented Programming, Complexity Measures, Software Quality, Programming Teams, Maintenance Process, Management
IEEE Transactions on Software Engineering
RAMASUBBU, Narayan; Kemerer, Chris F.; and HONG, Jeff Min Teck.
Structural Complexity and Programmer Team Strategy: An Experimental Test. (2011). IEEE Transactions on Software Engineering. 38, (5), 1054-1068. Research Collection School Of Information Systems.
Available at: http://ink.library.smu.edu.sg/sis_research/1469