Comparative Study on Agile software development methodologies

Today-s business environment is very much dynamic, and organisations are constantly changing their software requirements to adjust with new environment. They also demand for fast delivery of software products as well as for accepting changing requirements. In this aspect, traditional plan-driven developments fail to meet up these requirements. Though traditional software development methodologies, such as life cycle-based structured and object oriented approaches, continue to dominate the systems development few decades and much research has done in traditional methodologies, Agile software development brings its own set of novel challenges that must be addressed to satisfy the customer through early and continuous delivery of the valuable software. It is a set of software development methods based on iterative and incremental development process, where requirements and development evolve through collaboration between self-organizing, cross-functional teams that allows rapid delivery of high quality software to meet customer needs and also accommodate changes in the requirements. In this paper, we significantly identify and describe the major factors, that Agile development approach improves software development process to meet the rapid changing business environments. We also provide a brief comparison of agile development methodologies with traditional systems development methodologies, and discuss current state of adopting agile methodologies. We speculate that from the need to satisfy the customer through early and continuous delivery of the valuable software, Agile software development is emerged as an alternative to traditional plan-based software development methods. The purpose of this paper, is to provide an in-depth understanding, the major benefits of agile development approach to software development industry, as well as provide a comparison study report of ASDM over TSDM.

[1]  Waldemar Karwowski,et al.  A review of enterprise agility: Concepts, frameworks, and attributes , 2007 .

[2]  Bernhard Rumpe,et al.  Assumptions Underlying Agile Software-Development Processes , 2005, J. Database Manag..

[3]  Ali Mohsenzadeh,et al.  The impact of agile methods on software project management , 2005, 12th IEEE International Conference and Workshops on the Engineering of Computer-Based Systems (ECBS'05).

[4]  Robert K. Wysocki,et al.  Effective Project Management: Traditional, Adaptive, Extreme , 2000 .

[5]  Steve R. Palmer,et al.  A Practical Guide to Feature-Driven Development , 2002 .

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

[7]  B. Bahli,et al.  The role of knowledge creation in adopting extreme programming model: an empirical study , 2005, 2005 International Conference on Information and Communication Technology.

[8]  Sri Lanka,et al.  Enhanced Agile Software Development - Hybrid Paradigm with LEAN Practice , 2007 .

[9]  Radhika Jain,et al.  Agile Software Development: Adaptive Systems Principles and Best Practices , 2006, Inf. Syst. Manag..

[10]  Sridhar P. Nerur,et al.  Can Agile and Traditional Systems Development Approaches Coexist? An Ambidextrous View , 2006, Inf. Syst. Manag..

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

[12]  G.I.U.S. Perera,et al.  Enhanced agile software development — hybrid paradigm with LEAN practice , 2007, 2007 International Conference on Industrial and Information Systems.

[13]  Donald J. Reifer,et al.  How good are agile methods? , 2002, IEEE Software.

[14]  Laurie A. Williams,et al.  Agile software development: it's about feedback and change , 2003, Computer.

[15]  Barry W. Boehm,et al.  Management challenges to implementing agile processes in traditional development organizations , 2005, IEEE Software.

[16]  Victor R. Basili,et al.  Iterative and incremental developments. a brief history , 2003, Computer.

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

[18]  David H. Olsen,et al.  An exploratory study on issues and challenges of agile software development with scrum , 2008 .

[19]  Julien Lemétayer,et al.  Identifying the Critical Factors in Software Development Methodology Fit , 2010 .

[20]  Barry W. Boehm,et al.  Balancing agility and discipline: evaluating and integrating agile and plan-driven methods , 2004, Proceedings. 26th International Conference on Software Engineering.

[21]  Alistair Cockburn,et al.  Agile Software Development: The Business of Innovation , 2001, Computer.

[22]  Peter Constable,et al.  DSDM: Dynamic Systems Development Method: The Method in Practice , 1997 .

[23]  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..

[24]  Des Greer,et al.  Software release planning: an evolutionary and iterative approach , 2004, Inf. Softw. Technol..

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

[26]  Asha Garg Agile Software Development , 2009 .

[27]  Jim Highsmith,et al.  Agile Software Development Ecosystems , 2002 .

[28]  Barry W. Boehm,et al.  Understanding and Controlling Software Costs , 1988, IEEE Trans. Software Eng..

[29]  Pekka Abrahamsson,et al.  New directions on agile methods: a comparative analysis , 2003, 25th International Conference on Software Engineering, 2003. Proceedings..

[30]  Magne Jørgensen,et al.  A comparison of software project overruns - flexible versus sequential development models , 2005, IEEE Transactions on Software Engineering.

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

[32]  Kenneth H. Rose Pmp Reviewer Effective project management: Traditional, agile, extreme, fifth edition , 2010 .

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

[34]  Agile Manifesto,et al.  Manifesto for Agile Software Development , 2001 .

[35]  Victor R. Basili,et al.  Iterative enhancement: A practical technique for software development , 1975, IEEE Transactions on Software Engineering.

[36]  Pekka Abrahamsson,et al.  The impact of agile practices on communication in software development , 2008, Empirical Software Engineering.

[37]  Dean Leffingwell,et al.  Agile Software Requirements: Lean Requirements Practices for Teams, Programs, and the Enterprise , 2011 .

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

[39]  Jeffrey A. Livermore,et al.  Factors that Significantly Impact the Implementation of an Agile Software Development Methodology , 2008, J. Softw..

[40]  Tore Dybå,et al.  What Do We Know about Agile Software Development? , 2009, IEEE Software.

[41]  Pekka Abrahamsson,et al.  Agile methods in European embedded software development organisations: a survey on the actual use and usefulness of Extreme Programming and Scrum , 2008, IET Softw..

[42]  A. Cockburn,et al.  Agile Software Development: The People Factor , 2001, Computer.

[43]  Bill Curtis Three Problems Overcome with Behavioral Models of the Software Development Process , 1989, ICSE.

[44]  Barry W. Boehm,et al.  Using Risk to Balance Agile and Plan-Driven Methods , 2003, Computer.

[45]  Barry W. Boehm,et al.  Empirical Findings in Agile Methods , 2002, XP/Agile Universe.

[46]  Barry W. Boehm,et al.  Agility through Discipline: A Debate , 2003, Computer.

[47]  Hubert Smits,et al.  5 Levels of Agile Planning: From Enterprise Product Vision to Team Stand-up , 2006 .

[48]  Barry W. Boehm,et al.  Balancing Plan-Driven and Agile Methods in Software Engineering Project Courses , 2002, Comput. Sci. Educ..

[49]  Claes Wohlin,et al.  A comparison of issues and advantages in agile and incremental development between state of the art and an industrial case , 2009, J. Syst. Softw..

[50]  Pekka Abrahamsson,et al.  An iterative improvement process for agile software development , 2007, Softw. Process. Improv. Pract..

[51]  Olga Botero,et al.  Project management Methodologies , 2010 .

[52]  Aldo Dagnino,et al.  An evolutionary lifecycle model with Agile practices for software development at ABB , 2002, Eighth IEEE International Conference on Engineering of Complex Computer Systems, 2002. Proceedings..

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

[54]  Jim Highsmith The great methodologies debate: Part 1 , 2001 .

[55]  Alan S. Koch,et al.  Agile Software Development: Evaluating the Methods for Your Organization , 2004 .