Unser agiler Softwareentwicklungsprozess ist ein Komplettpaket. Viele Kunden, denen wir unsere Ideen und Lösungen vorstellen, fühlen sich von den neuen Mechanismen und Interaktionen, die er vorschlägt, überfordert. Sie sind etwas verunsichert über die Veränderungen, die auf sie zukommen, wenn sie diesen neuen Ansatz einführen wollen. Irgendwie stellen sie sich vor, dass all diese Veränderungen auf einmal in einem Big Bang des neuen Entwicklungsprozesses stattfinden müssen. Das steht im Widerspruch zu dem, was die Prinzipien von Agile versprechen: Der Prozess ist anpassungsfähig, an Veränderungen, aber auch an bestehende Situationen. Deshalb schlage ich einen neuen Ansatz vor: GRADAP, die schrittweise Anpassung an den agilen Prozess.
Natürlich ist Agile nicht nur ein leerer Begriff. Es gibt Kernwerte, die vorhanden sein müssen, damit ein agiler Prozess funktioniert, aber diese sind nicht sehr weit von der Realität der meisten bestehenden Softwareentwicklungspraktiken entfernt.
Kommunikation ist der Wert, der wahrscheinlich den Kern von Agile bildet. Natürlich kommunizieren alle Entwicklungsteams, sowohl intern als auch extern. Agilisten glauben an eine offene Kommunikation von Angesicht zu Angesicht in alle Richtungen und zwischen allen Parteien. Auch wenn dies in den meisten großen Softwareentwicklungsfirmen, in denen die Kommunikation oft recht hierarchisch ist und nur über bekannte Kanäle läuft, nicht üblich ist, kann es auch nicht weit von der Realität der meisten Kunden entfernt sein, dass dies ein verbesserungswürdiger Bereich ist.
Ein weiterer zentraler Wert ist in der Tatsache verkörpert, dass unser agiler Prozess ein empirischer Prozess ist. Das heißt, dass das Team aus dem Prozess lernt, während es ihn durchführt. Wichtig für diesen Wert sind die Praktiken der Messung und des Feedbacks. Um diese Praktiken zu ermöglichen, muss der Entwicklungsprozess iterativ sein. Kleine Iterationen ermöglichen einen messbaren Umfang. Sie definieren sinnvolle Momente für Feedback. Die Planung in Iterationen ist ziemlich schwierig. Sie brauchen wahrscheinlich eine Anleitung, um loszulegen.
Im Grunde bilden diese beiden Werte den Ausgangspunkt eines agilen Anpassungsprozesses. Wie sollten Sie als Kunde also mit der Einführung von Agile beginnen? Nehmen Sie ein paar erfahrene Agilisten in Ihr Team auf, ermöglichen Sie dem Team eine freie Kommunikation und arbeiten Sie in Iterationen! Lassen Sie den Prozess sich selbst entfalten. Von Anfang an werden die erfahrenen Agilisten neue Praktiken einführen, wie z.B. Stand-ups, Pair Programming, Unittests, automatische Builds und was sonst noch. Lassen Sie das Team entscheiden, wann es welche neuen Praktiken einsetzt. Seien Sie aufgeschlossen, aber achten Sie darauf, dass die Einheit des Teams gewahrt bleibt.
Auf diese Weise dauert es vielleicht etwas länger, bis Sie die spektakulären Ergebnisse erzielen, die erfahrene agile Läden haben. Wenn Sie unser Agile-SWAT-Team anrufen würden, wären wir in ein paar Tagen startklar. Aber wenn Sie Agile schrittweise einführen, können Sie es besser in Ihrer eigenen Organisation verankern und haben das befriedigende Gefühl, es gemeinsam geschafft zu haben!
Verfasst von
Maarten Winkels
Unsere Ideen
Weitere Blogs
Contact
Let’s discuss how we can support your journey.



