Suchen

Teamwork und Kommunikation 10 Tipps für die agile Software-Entwicklung

| Autor / Redakteur: Thomas Joos / Stephan Augsten

Agilität ist ein wichtiger Trend beim Programmieren von Apps, Firmenanwendungen und Cloud-Diensten. Entwickler und Unternehmen müssen aber einiges beachten, um die Vorgehensweise ideal zu implementieren.

Kommunikation, Kooperation und Koordination sind für den Erfolg agiler Projekte entscheidend.
Kommunikation, Kooperation und Koordination sind für den Erfolg agiler Projekte entscheidend.
(Bild: cinya75 - Pixabay.com / CC0 )

Agile Development kommt zwar in vielen Firmen zum Einsatz, ist aber noch kein Allheilmittel für alle Probleme in der Softwareentwicklung. Auch in Zukunft bleiben andere Entwicklungsmethoden weiter wichtig. Beim Einsatz von Agile Development gilt es außerdem, einiges zu beachten. Im Folgenden zehn wichtige Hinweise.

1. Agile Entwicklung ist nicht für alle Teams geeignet

Der Ansatz der agilen Entwicklung ist sicherlich ein idealer Weg, komplexe Prozesse bei Entwicklungen zu strukturieren und zu verbessern. Gleichzeitig erhöht sie die Produktivität der Teammitglieder und vermeidet durch die Strukturierung eine Überlastung. Allerdings sind nicht alle Teams, alle Projekte und alle Unternehmen dazu geeignet, den agilen Ansatz zu verfolgen.

Besonders die Projekte müssen auf Tauglichkeit hin getestet werden, bevor agile Entwicklung verwendet wird. Denn nur, weil klassische Methoden keinen idealen Weg für ein Projekt oder ein Team darstellen, heißt das nicht, dass agile Methoden sinnvoll sind. Das einfache Folgen eines Trends schafft selten echte Lösungsansätze. Die Teammitglieder und Vorgesetzten müssen darüber hinaus damit einverstanden sein, neue Methoden zu testen.

2. Konsequente Umsetzung der verschiedenen Ansätze

Geht es um agile Entwicklung, denken viele CIOs und Entwickler an die Vorgehensmodelle Scrum und Kanban. Es gibt in diesem Bereich aber noch einige weitere Ansätze (dazu später mehr). Unternehmen und Entwickler sollten sich vor allem zu Beginn entscheiden, welchen Ansatz sie verfolgen wollen. Es ergibt keinen Sinn, alle Ansätze zu verfolgen.

Die Komplexität von agiler Entwicklung darf nicht unterschätzt werden, sondern sollte nach und nach in die Prozesse der Programm- und Lösungsentwicklung einfließen. Natürlich sollte die Umsetzung dann auch konsequent erfolgen.

Einzelne Prozesse und Faktoren des jeweiligen agilen Entwicklungsansatzes lassen sich aus der kompletten Umgebung/Vorgehensweise nämlich nicht herauslösen. In den meisten Fällen bauen die verschiedenen Schritte der Prozesse aufeinander auf und bieten nur beim gemeinsamen Einsatz eine vielversprechende Lösung.

3. Alle Beteiligten in das Projekt mit einbinden

Agile Entwicklungsmethoden arbeiten häufig schlecht mit klassischen Ansätzen zusammen. Daher bringt es nichts, wenn nur die Entwicklungsabteilung mit der neuen Vorgehensweise arbeitet. Alle beteiligten Personen im Unternehmen müssen darauf eingestellt sein.

Das gilt auch für Kunden und Anwender sowie die Entscheider im Unternehmen. Nur wenn alle an den Produkten beteiligten Personen in die jeweilige agile Entwicklungsmethode eingebunden sind, kann eine sinnvolle Umsetzung erfolgen.

4. Teambildung optimal planen und durchführen

Agile Entwicklung erfordert, dass die einzelnen Teams im Entwicklungsprozess optimal aufgebaut sind. Die Teams dürfen nicht zu groß und nicht zu klein sein. Außerdem müssen die richtigen Teammitglieder und -vorgesetzten eingebunden sein, damit sich ein agiles Entwicklungsszenario ergibt. Das gilt vor allem für Projekte, bei denen auch externe Entwickler über Outsourcing angebunden sind.

Da bei der agilen Entwicklung die Kommunikation ein wichtiger Baustein ist, sollten die Teammitglieder gut miteinander auskommen. Nur zusammengewachsene Teams sind dazu in der Lage, optimal mit agilen Methoden zusammenzuarbeiten. Denn Entwickler und Business-User müssen bei diesen Ansätzen miteinander kommunizieren können. Das ist bei externen Entwicklern nur begrenzt möglich.

