12 Tipps für die agile Softwareentwicklung

Agile Softwareentwicklung ist für einige IT Projekte die richtige Wahl. Einige Unternehmen haben mit dieser Programmiermethodik grosse Wettbewerbsvorteile gegenüber ihren Konkurrenten im Markt erreichen können. In diesem Beitrag sind einige Tipps beschrieben, wie man mit agiler Softwareentwicklung erfolgreich wird.

1) Bereitschaft im Unternehmen prüfen

Schauen Sie sich Ihr Unternehmen genau an. Reden Sie mit ihren Mitarbeitern. Welche Hürden gibt es? Fragen Sie sich: Was ist Agile und wie steht es im Vergleich zu ihrem jetzigen/ früheren Ansatz da?

2) Alle ins Boot holen

Diese Entwicklungsmethodik funktioniert nur, wenn alle Beteiligten daran glauben und auch aktiv daran mitarbeiten. Das Management, die Entwickler, der Kunde, der Nutzer, mit allen diesen muss kommuniziert und dessen Nutzen klar gemacht werden.

Der Kunde sollte verstehen, welche Vorteile er hat, wenn er kleinere funktionierende Arbeitspakete erhält, welche er bereits testen kann.

Die Mitarbeiter müssen die Notwendigkeit verstehen, wie Agile zum Unternehmenserfolg beiträgt.

Interne Geschäftsabteilungen müssen verstehen, dass in dieser Methode eine enge Zusammenarbeit mit der IT Abteilung notwendig wird.

3) Langsam starten

Erfahrene Anwender von Agile können auch grosse Projekte erfolgreich umsetzen. Um solche grossen Projekte erfolgreich umzusetzen braucht es jedoch sehr viel Erfahrung. Daher sollte jedes Unternehmen, welches diesen Weg geht, klein starten und langsam immer grössere Projekte umsetzen. Dies ist wichtig um das notwendige Vertrauen zu gewinnen und Kompetenzen aufzubauen.

4) Kontinuierliches Lernen ist wichtig

Personen, welche diese Methodik anwenden, müssen sich auf eine kontinuierliche Verbesserung in den Bereichen Qualität und Kosten-Effizienz einstellen. Dass heisst, dass jede Entwicklung dokumentiert wird und sich im nachhinein angeschaut wird, was verbessert werden kann. Dieses ständige Lernen und Verbessern ist nicht nur Aufgabe der Senior Leute im Team, sondern muss von allen im Team praktiziert werden. So auch in den Bereichen Testing, Projekt Management und unter anderem auch im Budget Management.

5) Kleine, wechselnde Teams

Die übliche Basiseinheit eines Teams in dieser Methodik besteht aus kleinen Gruppen von 5 bis 9 Leuten. Die Mitglieder der Teams sollten lange genug, in der gleichen Gruppe gelassen werden, um produktiv zu werden. Jedoch auch nicht zu lange, da es Sinn macht, Mitglieder von Zeit zu Zeit in anderen Teams unterzubringen, um so Nährboden für neue Ideen zu geben. Gleichzeitig sollte man darauf acht geben, die Mitglieder nicht allzuschnell auszuwechseln, da dies verhindern könnte, dass sich hoch produktive Teams entwickeln. Lässt man die Leute zu lange in den gleichen Gruppen, dann fangen sich die Teams an auseinanderzuleben. Daher muss man ein gutes Gespür dafür bekommen, wie lange diese Gruppen zusammen arbeiten sollen.

6) Schlechte Ansätze vermeiden

Jede Entwicklung führt zur Entstehung von sogenannten Technischen Schulden (Englisch: Technical Debt) oder vereinfacht gesagt schlechten Ansätzen, in welchen einfache Lösungen, welche kurzfristig nutzvoll sind, gegenüber langfristig nutzvollen Lösungen bevorzugt wird.

In klassischen Projekten werden diese negative Ansätze oftmals ignoriert. In Agile werden diese Technischen Schulden jedoch dokumentiert, gemanaged und mit der Zeit eliminiert. Welches dann mit der Zeit zu besserem, peformanteren und einfach wartbaren Projekten führt.

