Agile Vorgehensweise für das Intranet Team des AFS Interkulturelle Begegnungen e.V.

Share this post:

Autor: Peter Grauvogel

Ziel des Projekts war es, die Vorgehensweise bei der Entwicklung des Intranets (www.afser.de – 2.500 aktive Nutzer) zu ändern – hin zu einer agilen Vorgehensweise u.a. mit Elementen von Continous Delivery und einer auf Kanban basierenden Methodik.
Während meines ehrenamtlichen Engagements über den Projektzeitraum habe ich sowohl bei der Einführung der Methodik selber beraten als auch bei der Einführung der dafür notwendigen technischen Tools und Prozessschritte unterstützt. Über den Zeitraum hinweg gliederte sich das Projekt in die folgenden Phasen:

  1. Analyse des aktuellen Entwicklungsprozesses
  2. Definition des „optimalen“ Entwicklungsprozesses mit den zugehörigen Tools und Prozessänderungen
  3. Implementierung des agilen Prozesses
  4. Fazit, Auswertung und adaptive Anpassungen

(Kursiv markiert sind jeweils die Stellen, wo ich meine Erfahrungen aus dem IBM-Projektalltag einbringen konnte.)

[1] Analyse des aktuellen Entwicklungsprozesses
Im Vordergrund stand hierbei die Analyse des aktuellen Entwicklungs- und Deploymentprozesses. Ein Punkt stellte sich als besonders problematisch heraus: Zwar existierte ein Testsystem, welches für die Entwicklung von neuen Komponenten verwendet wurde, allerdings gab es keinen automatisierten Prozess, um diese Ergebnisse später auf das Produktivsystem zu spielen. Hieraus resultierte, dass oft unvollständige oder falsche Dateien bei einem Deployment übertragen wurden. Damit einher ging, dass das Source Code Management System nur für den finalen Stand des Intranets verwendet und daher keine Zwischenstände in Form von Branches gespeichert wurden. Außerdem fehlte ein Tooling für die effektive Taskplanung. Als weitere Hürde stellte sich die verteilte Entwicklung und der damit einhergehende Kommunikationsverluste heraus.

In diesem Bereich konnte ich insbesondere meine Erfahrung aus professionell aufgesetzt IBM-Projekten anwenden. Mit dieser „Sichtweise“ war es mir möglich, die Probleme im Ablauf relativ schnell und klar zu identifizieren.

[2] Definition des „optimalen“ Entwicklungsprozesses mit den zugehörigen Tools und Prozessänderungen
Neben meiner professionellen Analyse gab es gleichzeitig auch eine Unzufriedenheit unter den ehrenamtlichen Entwicklern mit dem aktuellen „Prozess“. Aus dieser Unzufriedenheit heraus haben wir versucht, die nötigen Änderungsschritte zu erarbeiten. Ich habe dabei verschiedene Modelle wie Kanban, SCRUM und die damit einhergehenden Tools vorgestellt und meine Erfahrungen damit geschildert. Im nächsten Schritt haben wir untersucht, welche Methodik gut für das Setup von AFSer.de passen würde.
Beispielsweise eignete sich eine Vorgehensweise nach SCRUM mit festen  Sprintzeiten eher weniger, da ein Team aus Ehrenamtlichen kein festes Zeitbudget zur Verfügung hat. Als Alternative bot sich eine Vorgehensweise nach Kanban an. Vorteil hierbei ist, dass es keinen festen Zeitrahmen gibt, aber trotzdem eine hohe Flexibilität bei der Abarbeitung der Aufgaben gewährleistet ist. Dies stellt eine hohe Motivation für die Entwickler da, da sie sich hierdurch spannende Aufgaben selber heraussuchen können.

Schlussendlich galt es eine Lösung für die Kommunikation im Team zu finden. Als Lösung war hier bisher ein Gruppenchat mit Skype im Einsatz. Dies erfüllte aber nicht alle Bedürfnisse, da es z.B. nur einen Chatverlauf gab und Dokumente etc. nicht „online“ gespeichert werden konnten.

Durch meine Erfahrung aus IBM-Projekten mit den verschiedenen Methodiken konnte ich hier gut beraten und Beispiele über die verschiedenen Einsatzszenarien geben. Dadurch ergab sich für das Team eine wesentlich bessere Entscheidungsgrundlage. Neben den rein fachlichen Kenntnissen spielte hier auch meine Erfahrung aus der Kundenberatung eine Rolle – „Wie führe ich den Kunden hin zu einer informierten Entscheidung“.

[3] Implementierung des agilen Prozesses
In diesem Schritt begannen wir, die zuvor erarbeiteten Dinge umzusetzen. Zum einen betraf dies die Einführung der Kanban-Methodik und zum anderen die Einrichtung der entsprechenden Tools. ToDos, die bisher noch lose gesammelt waren, wurden in ein Kanbanboard zusammengeführt. Jeder Entwickler wurde darüber hinaus ausgefordert, Tasks auf dem Board zu erstellen, die aus seiner Sicht sinnvoll wären. Der Prozess wurde so aufgesetzt, dass Aufgaben nun nicht mehr verteilt, sondern jeder Entwickler sich frei für Aufgaben entscheiden kann – je nach aktueller Verfügbarkeit und technischem Know-how.