5. Andere Methoden nicht komplett über Bord werfen

Vor allem zu Beginn der Einbindung agiler Methoden ist es ratsam, klassische Entwicklungsmethoden beizubehalten. Die agile Entwicklung kann nämlich nicht alle Prozesse und Funktionen der klassischen Methode übernehmen, vor allem nicht zu Beginn der Umstellung.

Bei verschiedenen Problemen der Entwicklung können auch in Zukunft klassische Methoden besser helfen und sollten daher durchaus in die Prozesse mit eingeplant werden. Oftmals arbeiten klassische Methoden optimal mit agilen Methoden zusammen und bieten weitere Vorteile.

6. Grenzen der agilen Entwicklung beachten

Agile Entwicklung ist bei großen und komplexen Projekten sehr hilfreich. Für kleinere Entwicklungen und Teams oder für Einzelfälle ist der Ansatz daher selten sinnvoll. Wenn Programmierer und Vorgesetzte unterschiedliche Auffassungen von der korrekten Projektrealisierung haben, kann agile Entwicklung ebenfalls nicht helfen.

Gibt es für verschiedene Projekte, die regelmäßig durchgeführt werden, bereits eine optimale Vorgehensweise, so sollte man diese funktionierende Vorgehensweise nicht durch eine agile Methode ersetzen. Im Gegenteil: Hier kann es sinnvoll sein, alles so zu lassen wie es ist. Bei neuen, komplexen Projekten hingegen kann die agile Entwicklung dabei helfen, optimale Ergebnisse zu erzielen.

7. Meetings sind ein zentraler Bestandteil von agiler Entwicklung

Regelmäßige persönliche Treffen sind ein wichtiger Grundpfeiler der agilen Entwicklung. Entwickler und Vorgesetzte müssen regelmäßig Meetings abhalten, um das Projekt optimal zu begleiten. In Vorgehensmodellen wie Scrum sind diese Meetings fest verankert und ihre Rahmenbedingungen strikt vorgegeben.

Es ist daher immens wichtig, dass begleitend zur agilen Entwicklung auch die Meeting-Kultur im Unternehmen optimiert wird. Ohne gute und produktive Meetings, wird eine Entwicklung auch dann scheitern, wenn die agile Methode ideal für das Projekt ist. Aus diesem Grund sollten Meetings nicht unterschätzt werden.

8. Scrum ist oft die erste Wahl, aber der Lernprozess geht weiter

Wenn Unternehmen an agile Entwicklung denken, ist Scrum oft der erste und beste Ansatz für den Einstieg. Weitere Vorgehensmodelle sind Kanban und Lean. Diese lassen sich aber später noch integrieren.

Es lohnt sich daher, mit Scrum zu beginnen und im Laufe der Zeit noch den Einsatz von Kanban und Lean zu prüfen. Die verschiedenen Ansätze schließen sich gegenseitig nicht aus, sondern lassen sich perfekt miteinander verknüpfen. Das setzt einen Lernprozess voraus, um das Beste aus allen Ansätzen miteinander zu kombinieren.

9. Mehr Eigenverantwortung zulassen

Beim Einsatz von agilen Entwicklungsmethoden erhalten die Projektteams und einzelnen Entwickler mehr autarke Verantwortung. Es ist daher wichtig, diesen Zuwachs an Vertrauen auch zuzulassen. Nur dann lassen sich agile Entwicklungsmethoden ideal umsetzen.

Das bedeutet aber nicht, dass die Planung vernachlässigt werden darf. Im Gegenteil: Vorgesetzte müssen mehr planen, um rechtzeitig den einzelnen Teams mehr Eigenverantwortung zu überlassen. Es ändert sich also nicht nur die Vorgehensweise der Teams, sondern auch die komplette Führungsstrategie.

10. Ergebnisse hängen von einzelnen Teammitgliedern ab

Da Unternehmen bei der agilen Entwicklung den einzelnen Teammitgliedern viel Eigenverantwortung zugestehen, hängt das Ergebnis der Entwicklung natürlich noch stärker von der Qualität der einzelnen Entwickler und deren Motivation ab. Die Motivation und Ausbildung dieser Mitarbeiter muss also besonders gefördert werden, um optimale Ergebnisse zu erzielen.

(ID:44588652)

Über den Autor

 Thomas Joos

Thomas Joos

Freiberuflicher Autor und Journalist