agile software development
Agile development is a phrase used to describe methodologies for incremental software development. It is an alternative to traditional project management where emphasis is placed on empowering people to collaborate and make team decisions in addition to continuous planning, continuous testing and continuous integration.
The Agile Manifesto
Agile development is used to describe any development process that is aligned with the concepts of the Agile Manifesto. This well-known documentation was developed by leaders in the software industry and is based on experience with what works and what doesn't in software development.
The Manifesto for Agile Software Development says:
"We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value:
- Individuals and interactions over processes and tools
- Working software over comprehensive documentation
- Customer collaboration over contract negotiation
- Responding to change over following a plan
That is, while there is value in the items on the right, we value the items on the left more."
Principles Behind the Agile Manifesto
Agile development uses 12 guiding principles that are designed to satisfy the customer through early and continuous delivery of valuable software. Principles include :
- Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.
- Working software is the primary measure of progress.
- The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.
- The best architectures, requirements, and designs emerge from self-organizing teams.
- At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.
(Source: Principles behind the Agile Manifesto)
See related term: DevOps – Development and Operations.
Stay up to date on the latest developments in Internet terminology with a free weekly newsletter from Webopedia. Join to subscribe now.
From keyword analysis to backlinks and Google search engine algorithm updates, our search engine optimization glossary lists 85 SEO terms you need... Read More »Slideshow: History of Microsoft Operating Systems
Microsoft Windows is a family of operating systems for personal computers. In this article we look at the history of Microsoft operating... Read More »Slideshow: Interesting Facts About Google Search
From Goats to Penguins, a server outage and trillions of searches, our slideshow presents interesting facts about Google and the Google.com... Read More »
Java is a high-level programming language. This guide describes the basics of Java, providing an overview of syntax, variables, data types and... Read More »Java Basics, Part 2
This second Study Guide describes the basics of Java, providing an overview of operators, modifiers and control Structures. Read More »The 7 Layers of the OSI Model
The Open System Interconnection (OSI) model defines a networking framework to implement protocols in seven layers. Use this handy guide to compare... Read More »