Extending Agile Principles to Larger, Dynamic Software Projects: A Theoretical Assessment

Extending Agile Principles to Larger, Dynamic Software Projects: A Theoretical Assessment

Dinesh Batra (Florida International University, USA), Debra VanderMeer (Florida International University, USA) and Kaushik Dutta (National University of Singapore, Singapore)
Copyright: © 2011 |Pages: 20
DOI: 10.4018/jdm.2011100104
OnDemand PDF Download:
$30.00
List Price: $37.50

Abstract

The article evaluates the feasibility of extending agile principles to larger, dynamic, and possibly distributed software development projects by uncovering the theoretical basis for agile values and principles for achieving agility. The extant literature focuses mainly on one theory – complex adaptive systems – to support agile methods, although recent research indicates that the control theory and the adaptive structuration theory are also applicable. This article proposes that at least three other theories exist that are highly relevant: transaction cost economics, social exchange theory, and expectancy theory. By employing these theories, a rigorous analysis of the Agile Manifesto is conducted. Certain agile values and principles find theoretical support and can be applied to enhance agility dynamic projects regardless of size; some agile principles find no theoretical support while others find limited support. Based on the analysis and the ensuing discussion, the authors propose a framework with five dimensions of agility: process, design, people, outcomes, and adaptation.
Article Preview

Introduction

As business and technology environments change at an unprecedented rate, software development agility to respond to changing user requirements has become increasingly critical for software development performance (Lee & Xia, 2010). Software development agility is the ability of an information system development (ISD) method to create change, or proactively, reactively, or inherently embrace change in a timely manner, through its internal components and relationships with its environment (Conboy, 2009). Agility is an organization’s ability to sense and respond swiftly to technical changes and new business opportunities (Lyytinen & Rose, 2006). At its core, agility means to strip away as much of the heaviness, commonly associated with traditional software-development methodologies, as possible to promote quick response to changing environments, changes in user requirements, and accelerated project deadlines (Erickson, Lyytinen, & Siau, 2005). In response to the need for agility, lightweight agile software development methods have emerged as alternatives to process-heavy plan-based methodologies as organizations seek to deliver software more quickly (Abrahamsson, Conboy, & Wang, 2009), while simultaneously ensuring that the delivered software is of high quality and is closely aligned to the needs of the customer (Larman, 2003).

The call for such methods arose in 2001, with the publication of the Agile Manifesto (http://agilemanifesto.org/sign/display.cgi), while a 2008 survey by Dr. Dobb’s Digest suggests that up to 69% of responding organizations have adopted agile methods in some form, from pilot projects to full deployment of agile methods, and that respondents believe that their use of agile methods result in higher quality deliverables, more productive developers, and more satisfied stakeholders (Ambler, 2008).

Complete Article List

Search this Journal:
Reset
Open Access Articles
Volume 28: 4 Issues (2017): 3 Released, 1 Forthcoming
Volume 27: 4 Issues (2016)
Volume 26: 4 Issues (2015)
Volume 25: 4 Issues (2014)
Volume 24: 4 Issues (2013)
Volume 23: 4 Issues (2012)
Volume 22: 4 Issues (2011)
Volume 21: 4 Issues (2010)
Volume 20: 4 Issues (2009)
Volume 19: 4 Issues (2008)
Volume 18: 4 Issues (2007)
Volume 17: 4 Issues (2006)
Volume 16: 4 Issues (2005)
Volume 15: 4 Issues (2004)
Volume 14: 4 Issues (2003)
Volume 13: 4 Issues (2002)
Volume 12: 4 Issues (2001)
Volume 11: 4 Issues (2000)
Volume 10: 4 Issues (1999)
Volume 9: 4 Issues (1998)
Volume 8: 4 Issues (1997)
Volume 7: 4 Issues (1996)
Volume 6: 4 Issues (1995)
Volume 5: 4 Issues (1994)
Volume 4: 4 Issues (1993)
Volume 3: 4 Issues (1992)
Volume 2: 4 Issues (1991)
Volume 1: 2 Issues (1990)
View Complete Journal Contents Listing