Unter agiler Softwareentwicklung versteht man gemeinhin einen häufig auftretenden Rückkopplungsprozess, sowie ein allumspannendes zyklisches Vorgehen, das sowohl die Programmierung als auch das Management mit einschließt. Während die klassische Vorgehensweise das neue System bis in die letzten Einzelheiten im Voraus plant, wechseln sich bei der agilen Softwareentwicklung kurze Planungs- und Entwicklungsphasen ab. Der erste Schritt innerhalb der agilen Softwareentwicklung besteht dabei darin, dass eine Vision für das neue System ausgearbeitet und deren Ziele festgelegt und gewichtet werden. Im einem nächsten Schritt wird sodann ein Plan für diese erste Vision ausgearbeitet, auf den man die Softwareentwicklung stützen kann. Innerhalb der agilen Softwareentwicklung werden dabei stets notwendige Anpassungen im laufenden Projekt vorgenommen.
Welche Vorteile ergeben sich durch agile Methoden bei der Softwareentwicklung?
- Vorteil der hohen Flexibilität
In der Regel bedeutet agile Softwareentwicklung ein hohes Maß an Flexibilität, da der Kunde lediglich zu Beginn des Projekts einige Basisfunktionalitäten vorgibt. Im Laufe des Projekts können diese jedoch jederzeit geändert oder neue Funktionalitäten der Software hinzugefügt werden. Für den Kunden ergibt sich dadurch der Vorteil, dass etwaige geänderte Wettbewerbssituationen in die Software mit eingebracht werden können. - Vorteil der Übersicht
Da zum Gelingen des Softwareerfolges nicht nur die modernsten Technologien, sondern vor allem auch eine effiziente Kommunikation essentiell ist, kann der Kunde sicher sein, dass er jederzeit über Neuerungen informiert wird und so stets den Überblick und die Kontrolle über das Projekt behält. - Wettbewerbsvorteil
Meist kann die Software durch die agilen Methoden weitaus schneller fertiggestellt werden, als das dies bei der klassischen Herangehensweise möglich ist. Da Zeit in der Regel Geld bedeutet, heißt das auch in diesem Fall, dass der Kunde sich einen Wettbewerbsvorteil verschaffen kann. Außerdem werden für den Kunden bedeutende Elemente des Systems rasch entwickelt und fertiggestellt, sodass diese meistens schon vom Kunden produktiv eingesetzt werden können. - Vorteil der Qualität
Ein nicht zu unterschätzender Vorteil der agilen Methode bei der Softwareentwicklung ist der Aspekt der Qualität. Das zyklische Vorgehen ermöglicht für das jeweilige Projekt individuelle Messungen, die wiederum das Lernen aus Erfahrung möglich und auch die Geschwindigkeit der Entwicklung des Projekts realistisch abschätzbar machen. Die agile Softwareentwicklung ist daher in der Lage, einen realistischen Zeitplan aufzustellen und ist später nicht dazu gezwungen, auf Kosten der Qualität schneller zu arbeiten.