Agile Softwareentwicklung ist eine Sammlung von Ansätzen, die das Grundproblem der konventionellen Softwareentwicklung lösen möchten, dass Entwicklungsteams zu langsam und zu teuer auf veränderte Anforderungen reagieren. Die Lösung wird in selbstorganisierten, cross-funktionalen Teams gesehen, die in kurzen Feedbackzyklen iterativ-inkrementell entwickeln.
Agile Softwareentwicklung bedeutet ein Umdenken auf vielen Ebenen, das in den Agilen Leitsätzen (manifesto for agile software development) auf den Punkt gebracht wird:
Es gibt viele agile Vorgehensmodelle, die drei bekanntesten sind:
Agile Softwareentwicklung funktioniert nur dann gut, wenn die wichtigsten Stakeholder bereit sind, regelmäßig aktiv durch konstruktives Feedback an der Erstellung des Produkts mitzuwirken.