Software Development Practices, Software Complexity, and Software Maintenance Performance: A Field Study

Rajiv D. Banker, Gordon B. Davis, Sandra A. Slaughter
1998 Management science  
_____________________________________________________________ Software maintenance claims a large proportion of organizational resources. It is thought that many maintenance problems derive from inadequate software design and development practices. Poor design choices can result in complex software that is costly to support and difficult to change. However, it is difficult to assess the actual maintenance performance effects of software development practices because their impact is realized
more » ... the software life cycle. To estimate the impact of development activities in a more practical time frame, this research develops a two stage model in which software complexity is a key intermediate variable that links design and development decisions to their downstream effects on software maintenance. The research analyzes data collected from a national mass merchandising retailer on twenty-nine software enhancement projects and twenty-three software applications in a large IBM COBOL environment. Results indicate that the use of a code generator in development is associated with increased software complexity and software enhancement project effort. The use of packaged software is associated with decreased software complexity and software enhancement effort. These results suggest an important link between software development practices and maintenance performance.
doi:10.1287/mnsc.44.4.433 fatcat:tgext2cwyrfhfcdfbd2hm6kq54