.
What is Agile Methodology?
.
Agile Methodology is an approach that contains core values and principles on which project management approaches are based that solves traditional project management problems. Agile is suitable for innovative projects. Much less suitable for process activities. These approaches involve interactive development, with periodic updates to requirements from the customer and their implementation through self-organizing teams formed from experts of different profiles. The term “flexible development methodology” should be understood as approaches based on this manifesto, or framework. There are many frameworks whose approaches are based on Agile, for example, Scrum, eXtreme Programming (XP), Feature Driven Development (FDD), Adaptive Software Development (ASD), Lean Software Development (LSD), Dynamic Systems Development Method (DSDM).
.
The essence of Agile
.
Agile methodology is created as the opposite of the traditional linear methodology of “waterfall”, implying iterative and step-by-step software development that minimizes risks. The bottom line is that working with a flexible methodology consists of a series of short cycles (iterations) lasting 2-3 weeks. Each iteration includes stages of planning, requirement analysis, design, development, testing, and documentation. At the end of each iteration, the team presents the customer with “tangible” results, such as the primary version of the product or a piece of functionality that can be viewed, evaluated, tested, and then refined or adjusted. In total, the customer controls the development and can immediately influence it. After each phase, based on the work done, the team sums up and collects new requirements, on the basis of which makes adjustments to the product development plan.
.
Principles of the Agile Methodology
.
The Agile Methodology identifies 11 principles for methodologies based on it.
.
< The highest priority is to meet the needs of the customer.
< Changing requirements is welcome at any stage of development. Changes
give the customer a competitive advantage.
< The working product should be released as often as possible.
< Throughout the project, developers and customers must work together on
a daily basis.
< Motivated professionals should work on the project. To do this, it is
necessary to create conditions, provide support and trust.
< Direct communication is appropriate for the effective exchange of
information with the team and within the team.
< The main indicator of progress is the working product.
< The development process must be permanent and sustainable.
< Minimizing unnecessary work.
< Only self-organizing teams offer the best architectural and technical
solutions.
< The team must systematically review possible ways to improve efficiency
and adjust the way it works accordingly.
.
When to use Agile?
.
-When a customer is ready to regularly spend his time communicating with the team.
.
-If you want to start the product quickly, provided it is further refined.
.
-If there are no long-term plans. Flexible methodology involves short-term planning.
.
-If the customer does not have a vision of the final product, a clear expected result, and understanding comes during development.
.
-If there is no strict binding to the budget and deadlines, which are in innovative projects, those that are made for the first time, it is impossible to estimate.
.
Read Also :
.
.