Files
freeCodeCamp/mock-guide/english/agile/index.md
Stuart Taylor 7da04a348b fix: Update packages and fix local dev (#26907)
<!-- Please follow this checklist and put an x in each of the boxes, like this: [x]. It will ensure that our team takes your pull request seriously. -->

- [x] I have read [freeCodeCamp's contribution guidelines](https://github.com/freeCodeCamp/freeCodeCamp/blob/master/CONTRIBUTING.md).
- [x] My pull request has a descriptive title (not a vague title like `Update index.md`)
- [x] My pull request targets the `master` branch of freeCodeCamp.
2018-10-23 18:48:46 +05:30

1.7 KiB

title
title
Agile

Agile

Agile software development is a collection of methodologies used to manage teams of developers. It advocates adaptive planning, evolutionary development, early delivery, and continuous improvement, and it encourages rapid and flexible response to change. People and communication are considered more important than tools and processes.

Agile emphasizes asking end users what they want, and frequently showing them demos of the product as it is developed. This stands in contrast to the "Waterfall" approach, specification-driven development, and what Agile practitioners call "Big Up-Front Design." In these approaches, the features are planned out and budgeted before development starts.

With Agile, the emphasis is on "agility" - being able to quickly respond to feedback from users and other changing circumstances.

A comic from Commitstrip.com showing a product manager explaining to a developer that they are switching to agile, but then asking the developer to plan everything up front

The agile software development places its emphasis on four core values.

  1. Preference on team and individual interactions over tools and processes.
  2. A working software over exhaustive documentation.
  3. Collaboration with customer is given more importance than contract negotiations.
  4. Response to changes over following a plan.

There are many different flavors of agile, including Scrum and Extreme Programming.

Various methods present in Agile testing or Agile Testing Methodologies

More information

Agile Alliance's Homepage