Als Versionskontrollsystem wurde GIT eingeführt, welches die einfache Verwaltung von vielen unterschiedlichen Ständen erlaubt. Dies sollte u.a. sicherstellen, dass auch während der eigentlichen Entwicklung Zwischenstände festgehalten werden können. Gleichzeitig konnte hierdurch auch eine Qualitätskontrolle gewährleistet werden. Aufbauend auf GIT wurde ein einfacher – aber automatisierter – Deploymentprozess aufgesetzt. Durch die Eliminierung von manuellen Schritten sollte die Fehlerwahrscheinlichkeit gesenkt werden.
Als Kommunikationstool wurde Slack eingeführt, welches den Austausch in verschiedenen Kanälen erlaubt – sowohl synchron als auch asynchron. Hinzu kommen die zahlreichen Integrationsmöglichkeiten mit GIT und der agilen Plattform Assembla.

Bei der Implementierung machte sich insbesondere meine Erfahrung im Setup von kleineren IBM-Projekten bezahlt. Zwar sind die Lösungen nicht alle deckungsgleich zu denen in der IBM eingesetzten Produkten, aber die dahinterliegenden Mechanismen sind sehr ähnlich, so dass ich einen großen Teil meines existierenden Know-hows wiederverwenden konnte.

[4] Fazit, Auswertung und adaptive Anpassungen
Da die Entwicklung des Lösungswegs von allen Betroffenen mit begleitet wurde, bedurfte es keiner groß angelegten Schulung oder anderen Einführungsmaßnahmen. Die Einarbeitung erfolgte sozusagen während der „täglichen“ Entwicklungsarbeit. Zwei Aspekte kristallisierten sich als größter Pluspunkt heraus: das automatische Deployment, wodurch die Fehlerhäufigkeit drastisch gesenkt wurde, und die Kommunikation über Slack, die eine wesentlich bessere Einbindung der einzelnen Entwickler erlaubte und eine konsistente asynchrone Kommunikation erlaubt. Etwas Nachbesserung war beim „Pull“-Prinzip für die verschiedenen Tasks nötig. Durch die reine Freiwilligkeit stellte sich heraus, dass einige notwendige Tasks liegenblieben. Dies wurde gelöst, indem notwendige Tasks höher priorisiert wurden.
In der Summe wurde die agile Umstellung sehr positiv bewertet. Insbesondere wurde auch ermöglicht, neue Teammitglieder einfacher einzuarbeiten und mit Aufgaben zu betrauen. Durch die Qualitätskontrolle und das automatische Deployment konnte sichergestellt werden, dass nur Komponenten, die alle Anforderungen erfüllen, deployt werden. Gleichzeitig gibt es einen Raum für Experimente und Lernen.

Weiteres
Ich engagiere mich in der „On Demand“-Community, weil ich gemerkt habe, dass meine Erfahrungen aus der ehrenamtlichen Arbeit mir sehr oft auch in meinem IBM-Job zu Gute kommen (z.B. einen Vortrag vor sehr großem Publikum halten…). Andersrum profitiert meine ehrenamtliche Arbeit z.B. von den Erfahrungen rund um Projektplanung und -prozesse.
Beim AFS Interkulturelle Begegnungen e.V. engagiere ich mich, da ich selber durch ein Austauschjahr in der 11. Klasse erfahren durfte, wie wertvoll ein Aufenthalt im Ausland für das eigene Leben sein kann, und ich dies möglichst vielen anderen Jugendlichen ermöglichen möchte. Auch wenn man mit IT keinen Teilnehmer für sein Austauschjahr vorbereitet, so ist eine gute IT doch immer die Basis dafür, dass Mitarbeiter ihren eigentlichen Aufgaben mit einer hohen Qualität nachgehen können.
Bei IBM bin ich als Lead Frontend Specialist bei IBM Interactive Experience im Hamburger beschäftigt. Unsere Mission ist die Lösung von herausfordernden Kundenproblemen im Themenbereich User Experience in weltweiten Projekten. Nach Praktikum und Diplomarbeit bei IBM bin ich nun seit sechs Jahren bei IBM.

More stories

Homepage Green-Bike e.V. – Professionell!

Autor: Barbara Lutz Der Verein Green-Bike e.V. vereint Menschen aus verschiedenen Gesellschaftsschichten. Gemeinsam hilft man sozial schwachen Familien und vor allen Dingen Kindern und Jugendlichen in psychosozialen Problemlagen. Da sind Biker aus Motorradvereinen und Free-Biker, Sportvereinsmitglieder, Erzieher, medizinischer Fahrdienst, Soldaten, Gastronomen und noch viele weitere Interessensvertreter Mitglieder des Vereins. Das Ziel des Vereins ist es, bei Krebserkrankungen, körperlichem […]

Continue reading

FabLab Bremen e.V. und organisatorische Strukturen

Autor: Georg Buscher Das Selbstverständnis des Vereins Das FabLab Bremen ist eine kreative Umgebung, in der sich Menschen mit unterschiedlichem Hintergrund und unterschiedlichen Kompetenzen treffen. Sie nutzen die weltweit angebotenen Ressourcen und Plattformen im Netz und die Unterstützung, die sich FabLabs weltweit gegenseitig geben. Diese Umgebung regt einerseits zum Lernen und Experimentieren an und unterstützt […]

Continue reading

Christopher Street Day Mannheim 2016

Author: Steven Mohlau With more than 80.000 Visitors from the LGBT (Lesbian, Gay, Bi, Trans*, Inter*)-Community and also Person from other cultures and Straights is the Christopher Street Day in Mannheim, one of the biggest Events in and around Mannheim. The CSD is a complete Weekend in the 2nd Week of August. We demonstrate for […]

Continue reading