Agile

Agile Softwareentwicklung geht schrittweise vor und stellt sich einer Erfolgsmessung

Agile Softwareentwicklung ist eine Art der Softwareentwicklung, die sich dadurch auszeichnet, dass sie möglichst unbürokratisch und einfach vonstatten geht. Im Grunde geht es bei agiler Softwareentwicklung um möglichst häufige Rückkopplungsprozesse und zyklisches Vorgehen auf allen Ebenen, von der Programmierung, über die Teamarbeit bis zum Management.

Anders als in der herkömmlichen Vorgehensweise wird das agile Vorgehen nicht im Voraus in allen Details geplant und dann in einem einzigen langen Durchgang entwickelt, sondern geht schrittweise vor und stellt sich einer regelmäßigen Erfolgsmessung. Der Hintergrund: Man geht davon aus, dass sich die Anforderungen während der Projektlaufzeit noch ändern können, oft sind sie zu Projektbeginn noch gar nicht vollständig bekannt. Stattdessen wechseln sich beim agilen Vorgehen kurze Planungs- und Entwicklungsphasen ab. Nachdem eine Vision für das neue System entwickelt wurde, also die Ziele festgesteckt wurden, die mit der neuen Software erreicht werden sollen, wird ein Plan für eine erste Version festgelegt, und die Entwicklung beginnt. Danach werden notwendige Anpassungen und Korrekturen vorgenommen.

Agile Entwicklung passt sich den Veränderungen dynamisch an

Agile Methoden gehen einen Weg, der darin besteht, das neue System möglichst früh einzusetzen und so zu prüfen, ob die gesteckten Ziele damit erreicht werden konnte. Man geht davon aus, dass es ungünstig ist, wenn diese Überprüfung erst am Projektende erfolgen würde, weil dann schon viel zu viel Zeit vergangen ist und es dann für Korrekturen und Umstellungen zu spät wäre. Stattdessen hält agile Entwicklung es für notwendig, dass diese Überprüfung so früh wie möglich erfolgt, damit bei Fehlentwicklungen noch während der Projektlaufzeit eingegriffen und gegengesteuert werden kann. Denn: Mit jeder neuen Software sollen klare Geschäftsziele erreicht werden, die üblicherweise vom Management oder vom Kunden vorgegeben werden. Diese Geschäftsziele werden in Anforderungen überführt, denen dann wiederum die neu zu entwickelnde Software entsprechen soll.

Es findet also ein doppelter Transferprozess statt: Von den Geschäftszielen zu den Anforderungen und von den Anforderungen zur Umsetzung. Diesen beiden Übersetzungsprozessen gerecht zu werden, stellt die größte Herausforderung in der Softwareentwicklung dar.

Weitere Informationen zum Thema agile Softwareentwicklung gibt es auf der Website der Wikipedia Enzyklopädie https://de.wikipedia.org/wiki/Agile_Softwareentwicklung