Agile Software Development

Agile software development is a group of software development methods based on iterative and incremental development, where requirements and solutions evolve through collaboration between self-organizing, cross-functional teams. It promotes adaptive planning, evolutionary development and delivery, a time-boxed iterative approach, and encourages rapid and flexible response to change. It is a conceptual framework that promotes foreseen interactions throughout the development cycle. The Agile Manifesto introduced the term in 2001.

Software development process
Activities and steps
  • Requirements
  • Specification
  • Architecture
  • Design
  • Implementation
  • Testing
  • Debugging
  • Deployment
  • Maintenance
Methodologies
  • Waterfall
  • Prototype model
  • Incremental
  • Iterative
  • V-Model
  • Spiral
  • Scrum
  • Cleanroom
  • RAD
  • DSDM
  • RUP
  • XP
  • Agile
  • Lean
  • Dual Vee Model
  • TDD
Supporting disciplines
  • Configuration management
  • Documentation
  • Quality assurance (SQA)
  • Project management
  • User experience design
Tools
  • Compiler
  • Debugger
  • Profiler
  • GUI designer
  • IDE
  • Build automation

Read more about Agile Software Development:  Characteristics, Comparison With Other Methods, Agile Methods, Measuring Agility, Experience and Reception, Criticism

Famous quotes containing the word development:

    The proper aim of education is to promote significant learning. Significant learning entails development. Development means successively asking broader and deeper questions of the relationship between oneself and the world. This is as true for first graders as graduate students, for fledging artists as graying accountants.
    Laurent A. Daloz (20th century)