Categorization of risk factors for distributed agile projects

Abstract Context Organizations combine agile approach and Distributed Software Development (DSD) in order to develop better quality software solutions in lesser time and cost. It helps to reap the benefits of both agile and distributed development but pose significant challenges and risks. Relatively scanty evidence of research on the risks prevailing in distributed agile development (DAD) has motivated this study. Objective This paper aims at creating a comprehensive set of risk factors that affect the performance of distributed agile development projects and identifies the risk management methods which are frequently used in practice for controlling those risks. Method The study is an exploration of practitioners’ experience using constant comparison method for analyzing in-depth interviews of thirteen practitioners and work documents of twenty-eight projects from thirteen different information technology (IT) organizations. The field experience was supported by extensive research literature on risk management in traditional, agile and distributed development. Results Analysis of qualitative data from interviews and project work documents resulted into categorization of forty-five DAD risk factors grouped under five core risk categories. The risk categories were mapped to Leavitt’s model of organizational change for facilitating the implementation of results in real world. The risk factors could be attributed to the conflicting properties of DSD and agile development. Besides that, some new risk factors have been experienced by practitioners and need further exploration as their understanding will help the practitioners to act on time. Conclusion Organizations are adopting DAD for developing solutions that caters to the changing business needs, while utilizing the global talent. Conflicting properties of DSD and agile approach pose several risks for DAD. This study gives a comprehensive categorization of the risks faced by the practitioners in managing DAD projects and presents frequently used methods to reduce their impact. The work fills the yawning research void in this field.

[1]  Steffan Surdek,et al.  A Practical Guide to Distributed Scrum , 2010 .

[2]  Daniela E. Damian,et al.  Guest Editors' Introduction: Global Software Development: How Far Have We Come? , 2006, IEEE Software.

[3]  Claes Wohlin,et al.  Agile Practices in Global Software Engineering - A Systematic Map , 2010, 2010 5th IEEE International Conference on Global Software Engineering.

[4]  Catherine C. Marshall,et al.  Designing Qualitative Research , 1996 .

[5]  Suprateek Sarker,et al.  Implications of space and time for distributed work: an interpretive study of US–Norwegian systems development teams , 2004, Eur. J. Inf. Syst..

[6]  Donald R. Cooper,et al.  Business Research Methods , 1980 .

[7]  James Schiel The ScrumMaster Study Guide , 2011 .

[8]  Brian S. Drummond,et al.  Yahoo! Distributed Agile: Notes from the World Over , 2008, Agile 2008 Conference.

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

[10]  P. Atkinson,et al.  Making sense of qualitative data , 1996 .

[11]  Claes Wohlin,et al.  A Whisper of Evidence in Global Software Engineering , 2011, IEEE Software.

[12]  George Mangalaraj,et al.  Challenges of migrating to agile methodologies , 2005, CACM.

[13]  Tore Dybå,et al.  Empirical studies of agile software development: A systematic review , 2008, Inf. Softw. Technol..

[14]  Daniela E. Damian,et al.  The impact of stakeholders' geographical distribution on managing requirements in a multi-site organization , 2002, Proceedings IEEE Joint International Conference on Requirements Engineering.

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

[16]  Mario Piattini,et al.  Challenges and Improvements in Distributed Software Development: A Systematic Review , 2009, Adv. Softw. Eng..

[17]  Mira Kajko-Mattsson,et al.  Outlining a Model Integrating Risk Management and Agile Software Development , 2008, 2008 34th Euromicro Conference Software Engineering and Advanced Applications.

[18]  J. Vanthienen,et al.  A general framework for positioning, evaluating and selecting the new generation of development tools , 1996, Proceedings of EUROMICRO 96. 22nd Euromicro Conference. Beyond 2000: Hardware and Software Design Strategies.

[19]  Yan Ki Fiona Cheung,et al.  Stakeholder management through empowerment: modelling project success , 2008 .

[20]  Pekka Abrahamsson,et al.  Digging into the fundamentals of extreme programming building the theoretical base for agile methods , 2003, 2003 Proceedings 29th Euromicro Conference.

[21]  Sundeep Sahay,et al.  Managing cross-cultural issues in global software outsourcing , 2004, CACM.

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

[23]  J.M. Robarts Practical Considerations for Distributed Agile Projects , 2008, Agile 2008 Conference.

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

[25]  Fabio Q. B. da Silva,et al.  Challenges and solutions in distributed software development project management: A systematic literature review , 2010, 2010 5th IEEE International Conference on Global Software Engineering.

