Agile to skrót od agile software development i oznacza tak zwane zwinne metodyki tworzenia oprogramowania. Pojęcie po raz pierwszy pojawiło się w 2001 roku w Agile Manifesto. Zwinne metodyki zakładają dostosowywanie działań do stale zmieniających się oczekiwań potencjalnego odbiorcy. Programowanie tworzone w duchu Agile bardziej przypomina odkrywanie nowych rozwiązań, niż trzymanie się sztywnych procedur i zasad.
Programiści wykorzystujący zwinne metodyki są nakierowani na cel i przyświeca im stworzenie oprogramowania jak najwyższej jakości w szybkim czasie. Członkowie zespołu deweloperskiego sami organizują swoją pracę z uwzględnieniem zadań w poszczególnych iteracjach.
Agile opiera się na pięciu głównych etapach: planowaniu (ustalenie najważniejszych założeń z klientem), projektowaniu (ustalenie sposobu realizacji poszczególnych elementów zgodnie z otrzymanymi informacjami), programowaniu, testowaniu (sprawdzanie technicznej strony stworzonych rozwiązań) i implementacji.