Agile methodology is an iterative approach typically used in software development as an alternative to the traditional project management. The approach emphasises on building the software incrementally from the beginning instead of delivering everything at the end, and solutions and requirements evolve sequentially. Product is broken down into incremental builds which are provided in iterations. Each iteration lasts typically almost one to three weeks, and requires cross functional teams to work together in different areas such as requirement analysis, planning, coding and testing. After each iteration, a working software build is delivered and working product is shown to all the important stakeholders, including customers. The builds are incremental and the final build consists of all the required features.
In agile model, each project is handled differently, and methods are tailored so that they best suit the requirements of the project. Some of the most popular agile methods include
• Scrum
• Rational Unified Process
• Extreme Programming
• Crystal Clear
• Feature Driven Development
• Adaptive Software Development
• Dynamic Systems Development Method (DSDM)
Pros of Agile …show more content…
There is frequent delivery of software, and a lot of emphasis is placed on the face-to-face interactions across teams. There is daily coordination between the developers and business personnel to achieve good design and technical excellence. This makes it much faster to adapt easily and regularly to the changing circumstances, even if these changes are much later in the software lifecycle. As the frequency of new increments is high, the changes can be implemented with minimal cost and