Agile Softwareentwicklung

Der Begriff agile Softwareentwicklung steht für eine besonders flexible Form der Programmierung. Dabei wird der komplexe Entwicklungsprozess einer Software in zahlreiche kleine, einfachere Teilbereiche unterteilt, die ineinander abgeschlossen sind. Ist eine Änderung nötig, lässt sich diese direkt an der benötigten Stelle mit überschaubarem Aufwand umsetzen. Statt Pläne starr zu verfolgen, können Veränderungen jederzeit berücksichtigt werden. Dadurch wird Zeit gespart.

Zudem wird der Kommunikation zwischen allen beteiligten Entwicklern sowie der Kommunikation mit dem Kunden ein erhöhter Stellenwert beigemessen. Dadurch soll die Softwareentwicklung produktiver, unbürokratischer und direkter ablaufen. Risken werden minimiert und funktionierende Strukturen aufgebaut. Programme werden mit dieser Methode in vielen Fällen schneller fertiggestellt und sind für den Kunden finanziell oft günstiger als Software, die nach herkömmlichen Methoden entwickelt wird. Unternehmen, die beispielsweise auf die agile Softwareentwicklung von evoniersoftware.de zurückgreifen, können außerdem Updates oder Bugfixes besser umsetzen.

Prinzipien der agilen Softwareentwicklung

Im Jahr 2001 wurde der Begriff in dem “Agilen Manifest” geprägt, das eine Forschungsgruppe rund um den US-amerikanischen Informatiker Kent Beck verfasste. Es konzentriert sich auf zwölf Prinzipien, denen die agile Softwareentwicklung folgt. An erster Stelle steht dabei eine möglichst zeitige und kontinuierliche Auslieferung der Software an den Kunden, um dessen Zufriedenheit zu garantieren. Dabei bietet die agile Methode gleichzeitig einen Wettbewerbsvorteil für den Kunden, da die Entwickler veränderten Anforderungen gegenüber immer offen sein sollen. So können sie schnell darauf eingehen. Das dritte Prinzip betrifft die Schnelligkeit: Funktionierende Programme sollen regelmäßig und in möglichst kleinen Abständen an den Kunden ausgeliefert werden.

Experten und Entwickler arbeiten während des gesamten Projekts jeden Tag zusammen, um sich gegenseitig auf dem aktuellen Stand zu halten und bestmögliche Ergebnisse zu erzielen. Informationen lassen sich am besten in persönlichen Gesprächen und Meetings austauschen. Auch die Motivation der Mitarbeiter spielt für den Erfolg des Projekts eine entscheidende Rolle. Dabei wird der Erfolg mit fortschreitender Entwicklung daran gemessen, ob die Software funktioniert oder nicht.

Agile Softwareentwicklung geschieht nachhaltig: Statt sprunghaftem Fortschritt wird ein dauerhaft gleichmäßiges Entwicklungstempo angestrebt. Dabei liegt ein ständiges Augenmerk auf der technischen Exzellenz, gutem Design und Einfachheit. Teams, die sich selbst organisieren, liefern die besten Entwürfe und Ergebnisse. Sie hinterfragen regelmäßig, ob und wie sie ihre Arbeit verbessern und effektiver gestalten können. Anschließend passen sie ihr Verhalten entsprechend an.

Wann sich agile Softwareentwicklung lohnt

Agile Softwareentwicklung lässt sich am leichtesten bei einem neuen Projekt oder neu zusammengestellten Team realisieren. Sind die Strukturen bereits gefestigt, sodass sich erfolgreiche Arbeitsabläufe etabliert haben, macht eine Umstellung oft wenig Sinn. Teams, die täglichen Meetings gegenüber abgeneigt sind, werden mit der agilen Softwareentwicklung ebenfalls wenig anfangen können.

Bild: bigstockphoto.com / REDPIXEL.PL