Was hat Softwareentwicklung mit Ninjas zu tun?

Was hat Softwareentwicklung mit Ninjas zu tun?

„Übung macht den Meister“ ist ein altbekanntes Sprichwort, das nicht nur auf den Bereich Sport zutrifft. Gerade in der Softwareentwicklung ist Übung, Lernen und Fortbildung unerlässlich. Junge Entwickler erreichen relativ schnell die Fertigkeiten, so dass ein Code „funktioniert“ und dieser die fachlichen Anforderung des Kunden erfüllt. Von außen gesehen ein großer Erfolg, aber der eigentliche Weg beginnt erst hier!
Es gibt noch vieles zu erlernen – auf einer programmiersprachen-unabhängigeren Ebene: Architekturen, Vorgehensmodelle, Design-Patterns, Kooperationsmodelle und allgemeine Techniken. Allerdings treten auch vermehrt in der „SAP-Welt“ neue Frameworks, Sprachen und Services auf.

Wie können Entwickler lernen, wenn sie im Alltag und unter Projektdruck dazu angehalten sind ihre Ergebnisse schnellstmöglich abzuliefern? Hier gibt es die Analogie zum Kampfsport: Kampfsportler perfektionieren ihren Stil nicht in Turnieren, sondern in wiederkehrenden Trainings. Sie üben denselben Schlag, denselben Tritt so lange, bis er perfekt sitzt. Anfangs fällt es schwer, den Bewegungsablauf korrekt auszuführen. Aber dank einem geschützten und risikofreien Umfeld während des Trainings sowie stetigen Wiederholungen, wird der Bewegungsablauf immer besser, bis er schlussendlich zu einem reflexartigen Automatismus wird.

Haben Entwickler diese Möglichkeiten? Leider haben sie diese Möglichkeiten oftmals nicht. Es wird erwartet, dass im laufenden Projekt neue Technologien und Techniken erlernt sowie ausgeführt werden und dies ohne das Projekt zu verlangsamen. Das ist unrealistisch und führt letztendlich zu den altbekannten Qualitätsproblemen, überarbeiteten Entwicklern und enttäuschten Anforderern. Wenn diese Probleme im Projekt existieren, bietet es sich an, den Entwicklern mehr Freiraum zu geben. Dieser ermöglicht das geschützte und wiederholende Lernen, so dass die Entwickler ihre neuen Fertigkeiten in die Projekte übertragen können und das Neuerlernte zu einer Gewohnheit wird. Eben genau so, wie im Kampfsport vom Training bis hin zum Turnier.
Daran angelehnt haben die Clean Code Advocates ihr Logo, denn ein Ninja trainiert ebenfalls auf Perfektion, Qualität und ständige Verbesserung der Künste.

Innerhalb der INTENSE AG, aber auch für Kunden, veranstalten wir unsere „Ninja Times“. Während dieser Workshops lernen wir gemeinsam mit Hilfe von kleinen Übungen, sogenannte Katas. Katas sind Programmieraufgaben, die fernab von der Fachdomäne des Projektgeschäftes sind. Sie sind für jeden, auch ohne spezielles Wissen, durchführbar. Da es in der Ninja Time um fokussierte Softwareentwicklung gehen soll und nicht um Domänenexpertise. Anhand dieser Programmieraufgabe werden spezielle Techniken gelehrt und erlernt. Auf diese wird der Fokus gelegt, wie z. B. die Einhaltung von Werten aus dem Bereich „Clean Code“. Es ist dabei nicht das Ziel, die Aufgabe schnellstmöglich oder komplett zu lösen, sondern das bestmögliche Coding zu erzeugen. Durch dieses geschützte Trainieren wird aufgrund der Wiederholung, das gelernte Schrittweise auch in den Projektalltag übernommen. Die Ninja Times werden in zwei Varianten ausgeführt:
Im klassischen Pair Programming, bei dem zwei Entwickler als Team zusammenarbeiten oder im Randori-Verfahren, bei dem „reihum“ entwickelt wird.

In den Workshops sind auch immer wieder Gäste aus den Fachabteilungen, die mehr Verständnis für Softwareentwicklung aufbauen möchten, um beispielsweise besser mit Entwicklern kommunizieren zu können und die User Stories passender zu formulieren.

Das klingt für Sie interessant? Sie haben Fragen?

Unsere Experten sind für Sie da. Kontaktieren Sie uns.

Der Autor

Dominik Panzer

Dominik Panzer

Dominik verantwortet als Entwicklungsleiter die technische Produktentwicklung der Intense AG und unterstützt Teams als Technical Agile Coach in den Bereichen Prozesse, Testautomatisierung, Methodiken und Clean Code. Er ist Initiator der Clean Code Advocate Initiative der INTENSE AG.

Lesenswerte Artikel aus Business Technology

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.