[26]  Teresa Franklin Adventures in Agile Contracting: Evolving from Time and Materials to Fixed Price, Fixed Scope Contracts , 2008, Agile 2008 Conference.

[27]  Peter G. W. Keen,et al.  Information systems and organizational change , 1990, CACM.

[28]  Kalle Lyytinen,et al.  Attention Shaping and Software Risk - A Categorical Analysis of Four Classical Risk Management Approaches , 1998, Inf. Syst. Res..

[29]  Pär J. Ågerfalk,et al.  Exploring the Assumed Benefits of Global Software Development , 2006, 2006 IEEE International Conference on Global Software Engineering (ICGSE'06).

[30]  Mika Mäntylä,et al.  A tool supporting root cause analysis for synchronous retrospectives in distributed software teams , 2014, Inf. Softw. Technol..

[31]  Rafael Prikladnicki,et al.  A Reference Model for Global Software Development: Findings from a Case Study , 2006, 2006 IEEE International Conference on Global Software Engineering (ICGSE'06).

[32]  Rashmi Phalnikar,et al.  Applying Agile Principles for Distributed Software Development , 2009, 2009 International Conference on Advanced Computer Control.

[33]  James D. Herbsleb,et al.  Guest Editors' Introduction: Global Software Development , 2001, IEEE Softw..

[34]  Todd Little,et al.  Context-adaptive agility: managing complexity and uncertainty , 2005, IEEE Software.

[35]  C. Ravindranath Pandian,et al.  Applied Software Risk Management: A Guide for Software Project Managers , 2006 .

[36]  James Noble,et al.  Supporting Self-organizing Agile Teams - What's Senior Management Got to Do with It? , 2011, XP.

[37]  Jeff Sutherland,et al.  Fully Distributed Scrum: The Secret Sauce for Hyperproductive Offshored Development Teams , 2008, Agile 2008 Conference.

[38]  Subhankar Dhar,et al.  Risks, Benefits, and Challenges in Global IT Outsourcing: Perspectives and Practices , 2006, J. Glob. Inf. Manag..

[39]  Peng Xu,et al.  Can distributed software development be agile? , 2006, CACM.

[40]  Casper Lassenius,et al.  Using Scrum in Distributed Agile Development: A Multiple Case Study , 2009, 2009 Fourth IEEE International Conference on Global Software Engineering.

[41]  Carl Gutwin,et al.  Group awareness in distributed software development , 2004, CSCW.

[42]  Daniela E. Damian,et al.  Essential communication practices for Extreme Programming in a global software development team , 2006, Inf. Softw. Technol..

[43]  Casper Lassenius,et al.  Distributed Agile Development: Using Scrum in a Large Project , 2008, ICGSE 2008.

[44]  Stewart Clegg,et al.  Political Hybrids: Tocquevillean Views on Project Organizations , 2004 .

[45]  Carolyn B. Seaman,et al.  Qualitative Methods in Empirical Studies of Software Engineering , 1999, IEEE Trans. Software Eng..

[46]  Neil A. M. Maiden,et al.  Towards a Framework for Integrating Agile Development and User-Centred Design , 2006, XP.

[47]  Lars Mathiassen,et al.  Managing Risks in Distributed Software Projects: An Integrative Framework , 2009, IEEE Transactions on Engineering Management.

[48]  Johanna Rothman,et al.  Lessons Learned from Leading Workshops about Geographically Distributed Agile Teams , 2013, IEEE Software.

[49]  Sanjiv Augustine,et al.  Managing Agile Projects , 2005 .

[50]  Kalpana Sureshchandra,et al.  Adopting Agile in Distributed Development , 2008, 2008 IEEE International Conference on Global Software Engineering.

[51]  Alistair Cockburn,et al.  Agile Software Development , 2001 .

[52]  Mira Kajko-Mattsson,et al.  Classes of Distributed Agile Development Problems , 2010, 2010 Agile Conference.

[53]  M. Patton Qualitative research and evaluation methods , 1980 .

[54]  Roger S. Pressman,et al.  Software Engineering: A Practitioner's Approach , 1982 .

[55]  R. Yin Case Study Research: Design and Methods , 1984 .

[56]  Michel R. V. Chaudron,et al.  A Survey of the Practice of Design -- Code Correspondence amongst Professional Software Engineers , 2007, ESEM 2007.

[57]  Kent L. Beck,et al.  Embracing Change with Extreme Programming , 1999, Computer.

[58]  Craig Larman,et al.  Scaling Lean & Agile Development: Thinking and Organizational Tools for Large-Scale Scrum , 2008 .

[59]  W. Burke Organization Change: Theory and Practice , 2002 .

[60]  Hye-Young Paik,et al.  Risk Identification and Mitigation Processes for Using Scrum in Global Software Development: A Conceptual Framework , 2009, 2009 16th Asia-Pacific Software Engineering Conference.

[61]  Kalle Lyytinen,et al.  Identifying Software Project Risks: An International Delphi Study , 2001, J. Manag. Inf. Syst..

[62]  Elaine Therrien Overcoming the Challenges of Building a Distributed Agile Organization , 2008, Agile 2008 Conference.

[63]  Glenn A. Bowen Document Analysis as a Qualitative Research Method , 2009 .

[64]  W. Richard Scott Organizations: Rational, Natural, and Open Systems , 1981 .

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

[66]  Jeff Patton Unfixing the fixed scope project: using agile methodologies to create flexibility in project scope , 2003, Proceedings of the Agile Development Conference, 2003. ADC 2003.

[67]  Mike Cohn,et al.  User Stories Applied: For Agile Software Development , 2004 .

[68]  J. Maxwell Understanding and Validity in Qualitative Research , 1992 .

[69]  Dean Leffingwell,et al.  Scaling Software Agility: Best Practices for Large Enterprises (The Agile Software Development Series) , 2007 .

[70]  James D. Herbsleb,et al.  Global Software Engineering: The Future of Socio-technical Coordination , 2007, Future of Software Engineering (FOSE '07).

[71]  J. Fereday,et al.  Demonstrating Rigor Using Thematic Analysis: A Hybrid Approach of Inductive and Deductive Coding and Theme Development , 2006 .

[72]  Shane Warden,et al.  The art of agile development , 2007 .

[73]  G. Stoneburner,et al.  Risk Management Guide for Information Technology Systems: Recommendations of the National Institute of Standards and Technology , 2002 .

[74]  Frank Maurer,et al.  Requirements engineering and agile software development , 2003, WET ICE 2003. Proceedings. Twelfth IEEE International Workshops on Enabling Technologies: Infrastructure for Collaborative Enterprises, 2003..

[75]  Mira Kajko-Mattsson,et al.  Long-term Life Cycle Impact of Agile Methodologies , 2006, 2006 22nd IEEE International Conference on Software Maintenance.

[76]  Bikram Sengupta,et al.  A research agenda for distributed software development , 2006, ICSE.

[77]  Mike Cohn,et al.  Succeeding with Agile: Software Development Using Scrum , 2009 .

[78]  Mike Cottmeyer The Good and Bad of Agile Offshore Development , 2008, Agile 2008 Conference.

[79]  Michael A. Cusumano Managing software development in globally distributed teams , 2008, CACM.

[80]  Daniela E. Damian,et al.  Patterns of Evolution in the Practice of Distributed Software Development in Wholly Owned Subsidiaries: A Preliminary Capability Model , 2008, 2008 IEEE International Conference on Global Software Engineering.

[81]  Reiner R. Dumke,et al.  Software Metrics for Agile Software Development , 2008 .

[82]  One-Ki Daniel Lee,et al.  A New Perspective on GDSD Risk Management: Agile Risk Management , 2010, 2010 5th IEEE International Conference on Global Software Engineering.

[83]  Kevin C. Desouza,et al.  A dimensional analysis of geographically distributed project teams: A case study , 2004 .

[84]  Sachidanandam Sakthivel,et al.  Virtual workgroups in offshore systems development , 2005, Inf. Softw. Technol..

[85]  Habib Sedehi,et al.  Metrics to Evaluate & Monitor Agile Based Software Development Projects - A Fuzzy Logic Approach , 2012, 2012 Joint Conference of the 22nd International Workshop on Software Measurement and the 2012 Seventh International Conference on Software Process and Product Measurement.

[86]  Tore Dybå,et al.  Challenges of shared decision-making: A multiple case study of agile software development , 2012, Inf. Softw. Technol..

[87]  Laurie A. Williams,et al.  Sangam: a distributed pair programming plug-in for Eclipse , 2004, eclipse '04.

[88]  Andrew Begel,et al.  Usage and Perceptions of Agile Software Development in an Industrial Context: An Exploratory Study , 2007, ESEM 2007.

[89]  Ken H. Judy,et al.  Great Scrums Need Great Product Owners: Unbounded Collaboration  and Collective Product Ownership , 2008, Proceedings of the 41st Annual Hawaii International Conference on System Sciences (HICSS 2008).