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 zumindest durch konstruktives Feedback und möglichst auch durch intensives Testen und Pilotieren an der Erstellung des Produkts mitzuwirken.