Agile development methodology – Approach
- In the Agile methodology, each project is broken up into several ‘Iterations’.
- All Iterations should be of the same time duration (between 2 to 8 weeks).
- At the end of each iteration, a working product should be delivered.
- For example, in the agile approach the project will be broken up into ‘N’ releases (assuming each iteration is set to last 4 weeks).
- Then the team will decide the basic core features that are required in the product and decide which of these features can be developed in the first iteration.
- Any remaining features that cannot be delivered in the first iteration will be taken up in the next iteration or subsequent iterations, based on priority.
- At the end of the first iterations, the team will deliver working software with the features that were finalized for that iteration.
- Each iteration involves a cross-functional team working in all functions: planning, requirements analysis, design, coding, unit testing, and acceptance testing.
- There will be N iterations and at the end of each iteration the customer is delivered working software that is incrementally enhanced and updated with the features that were shortlisted for that iteration.
In Agile way of working, each feature is completed in terms of design, development, code, testing and rework, before the feature is called done. There are no separate phases and all the work is done in single phase only. Defining agile methodology using different parameters:
- Approach is incremental, flexible and adapts to change.
- The size of the project is usually small.
- The operating style is more distributed and not centralized.
- Less documentation required.
- Minimum planning required in the beginning.
- Agile is more people oriented and gives importance to communication.
- Size of the team is usually small with good expertise.
The Agile Triangle
The agile triangle addresses the practical goals of the project. It provides value to the customer by delivering the working software. The working software is characterized by intrinsic quality achieved by the self-motivated team. The quality is achieved with specific tools and techniques, such as continuous integration, automated unit testing, pair programming, test-driven development, design patterns, domain-driven design, code refactoring and other techniques are often used to improve quality and enhance project agility.
And all these are achieved within the triple constrains (cost, schedule and the scope). The quality is measured both by its reliability in the current scenario and it’s adaptability to the future requirements. The design should be flexible enough to anticipate the future changes to adapt to them.
Final Words
If you aspire to become a successful agile professional why not as a certified agile practitioner? At Whizlabs we have leveraged complete guidance through our PMI-ACP online course and practice test. These practice test series also helps to face many critical agile interview questions as these are designed in more elaborate and in-depth way.
Join us and achieve the best benefits towards the success goal of your career!
- What are Scrum roles and why it’s needed? - August 12, 2017
- Stakeholder Analysis – Is it required? - July 28, 2017
- Project Manager – An integrator, how? - July 28, 2017
- Different PMI Certifications – Which one to choose? - July 28, 2017
- What is the importance of Change Management in Project Management? - June 23, 2017
- What’s important to know to build a career in Agile? - June 23, 2017
- Agile Basics, Manifesto & Principles - June 23, 2017
- Scrum – Is it mandatory to learn in today’s IT market? - June 2, 2017