Agile methodologies involving iterative development and following the principles spelled out in agile manifesto. Extreme Programming and SCRUM are two of the commonly used agile Methodologies.
Iterative development is a short cycle in software development that have four phases namely requirements gathering; analysis and design; testing and deployment. The software is considered as shippable to the production after each cycle of development.
Extreme Programming (XP) was developed, among others, based on the value of trust and collective ownership. One of the common practices of XP is pair-programming wherein two programmers are working on the same source file.
SCRUM encourages visibility of the project’s activities, regular inspections of the product being developed and self-organizing teams.