User participation in software development projects

  • Authors:
  • Ramanath Subramanyam;Fei Lee Weisstein;M. S. Krishnan

  • Affiliations:
  • University of Illinois at Urbana-Champaign;The University of Texas - Pan American;University of Michigan, Ann Arbor, MI

  • Venue:
  • Communications of the ACM
  • Year:
  • 2010

Quantified Score

Hi-index 48.22

Visualization

Abstract

Introduction It is commonly acknowledged that success in IT projects is difficult to achieve. A recent industry survey observed that only 34% of IT projects were considered successful. Of the several potential factors contributing to this hard-to-achieve success, user involvement was noted as the most important one. Consistent with this notion, both researchers and practitioners have viewed user participation as an important way of improving software quality and increasing user satisfaction and acceptance. Users/customers are often encouraged to participate and directly communicate with developers in the software development process. On the other hand, empirical evidence shows that user participation in the development process can negatively influence project performance since it could make the process more difficult, lengthy, and less effective. Such contradictory findings raise the question of when user participation is actually helpful and when it might negatively impact project performance. Previous research tells only one side of the story since it has examined user participation or project performance by focusing primarily on user viewpoints. The findings give an incomplete picture since they have not thoroughly addressed developer viewpoints. Clearly, there is a need to investigate software project success from the perspective of developers given that not only are they at the core of development process but they also represent the largest single cost in software development. Developer satisfaction is imperative for systems development success. Dissatisfied developers would adversely affect the quality of software as well as the productivity of development teams. A high rate of developer turnover in projects (due to dissatisfaction) could lead to increasing costs for development firms as well as high user/customer dissatisfaction. Due to the differences in background and circumstance, developers and users often share different and sometimes conflicting interests during software development. Researchers have identified a large gap in perceptions and definitions of project success between developers and the software industry (for example, users/customers). For example, developers tend to be achievement-oriented and are intrinsically motivated to develop excellent software, while users/ customers emphasis more on meeting a schedule or maintaining a budget. Thus, the potential conflicting interests between users and developers might negatively affect the software development performance. This article addresses the question of the relative effectiveness of user participation by empirically examining the perceived software project performance (for example, satisfaction) from both user and developer perspectives simultaneously. We used survey data from 117 software development projects and 746 respondents at a large Fortune 100 manufacturing firm during a four-year time period to investigate the impact of user participation on the satisfaction of both developers and users. Our findings offer insights into the impact of user participation on generating higher levels of developer and user satisfaction and, at the same time, minimizing the perception gap between users and developers on project performance. In addition, we also study the role of software complexity (for example, whether projects involve new software development as opposed to maintenance of existing software) in user participation and its effect on satisfaction. Questionnaire data was collected from 453 software developers and 293 users/customers working on 117 software projects (for details of the data collection process, see the sidebar "How the Survey was Conducted"). The average number of developer survey respondents per project (for example, team) was four and the average number of user/customer respondents per project was three. Our analysis was performed at project level, and satisfaction scores for developers and users were averaged for each project. Of the 117 software development projects, 45 (39% of our sample) were maintenance projects and 72 (61%) were new development projects. The average software development time of the 117 software projects was 126 days. Figure 1 outlines the project characteristics in our sample. The most common business domain for our software projects was the manufacturing and supply chain (41 projects, 35%) and most of the projects were Web-based applications (78 projects, 66%).