Agile, czyli programowanie zwinne, to grupa metodyk wytwarzania oprogramowania z wykorzystaniem technik przyrostowych. Cieszy się ogromną — i ciągle rosnącą — popularnością zarówno wśród programistów, jak i osób zarządzających projektami informatycznymi. „Agile” znaczy „sprawny”, „zwinny”, „zręczny” i właśnie takie są w założeniu praktyki określane angielskim terminem Agile software development. Mają one przyspieszyć, uprościć i usprawnić proces tworzenia oprogramowania. Zapewniają wysoką jakość końcowego produktu i spełniają oczekiwania klienta, nawet jeśli w czasie trwania projektu jego wymagania ulegną znacznej zmianie.