Was ist agile Softwareentwicklung?

6 Min. Lesezeit

๐Ÿ‘‰ Die wichtigsten Fakten zusammengefasst:

Stellen wir uns einmal vor, wir mรถchten in den Urlaub fahren, und zwar an einen Ort, zu dem wir zu vor noch nicht gefahren sind. Selbstverstรคndlich ergibt es Sinn, sich vor Abfahrt kurz die Route anzuschauen, zu รผberlegen, wie viel Benzin und Zeit man benรถtigt. Doch am Ende โ€“ und ich wette, das kennen wir alle โ€“ lรคuft alles doch ganz anders, als wir es geplant haben. Vielleicht geraten wir in einen Stau? Mรถglicherweise hat die Karte uns eine Umleitung vorenthalten? Oder wir machen einen zusรคtzlichen Stopp an einer Sehenswรผrdigkeit?

Wieso agile Softwareentwicklung?

So, oder zumindest so รคhnlich geht es vielen unserer Kunden in Projekten aus der Softwareentwicklung, wo noch in klassischen Standards gedacht wird. Bereits vor Beginn des Projekts muss jede noch so kleine Anforderung ausfรผhrlich niedergeschrieben werden. Dadurch verschiebt sich nicht nur der Start des eigentlichen Projektes. Vielmehr entdeckt man wรคhrend der eigentlichen Entwicklungsarbeit neue Features, die benรถtigt werden und alte Anforderungen, die mรถglicherweise obsolet sind. Solche Verรคnderungen in der laufenden Entwicklung sind nicht nur kostspielig, sondern auch mindestens genauso zeitintensiv und sorgen fรผr weitere Verzรถgerungen im Projekt.

Im Projektmanagement spricht man bei dieser Vorgehensweise vom sogenannten klassischen Projektmanagement. Klassisches Projektmanagement verfolgt einen sogenannten monolithischen, also von Anfang bis Ende zusammenhรคngenden Ansatz. Was bedeutet das? Zu Beginn eines Projektes werden ein detaillierter Endzustand, ein genauer Ablauf bzw. Prozess und ein Zeitkontingent definiert. Besonders der vordefinierte Endzustand besteht meist aus einer Unmenge an Anforderungen. Um auf mรถgliche unvorhergesehene ร„nderungen und Entwicklungen โ€žvorbereitetโ€œ zu sein, rechnet man beim Zeitkontingent einen kleinen Puffer hinzu. Somit zeichnet das klassische Projektmanagement vor allem eines aus: Eine augenscheinlich hohe Planungssicherheit.

Vorteile agiler Softwareentwicklung

Agilitรคt bedeutet Flexibilitรคt. Deshalb kommen agile Methoden zur Softwareentwicklung ohne Pflichtenhefte aus. Die Stakeholder geben zu Beginn des Projektes lediglich ein paar wenige Basis-Features vor, die das Projekt abdecken soll. Im Anschluss startet das Projekt โ€“ ohne groรŸe Wartezeiten, Verzรถgerungen oder รคhnliches. Im weiteren Verlauf des Projektes kรถnnen dann je nach Bedarf weitere Anforderungen definiert werden. Beispielsweise, weil eine Verรคnderung am Markt dies herbeifรผhrt. Man nennt dieses Vorgehen iteratives Vorgehen. Hierbei profitiert man in erster Linie von den Erfahrungen, die man am laufenden Projekt macht, da man diese in weitere Features und Co. einflieรŸen lassen und das Produkt so weiterentwickeln kann.

Mit diesem agilen Vorgehen kann man sich so zudem einen echten und hochwertigen Vorteil gegenรผber dem Wettbewerb verschaffen. Durch die kurzen Kommunikationswege zwischen Entwicklern und Stakeholdern wird das Projekt schneller fertiggestellt, was in einer schnelleren Time-To-Market resultiert. Dadurch haben wir unsere App, unsere Software oder รคhnliches bereits auf dem Markt, wรคhrend die Konkurrenz vielleicht gerade erst das Projekt initiiert hat. Diese Zeit kรถnnen wir dann wiederum nutzen, um auf Feedback der User einzugehen und dieses in die Software einflieรŸen zu lassen. All das, wรคhrend die Konkurrenz mรถglicherweise noch nicht ein einziges echtes Kundenfeedback einholen konnte.

Auch die Entwickler profitieren

