Modified agile practices for outsourced software projects

Frustration with the bureaucratic nature of the disciplined approach has led to the call for agile development. The new approach is defined by the Agile Manifesto (http://agilemanifesto.org/), which values individuals and interactions over processes and tools, working software over comprehensive documentation, customer collaboration over contract negotiation, and agility in responding to change over following a prescribed plan. Agile development does not focus on process improvement; instead it focuses on customer satisfaction and employee empowerment. This is evident from reading the stated values and principles of the Agile Manifesto, which include fairly extreme positions such as "welcome changing requirements, even late in development" and "the best architectures, requirements, and designs emerge from self-organizing teams." An interesting issue arising from the call for agile development is its role in distributed development, which usually translates to offshore development. A recent study indicates that agile practices can reduce temporal, geographical, and socio-cultural distances in distributed development projects. The study researched agile development between teams located in the U.S. and Ireland, and while it reported that overall communication was improved, it also noted problems related to geographical, temporal, and even language distances. Although there are other reported successes of distributed agile development, the projects are generally small, the team members are likely familiar with each other, and the participants are largely experts or high caliber developers. This raises a research, as well as a practical, question: can we extend the use of agile practices from small projects to medium and large projects that involve a significant outsourcing component? To address this question, we must drop constraints such as small size projects, and expert developers belonging to the same company, and examine problems arising from geographical, temporal, and cultural distances. Accordingly, agile practices may need to be modified. In this article, the key issues of software projects with an outsourced component are first identified. These issues are then used as a background to evaluate how standard agile practices stand up when applied to larger projects. This evaluation is followed by recommendations for modified agile practices for outsourced software projects.

[1]  James A. Highsmith,et al.  Adaptive Software Development: A Collaborative Approach to Managing Complex Systems , 1999 .

[2]  Larry A. Samovar,et al.  Communication Between Cultures , 1991 .

[3]  Kent L. Beck,et al.  Extreme programming explained - embrace change , 1990 .

[4]  D. Boden The Business of Talk: Organizations in Action , 1995 .

[5]  Ken Schwaber,et al.  Agile Software Development with SCRUM , 2001 .

[6]  Sundeep Sahay Global software alliances: The Challenge of 'Standardization' , 2003, Scand. J. Inf. Syst..

[7]  Barry Boehm,et al.  Balancing Agility and Dis-cipline: A Guide for the Perplexed , 2003 .

[8]  Judith S. Olson,et al.  Culture Surprises in Remote Software Development Teams , 2003, ACM Queue.

[9]  Ronald N. Ashkenas,et al.  The boundaryless organization : breaking the chains of organizational structure , 1995 .

[10]  Barry W. Boehm,et al.  Get Ready for Agile Methods, with Care , 2002, Computer.

[11]  H. Simon,et al.  The Proverbs of Administration , 1946 .

[12]  Douglas Brown,et al.  The Black Book of Outsourcing: How to Manage the Changes, Challenges, and Opportunities , 2005 .

[13]  Ken Auer,et al.  Extreme Programming Applied: Playing to Win , 2001 .

[14]  Linda Cohen,et al.  Multisourcing: Moving Beyond Outsourcing to Achieve Growth And Agility , 2005 .

[15]  Pär J. Ågerfalk,et al.  Agile Practices Reduce Distance in Global Software Development , 2006, Inf. Syst. Manag..

[16]  Ken Coar The Sun Never Sits on Distributed Development , 2003, ACM Queue.

[17]  Michael Kircher,et al.  Distributed eXtreme Programming , 2001 .

[18]  Philip B. Crosby,et al.  Quality Is Free: The Art of Making Quality Certain , 1979 .

[19]  Alistair Cockburn,et al.  Crystal Clear: A Human-Powered Methodology for Small Teams , 2004 .

[20]  Audris Mockus,et al.  An Empirical Study of Speed and Communication in Globally Distributed Software Development , 2003, IEEE Trans. Software Eng..

[21]  William E. Hefley,et al.  The People Capability Maturity Model : guidelines for improving the workforce , 2002 .

[22]  Joann Keyton,et al.  Communication and Organizational Culture: A Key to Understanding Work Experiences , 2004 .

[23]  Jack A. Nickerson,et al.  A Knowledge-based Theory of the Firm - A Problem-solving Perspective , 2004, Organ. Sci..

[24]  Steven B. Andrews,et al.  Power, Social Influence, and Sense Making: Effects of Network Centrality and Proximity on Employee Perceptions. , 1993 .

[25]  Kent Beck,et al.  Extreme Programming Explained: Embrace Change (2nd Edition) , 2004 .

[26]  Enid Mumford,et al.  Reengineering the Corporation: A Manifesto for Business Revolution , 1995 .

[27]  Craig Larman,et al.  Agile and Iterative Development: A Manager's Guide , 2003 .

[28]  W. Edwards Deming,et al.  Out of the Crisis , 1982 .

[29]  Joseph Moses Juran Juran on planning for quality , 1988 .

[30]  Richard Turner,et al.  CMMI Distilled: A Practical Introduction to Integrated Process Improvement , 2001 .