Agile is an iterative approach the project management and software development that helps the software development team deliver value to their customers faster and within the right time. Agile helps the software development team deliver a small amount of work but consumable increments.
Agility is flexible, Agility means effective( rapid and adaptive) response to change (software development team, new technology trends, requirements) and effective communication with all stakeholders. The agile method refers to a group of software development models based on both incremental and iterative approaches in which increments are small and typically new releases of the system are created and made available to customers.
The iterative approach refers to a process where the design of a product or application is improved by repeating reviews and testing. Example ( In programming, iterative refers to a sequence of instructions or code being repeated until a specific result is achieved.
WHY AGILE?
With Agile software development, the development team can quickly adapt to requirements changes negatively impacting release dates. Agile also helps reduce technical debt, improve customer satisfaction and deliver a higher-quality product. Agile is a time-bound, iterative approach to software delivery that builds software incrementally from the start of the project, instead of trying to deliver all at once.
PRINCIPLES OF AGILE DEVELOPMENT
To establish direct contact with the customer during development and to gain a clear understanding of various requirements, each agile project usually includes a customer representative on the team.
The agile model relies on working software deployment rather than comprehensive documentation.
Frequent delivery of incremental versions of the software to the customer representative in intervals.
It emphasizes having efficient team members and enhancing communication among them is given more importance.
ADVANTAGES OF AGILE DEVELOPMENT
-Transparency.
-Better client-vendor communication.
-Faster responses to change on the market and in the project.
-Better control over the process of the project.
-Flexibility.
DISADVANTAGES OF AGILE DEVELOPMENT
-Deficiencies in the project documentation.
-Agile development is more code focused and produces less documentation.
-face-to-face communication is harder in larger organizations.