As técnicas de programação ágil são formas de desenvolvimento de projetos que enfatizam aspectos como indivíduos e suas interações, software que possa ser utilizado, colaboração com o cliente e adaptabilidade. Elas foram desenvolvidas como um contraponto ao antigo estilo de programação baseado em Planejamento e Documentação (P&D) e contribuíram para um grande aumento na taxa de projetos de software que são entregues dentro do prazo e do orçamento.
As principais características da programação ágil estão contidas no Manifesto ágil, o documento utilizado por um pequeno grupo de programadores para divulgar essas ideias pela primeira vez.