Introduction
What is Agile?
The agile software development process is mainly based on an incremental, iterative, or repetitive approach. Instead of in-depth or complete planning at the beginning of the project, Agile methodologies are very much open to changing the requirements over time to time and encourages and expect constant feedback from the end-users. Cross-functional or operational teams work on iteration basis for a product over some time and all work is normally organized as a backlog item. Each backlog times need to be prioritized based on business or customer value. The ultimate goal of each iteration is to produce a working product or result. In this methodology, the leadership can be encouraged with the help of teamwork, accountability, and communication between the different team members. The business owner or stakeholders include developers that must be work together to prepare the product with customer needs and company goals. The Agile methodology supports or refers to any process which aligns with the main concepts of the Agile Manifesto. In February 2001, 17 different software developers met in Utah to discuss the lightweight development methods. After that discussion, they published the Manifesto for Agile Development. The Agile Manifesto is a dramatic contrast related to the traditional text and it is also proper guidance related to the Project Management standards.