Basic Principles and Benefits of the Agile Development Life Cycle
Before we dive into the Agile Development Life Cycle, it is important to understand that Agile is an approach to software development. This approach was developed to mitigate the risks associated with the traditional Waterfall model.
The basic premise that requirements are clear at beginning of a project is challenged in the agile approach. In reality, project requirements are unearthed, can change and may evolve over a project life Cycle. For vague requirements, the Agile approach to software development trumps the traditional Waterfall model, but in what ways?
The Agile approach is based on principles that have been extracted from the Agile Manifesto. For the complete list of principles, refer to Principles behind the Agile Manifesto. Briefly these principles are as follows:
It is the principles behind the Agile Manifesto that influence the life Cycle of Agile Development. For example, Principle 3 means that the life Cycle needs to deliver in an iterative manner. Similarly, Principle 7 means that the development should be incremental. Principles 2, 6, and 12 mean that there would be more meetings and proactive risk mitigation.
Now, let’s see how these principles are implemented in a typical Agile Development Life Cycle. I say “typical” because there are several Agile methodologies, such as SCRUM and XP (Extreme Programming).
In a typical Agile Development Life Cycle, the smallest item of work is called a story. Multiple stories may make a feature. Therefore, stories can be viewed as scope. Stories are delivered in a defined timeframe, which is known as an Iteration. Refer to the Agile Development Project Planning Considerations – Length of an Agile Iteration article for the key considerations for determining the iteration length.
Several Iterations make a Release. A project may have several releases. It is easier to understand with a visual. The following image shows the iterations within a release.
Each release starts with a team meeting in which stories from the backlog are assigned to iterations. This is known as a Release Kickoff. Similarly, there is an Iteration Kickoff. During an Iteration, there are daily stand-up meetings in which the team gives status and unidentified risks are unearthed.
After an Iteration is complete, the team holds an Iteration Retrospective. In this meeting, the team reflects on the Iteration and takes the lessons learned to the next Iteration. Similarly, there is a Release Retrospective.
Basic Principles and Benefits of the Agile Development Life Cycle
Research & References of Basic Principles and Benefits of the Agile Development Life Cycle|A&C Accounting And Tax Services
Source