DocumentCode :
1307256
Title :
Structural Complexity and Programmer Team Strategy: An Experimental Test
Author :
Ramasubbu, Narayan ; Kemerer, Chris F. ; Hong, Jeff
Author_Institution :
Grad. Sch. of Bus., Univ. of Pittsburgh, Pittsburgh, PA, USA
Volume :
38
Issue :
5
fYear :
2012
Firstpage :
1054
Lastpage :
1068
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 strategically allocate maintenance tasks to either independent or collaborative programming teams depending on the structural complexity of software could lower their team´s maintenance effort by as much as 70 percent 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 :
computational complexity; object-oriented programming; resource allocation; software maintenance; collaborative programming teams; controlled lab experiment; distributed cognition; high-coupled programs; low-cohesive programs; object-oriented software; perceived ease-of-maintenance; perfective maintenance; professional programmers; programmer team strategy; resource allocation policies; significant interaction; software structure; structural complexity; task interdependence; Collaboration; Complexity theory; Couplings; Maintenance engineering; Programming profession; Software; CK metrics; Object-oriented programming; complexity measures; maintenance process; programming teams; software management; software productivity; software quality;
fLanguage :
English
Journal_Title :
Software Engineering, IEEE Transactions on
Publisher :
ieee
ISSN :
0098-5589
Type :
jour
DOI :
10.1109/TSE.2011.88
Filename :
5999673
Link To Document :
بازگشت