Agile
Agile is an iterative approach for project management or software development that helps teams to deliver value to their customers faster and with fewer issues.
Agile Software Development: It is the general name for groups of frameworks such as Scrum, Extreme Programming or Feature-Driven Development (FDD).
The Agile Software Development Manifesto, created in 2001, proposed a groundbreaking mindset in terms of delivering value and collaborating with customers.
Agile consists of four core values:
- Individuals and interactions over processes and tools
- Working software over comprehensive documents
- Customer collaboration over contract negotiation
- Responding to change rather than following a plan
Value 1: Individuals and Interactions
In the past, software teams focused on having the best possible tools and processes to build their software and bring out a product. Agile Manifesto argues that, while these things are important, the people behind the processes are even more so. Because, in the wrong team, the best tools have no value.
Having the right people in a software team is vital for success. The most important thing is how the team communicates with each other. The interactions between team members help them to collaborate and solve emerging problems.
Value 2: Working Software
In the past, software teams spent quite a lot of time for the development of the product, documentation of the product, and final delivery. This was because the documents contained a lot of detail. Necessary technical specifications, requirements, interface design documents, test plans, etc. Agile does not eliminate documents but organizes them in a way that gives developers what they need to do their job without getting caught up in small details. Documents requirements as user stories sufficient for a software developer to start her task to create a new function.
In short, the agile manifesto values documents but values working software more.
Value 3: Customer Collaboration
The Agile manifesto is customer-focused. It emphasizes the importance of developing a product for a customer. Again agile principles require customers to be involved in all stages of a project. Without Agile, when traditional approaches like the Waterfall or the Turkish-named waterfall approach are used, the customer is negotiated or bargained after the project is finished. This leads to waste in terms of both time and resources.
Value 4: Responding to Change
Imagine you have a road map, but this roadmap will never change. You will do a project and draw a roadmap at the beginning but never make any changes. Of course, conditions can change for a project and sometimes customers can request extra features that can change the scope of the project in the final product. Agile, unlike past management methodologies, is always responsive to change, opposing using detailed and precise plans before the project begins. Thus, project managers and teams work quickly and in harmony to deliver a quality product and ensure 100% customer satisfaction.