Wann sind Entwickler am glรผcklichsten? In der Regel dann, wenn sie sich mit ihrer Arbeit und der entstandenen Qualitรคt identifizieren kรถnnen. Agile Frameworks, wie zum Beispiel das von SCRUM, bieten hierfรผr den perfekten Rahmen. Hier schรคtzen die Entwicklungsteams den Aufwand ihrer Arbeit beispielsweise selbst und kriegen nicht einfach einen รผbermรครŸigen Haufen an Aufgaben auf ihren Schreibtisch gelegt. Ebenso mรผssen sie fรผr ihren geschรคtzten Output auch geradestehen, was ihnen eine gewisse Verbindung zu ihren Aufgaben gibt. Auch hier geht man iterativ vor und wird bei den Schรคtzungen mit der Zeit immer genauer.

In agilen Teams misst man zudem die Geschwindigkeit, mit der die Teams in ihren Zyklen arbeiten. Nicht, um den Entwicklern am Ende ihre Geschwindigkeit vorzuwerfen, sondern um den optimalen Auslastungsgrad fรผr das Team zu finden. Natรผrlich ist jeder Mensch verschieden und gerade im Arbeitsumfeld spricht nicht jeder gerne davon SpaรŸ zu haben. Doch wir haben die Erfahrung gemacht, dass agile Teams, meist mehr SpaรŸ im Arbeitsalltag haben und dadurch auch produktiver arbeiten. Grรผnde dafรผr dรผrften neben den bereits genannten sicherlich auch die verbesserte interne Kommunikation und Zusammenarbeit sein. Gefรถrdert durch Daily Stand-ups und Retrospektiven.

Agile Softwareentwicklung: Iteratives Vorgehen und Feedback

Bei der agilen Entwicklung von Software geht es im Grunde also um hรคufige Rรผckkopplungsprozesse und iteratives Vorgehen โ€“ und zwar auf allen Ebenen. Bei den Entwicklern, beim Management und grundsรคtzlich im Team. Das sogenannte Mindset, also die Denkweise der einzelnen spielt in der Agilitรคt eine gewichtige Rolle. Denn um dieser Arbeitsweise grundlegend treu zu bleiben, muss diese einfach stimmen und dazu passen. Mitarbeiter, die weiterhin klassisch denken, werden in einem agilen Projekt eher nicht glรผcklich und gefรคhrden mรถglicherweise sogar den Erfolg des Projektes.

Wo wir auch schon bei den potenziellen Problemen sind. Nachdem wir bis hierhin lediglich รผber Vorteile gesprochen haben, stellt sich selbstverstรคndlich die Frage nach dem Haken an der Sache. Das Einfรผhren agiler Methoden, agiler Denkweisen und agiler Strukturen kann besonders zu Beginn fรผr sehr viel Kopfschmerzen sorgen. Man muss sich von alten Gewohnheiten lรถsen, neue Varianten akzeptieren und diese kontinuierlich optimieren. Solltest du eine agile Struktur einfรผhren wollen, brauchst du also vor allem eins: Geduld. Oder natรผrlich professionelle und erfahrene Unterstรผtzung.

Was ist eine Sprint Retrospektive? Erklรคrung von Roman Simschek

In der neuen Ausgabe unseres YouTube-Formats Agile Heroes Education geht Roman Simschek, Co-Founder der Agile Heroes und erfahrener SCRUM Master, der Sprint Retrospektive hรถchstpersรถnlich auf den Grund und legt seine Ansicht zu dem Thema dar. Dabei handelt es sich keinesfalls um eine vollwertige Definition, sondern vielmehr um einen Erklรคrungsansatz, gebildet aus Romans langjรคhriger Erfahrung.

Wenn dir das Video gefรคllt und du danach Lust auf noch mehr Content hast, bist du hier genau richtig. Mit unserem Blog, unserem YouTube-Kanal und Podcast versorgen wir dich mindestens zweimal die Woche mit hochwertig produziertem Content zu diesem grandiosen Themenbereich. Wenn dir das noch nicht genรผgt, dann kannst du uns auรŸerdem gerne noch auf einem unserer Social Media Kanรคle folgen. Dort bieten wir dir tรคgliche mehrere Inhalte und auch spannendes Behind-the-Scenes Material. Fรผr weiter Informationen zu unserem Content kannst du dir auรŸerdem gerne noch unseren Kanaltrailer auf YouTube anschauen. Darin erklรคren dir die beiden Co-Founder ganz genau, was dich in Zukunft auf den Kanรคlen der Agile Heroes so erwartet. AuรŸerdem kannst du dich auch fรผr unseren wรถchentlich erscheinenden Newsletter anmelden. So verpasst du nie wieder unseren Content.

Erfahre jetzt, wie die Agile Heroes bei der Umsetzung von agilen Projekten helfen kรถnnen!

๐Ÿ’ Unser Fazit:

๐Ÿ‘† FAQ - Hรคufig gestellte Fragen

No items found.

โœ๏ธ รœber den Autor

Gratis Playbook

Die wichtigsten Infos zu Scrum kurz und knapp

Playbook erhalten