Agile methodologies were developed to support incremental and iterative development in environments where requirements frequently change. There are several agile methods like Scrum, Extreme Programming, Crystal Methods, and Dynamic Systems Development Method that differ in their specific focus but share common principles. The core goal of agile is to deliver working software rapidly through short development cycles, continuous improvement, and client feedback to adapt to changing needs.
Agile methodologies were developed to support incremental and iterative development in environments where requirements frequently change. There are several agile methods like Scrum, Extreme Programming, Crystal Methods, and Dynamic Systems Development Method that differ in their specific focus but share common principles. The core goal of agile is to deliver working software rapidly through short development cycles, continuous improvement, and client feedback to adapt to changing needs.
Agile methodologies were developed to support incremental and iterative development in environments where requirements frequently change. There are several agile methods like Scrum, Extreme Programming, Crystal Methods, and Dynamic Systems Development Method that differ in their specific focus but share common principles. The core goal of agile is to deliver working software rapidly through short development cycles, continuous improvement, and client feedback to adapt to changing needs.
AGILE METHDOLIGIES effective team maintenance [5].
On the other hand,
A. Introduction focus of Scrum on iterative development and project management [6]. Dynamic System Development Agile is a method of software development which is supports RAD (Rapid Application Development) designed to support and manage incremental and [7], and Crystal method designed for the projects iterative business system development where specific in nature [8]. Agile Unified Process focus change occurs constantly. Agile uses different on high value activates like testing to meet customer techniques of software development to empower requirements. and enhance active customer support and team work. Agile is designed for the production of Table 2 Agile Methods working software rapidly, using customer feedback, learning and communication. Existing software Publication Method Name Focus techniques was adapted by agile to achieve these [9] ASD (Adaptive Adapt change goals [1]. Software quickly, Development) Continuous B. Background Learning Initially agile methods were called light weights to [6] SCRUM Iterative Development, distinguish from other methods. Because they did Project not include heavy documentation, specifications and Management long planning [2]. In 2001, a meeting of 17 [8] CD (Crystal Specific Project methodologist held to discuss a common theme of Method) their individual methodology. They made a [7] DSDM (Dynamic RAD (Rapid System Application manifesto and renamed light weights methods as Development Development) agile methods. The manifesto consists of twelve Method) principles and four values [3]. Fig.1 shows four [5] XP (Extreme Customer values of agile manifesto. Programming) Satisfaction, Effective Team Maintenance) [10] FDD (Feature Client Centric Driven Feature Set Development) [11] LD (Lean Optimize Development) Production, Minimize Waste, , Maximize Value [12] Agile UP High Value (Unified Process) Activities like Fig. 1 Four Values of Agile Manifesto Testing
Core Principles of Agile Methodology addresses the D. Summary
failure rate of system development. To accomplish Advancement of software development is due to that one should dare to commit resources and people more demanding business requirements. Agile came to pain and efforts associated with the change due to forward a light weight methodology to embrace execution of Agile Methodology [4]. changing environment requirements. Agile told us TABLE 1 about the importance of communication between Core Principles of Agile Methodology customer and developer. Agile methodologies ready and stick to embrace change every time. The simple Embrace Change Quality Work Assume Simplicity theme behind the Agile is customer should get Multiple Models Rapid Feedback Incremental working product as soon as possible and any change Change is welcome. Agile has different methodologies, set Travel Light Maximize Model with a Stakeholder Purpose of Principles and Rules. Each component has specific services but the main motive always Enabling the next Software is your Face to Face effort is your primary goal Interaction remains the same. Agile is not suitable when secondary goal communication is difficult between customer and developer or when there are no experience C. Agile Methods developers in the team. In these cases, agile will not Although methods of agile share common theme, give best results. but their purpose is different. i.e. Extreme Agile is best suited when team consists of competent Programming designed for products where change and experienced developers and communication in environment occurs constantly. Other focuses of between customer and developer is string or when extreme programming are customer satisfaction and the budget and deadlines are tight. [1] D. Strode, "Agile methods: a comparative analysis," in Proceedings of the 19th annual conference of the national advisory committee on computing qualifications, NACCQ, 2006, pp. 257-264. [2] I. Jacobson, G. Booch, and J. Rumbaugh, The unified software development process: Addison-Wesley Longman Publishing Co., Inc., 1999. [3] K. Beck, M. Beedle, A. Van Bennekum, A. Cockburn, W. Cunningham, M. Fowler, et al., "Manifesto for agile software development," 2001. [4] S. Ambler, "Agile Modeling (AM) Home Page Effective Practices for Modeling and Documentation. 2013," ed, 2013. [5] K. Beck, Extreme programming explained: embrace change: addison-wesley professional, 2000. [6] K. Schwaber and M. Beedle, Agile software development with Scrum vol. 1: Prentice Hall Upper Saddle River, 2002. [7] J. Stapleton, DSDM, dynamic systems development method: the method in practice: Cambridge University Press, 1997. [8] A. Cockburn, Surviving object-oriented projects: a manager's guide: Addison-Wesley Longman Publishing Co., Inc., 1998. [9] J. Highsmith, Adaptive software development: a collaborative approach to managing complex systems: Addison-Wesley, 2013. [10] S. R. Palmer and M. Felsing, A practical guide to feature-driven development: Pearson Education, 2001. [11] R. N. Charette, "Foundations of Lean Development: The Lean Development manager's guide (Vol. 2)," Spotsylvania, Va.: ITABHI Corporation, 2002. [12] C. Edeki, "Agile unified process," International Journal of Computer Science, vol. 1, pp. 13-17, 2013.