7) Ist nicht für alle Projekte geeignet

Nicht alle Projekte sollten mit diesem Ansatz durchgeführt werden. Es wird immer IT Aufgaben geben, in welchen zum Beispiel mit Wasserfall oder andere IT Methodiken besser geeignet sind.

Agile ist einfach für einige Aufgaben besser gerüstet, während es für andere Aufgaben weniger geeignet ist.

8) Agile ist nicht ein einziger Ansatz

Die Entwicklungsmethodik ist eine Anzahl unterschiedlicher Ansätze für die Softwareentwicklung, welche einer gemeinsamen Philosophie unterliegen, aber sich im Detail ihrer Implementierung stark unterscheiden. Unterschiedliche Problemstellungen erfordern unterschiedliche Agile Ansätze.

Erfahrene Unternehmen können unterschiedliche Ansätze für unterschiedliche Problemstellungen nutzen, während Unternehmen welche gerade erst damit starten, mit einem einzigen Ansatz starten sollten und erst den nächsten Ansatz erlernen, wenn sie den ersten gemeistert haben.

9) Qualität hat hohe Priorität

In dieser Methodik werden zu vielen Zeitpunkten Tests durchgeführt, um die Qualität sicherzustellen. Automatisierte Tests und weitere Tests stellen sicher, dass sich im Verlauf des Projektes keine Fehler einschleichen.

Hierbei sollten alle involviert werden, vom Junior Entwickler bis hin zum erfahrensten Software-Architekten. Das Testen muss Teil der Arbeits-Routine werden.

10) Komplexen Code reduzieren

Komplizierter Code ist in den meisten Fällen langsamer, schwer zu nutzen und später auch nicht einfach ausbesserbar. Das Team kann von späteren, komplexen Re-Programmierungsaufgaben verschont werden, in dem man einfache Coding Ansätze wählt, welche schnell neu geschrieben werden können und einfach wartbar sind.

11) Gegner überzeugen

Es wird immer Gegner der Agilen Methodik geben. Besonders bei der Einführung. Daher sollte man Gegner schnell ausfindig machen und diesen die Vorteile davon nahelegen. Das Vertrauen dieser Mitarbeiter muss gewonnen werden. Denn nur so kann eine zukünftige Zusammenarbeit klappen.

12) Rosinen picken vermeiden

Agile Methodiken sind sehr systematisch. Jedes Element trägt zum Erfolg der Methodik bei. Ein weit verbreiteter Fehler in Unternehmen ist es, einige Teilbereiche anzuwenden und andere unpassende Teilbereiche zu vermeiden.

Beispielsweise nutzen manche Unternehmen das Konzept des “Sprints”, vernachlässigen gleichzeitig aber das Konzept der “Technischen Schulden”. Diese Unternehmen werden zwar schneller nutzbare Software produzieren, werden später aber mit schlechterem Code zu kämpfen haben.

Fazit

Mit Agile können Unternehmen schneller, verlässlicher und wartbarere IT Projekte umsetzen. Gleichzeitig werden gute Ansätze wie ständige Qualitätskontrollen, Dokumentation von Performance-Steigerungen, starke Programmieransätze und viele Weitere gefördert.

Anderen Methodiken wie Wasserfall werden immer noch ihre Berechtigung, in manchen Projekten, haben. Agile wird jedoch in vielen Projekten der richtige Ansatz sein.

Welche Erfahrungen haben Sie gemacht?

Interessante Beiträge:
Beiträge auf Deutsche Startups
Agile erfodert Disziplin
Erfolgsfaktoren für diese Art von Projekten

Flickr.com/ Bilder: Improve It/ Ragai/ Kovah/ Doliner


Der Autor: Sascha Thattil arbeitet bei YUHIRO und hilft Unternehmern und Unternehmen beim einfachen Aufbau von Programmier-Teams in Indien. YUHIRO ist ein deutsch-indisches Unternehmen welches IT Firmen, Agenturen und IT Abteilungen Softwareentwickler bereitstellt.

Schreibe einen Kommentar