thomaskekeisen.de

Aus dem Leben eines Bildschirmarbyters

Achtung: Diese Seite enthält Partner- und Werbe-Links. Daher ist diese Seite im Gesamten als Werbeanzeige zu verstehen!

Unser automatisierter Projektmanager

In meinem Artikel Meine aktuellen Projekte: Eine Übersicht habe ich kürzlich über den automatisierten Projekt-Manager bei meiner Firma Lulububu berichtet. In diesem Artikel gehe ich etwas mehr ins Detail und berichte, wie uns der von uns selbst entwickelte Bot eigentlich konkret unterstützt und wie er uns im Alltag Arbeit abnimmt und dafür sorgt, dass unsere Abläufe möglichst reibungslos und effizient bewältigt werden können.

Für diesen Zweck habe ich mein Team gebeten, ihre digitalen Begegnungen mit Robothomas zu dokumentieren, sodass ich auch wirklich aus der Perspektive eines Vollzeit-Softwareentwicklers sprechen kann.

Die Integration von Robothomas bei Lulububu ist sehr umfangreich. So kombiniert der Bot mittlerweile Daten aus unserem Projektmanagement-Tool JIRA, unserem Code-Repository-Hoster Bitbucket, unserem Chat-Tool Slack und unserer Cloud-Software Nextcloud sowie dem darin enthaltenen Kalender.

Vorteile

  • Weniger Arbeitsaufwand
  • Einfachere Arbeitsabläufe
  • Weniger Vergessen
  • Einhaltung von Prozessen
  • Komplexe Logik durch Verknüpfung verschiedenster Daten

Features im Detail

Nachfolgend eine unvollständige Übersicht über Dinge, um die sich Robothomas in unserem Unternehmen kümmert. Insgesamt haben wir über weit über 100 verschiedene Szenarien und Automatismen implementiert. Mit jedem Problem oder Umstand, der uns auffällt, wächst dieser Vorrat weiter. Wir versuchen generell, aus jedem Fehler zügig zu lernen und einen Automatismus oder Test zu schreiben, der selbigen in Zukunft vermeidet.

Wenn wir in JIRA eine große Funktion oder ein neues Feature in einem Projekt planen, werden darin enthaltene Unteraufgaben automatisch versteckt, bis das Feature laut unserem Projektplan an der Reihe ist.

Screenshot: Robothomas versteckt ein Ticket weil dessen Bearbeitung noch nicht an der Reihe ist.

Wird dann die Arbeit gestartet, holt Robothomas automatisch alle dazugehörigen Tickets in unsere Aufgabenübersicht.

Screenshot: Robothomas holt beim Projektstart entsprechende Aufgaben in unser Board.

Damit Mitarbeiter nicht zu lange Administrator-Rechte in einzelnen Code-Repositories auf Bitbucket haben, erinnert Robothomas regelmäßig über Slack daran, dass die Rechte wieder zurückgesetzt werden müssen.

Screenshot: Robothomas überwacht Zugriffsberechtigungen unserer Repositories.

Da auch Kunden in unserem Projektmanagement-Tool JIRA arbeiten, informiert Robothomas möglichst detailliert in jedem Ticket, wann der dazugehörige Code auf dem Test- oder Produktivsystem verfügbar ist und wirklich getestet werden kann.

Das schließt natürlich auch Fälle ein, in denen ein Code-Update fehlgeschlagen ist oder mehrere Änderungen in verschiedenen Projekten nötig sind, bis ein Test des Kunden möglich ist.

Screenshot: Robothomas informiert über Code- und Server-Updates.

Auch Hardware-Wünsche für unser Team wickeln wir in einem entsprechend angepassten Workflow in unserem Projektmanagement-Tool JIRA ab. Nach der Hardwarebestellung weist Robothomas auf die Einhaltung unserer Prozesse hin.

Screenshot: Robothomas kümmert sich um Hardware-Anschaffungen.

Sobald die Hardware dann angekommen ist, unterstützt Robothomas und kümmert sich darum, dass die Artikel ordnungsgemäß in unserer Inventarliste dokumentiert werden.

Screenshot: Robothomas kümmert sich um die Pflege unsere Inventarliste.

Aufgaben in unserem Projektmanagement-Tool JIRA sind zu tausenden untereinander verlinkt und blockieren sich auch teilweise gegenseitig. Sobald das der Fall ist, dokumentiert Robothomas das entsprechend in der Aufgabe und stell den Status auf "Blockiert".

Screenshot: Robothomas reagiert auf Aufgaben-Verknüpfungen und dokumentiert deren Status.

Wenn einer unserer Entwickler im Code-Review auf Bitbucket zu einem Ticket eine Änderung vorschlägt oder einen Mangel entdeckt hat, öffnet Robothomas das zugehörige Ticket im Projektmanagement-Tool JIRA wieder und erstellt einen entsprechenden Kommentar.

Screenshot: Robothomas informiert über Fragen im Pull-Request.

Liegt ein Ticket länger als 30 Tage mit dem Status " To do" in unserem Projektmanagement-Tool JIRA, fängt Robothomas an, nachzufragen und schafft entsprechende Aufmerksamkeit. Durch diese Automation kann nichts länger als 30 Tage vergessen werden oder unentdeckt bleiben.

Screenshot: Robothomas findet vergessene Tickets.

Damit sich der Kreis zwischen Bitbucket und JIRA schließt, erstellt Robothomas automatische Kommentare und verlinkt an möglichst vielen Stellen ein entsprechendes Ticket mit dem Code. Das spart Zeit beim Suchen, erhöht die Effizienz und erleichtert die Nachvollziehbarkeit von Dingen.

Screenshot: Robothomas schafft Querverweise.

Robothomas erinnert täglich daran, wie viele offene Wikipedia: Pull-Request respektive Code-Änderungen aktuell auf Bitbucket offen sind.

Screenshot: Robothomas erinnert an Pull-Requests.

Und weist auch Mitarbeiter explizit auf noch fehlende Code-Reviews hin, falls diese am jeweiligen Tag noch nicht durchgeführt wurden.

Screenshot: Robothomas erinnert an Code-Reviews.

Pull-Requests und der damit verbundene Code wird automatisch von Robothomas veröffentlicht, sobald alle von uns definierten Anforderungen erfüllt sind. Ist das der Fall, dokumentiert Robothomas außerdem genau diesen Zustand nochmals innerhalb des Pull-Requests.

Screenshot: Robothomas veröffentlicht Code.

Falls eine Aufgabe mehrere Pull-Requests mit sich gebracht hat, wird auch dieser Fall entsprechend berücksichtigt und die Aufgabe noch nicht zur Abnahme vom Kunden freigegeben.

Screenshot: Robothomas regelt Abnahmeprozesse.

Es kann natürlich auch vorkommen, dass ein Pull-Requests für längere Zeit nicht veröffentlicht werden kann. Ist dies der Fall, wird zumindest der Grund dafür in einem Kommentar dokumentiert um entsprechende Aufmerksamkeit darauf zu lenken.

Screenshot: Robothomas informiert über Probleme in Pull-Requests.

Wenn ein Pull-Requests dann letztlich akzeptiert wurde, wird automatisch der entsprechende Server aktualisiert, beispielsweise bei Amazon AWS oder Microsoft Azure. Auch über diesen Umstand werden wir automatisch in einem Slack-Kanal informiert.

Screenshot: Robothomas informiert über Server-Updates.

Täglich um 10 Uhr organisiert Robothomas unser Daily-Standup-Meeting. Hierbei werden natürlich nur Mitarbeiter angeschrieben, die nicht im Urlaub sind.

Screenshot: Robothomas organisiert unser Daily-Standup-Meeting.

Falls eine Antwort auf die Daily-Standup-Frage vergessen wurde, wird einige Zeit später noch mal - natürlich automatisch - nachgehakt.

Screenshot: Robothomas erinnert an unser Daily-Standup-Meeting.

Natürlich kennt Robothomas auch unseren Terminkalender aus Nextcloud und erinnert rechtzeitig im entsprechenden Slack-Kanal an bevorstehende Termine. Hierbei werden nur betroffene Mitarbeiter erwähnt und auch eventuelle Urlaube berücksichtigt.

Screenshot: Robothomas erinnert an Termine.

Durch unser "Remote work"-Konzept kann es vorkommen, dass wir Termine in einer nicht-deutschen Zeitzone erstellen und das nach unserer Rückkehr zu Problemen führt. Um diesen Umstand entgegenzuwirken, weißt Robothomas auf entsprechende Ungereimtheiten hin.

Screenshot: Robothomas prüft die Zeitzone von Terminen.

Natürlich kann Robothomas auch von Mitarbeitern gesteuert werden, wenn es mal schnell gehen muss. In diesem Beispiel wurde das Aktualisieren und Prüfen aller offenen Pull-Requests manuell gestartet.

Screenshot: Robothomas hört auf Befehle.

Da wir auch Urlaubsanträge über unser Projektmanagement-Tool JIRA abwickeln, kann Robothomas vollautomatisch einen passenden Text für die einzustellende Abwesenheits-E-Mail vorschlagen und akzeptierte Urlaube natürlich auch automatisch in unsern Team-Kalender eintragen.

Screenshot: Robothomas schlägt Autorespnder-Texte vor.

Leider bietet unser Telefonanlagen-Anbieter Fonial derzeit keine Schnittstelle zum Steuern unserer Bandansage. Darum schaffen wir uns zumindest insofern Abhilfe, dass Robothomas automatisch Tickets erstellt, um unsere Telefonanlage so zu konfigurieren, dass Mitarbeiter in ihren Urlauben nicht erreichbar sind respektive der Anruf an einen anderen Mitarbeiter weitergeleitet wird.

Screenshot: Robothomas verwaltet die Wartung unserer Telefonanlage.

Sobald der Urlaub akzeptiert wurde, wird ein entsprechender Eintrag in unserem Projektplan vorgenommen. So wird sichergestellt, dass der entsprechende Mitarbeiter in seinem Urlaub nicht in Projekten eingeplant wird.

Screenshot: Robothomas pflegt unseren Projektplan.

Fazit

Wir haben es bisher erfolgreich vermieden, einen dedizierten Projekt-Manager im Team zu haben, da jedes Mal, wenn dieser erforderlich geworden wäre, eine neue Evolutionsstufe unserer Automatisierung eingeführt wurde. Das tiefgreifendere Projektmanagement erledigen unsere Entwickler jeweils selbst. Generell ist ein Learning: Selbst die kleinste und im ersten Moment sinnlos erscheinende Änderung schafft Inspiration und Codebasis für neue, viel mächtigere Automatismen.

Die initiale Investition ist hoch, an allen Ecken und Enden müssen Schnittstellen geschaffen werden. Sind diese aber dann implementiert, können darauf aufbauende Automatismen in sehr kurzer Zeit eingeführt werden. Ich spreche eine klare Empfehlung für diesen Schritt aus. Nur so kann dafür gesorgt werden, dass der Frust durch nicht-wertschöpfende Arbeit gering und der Spaß an der Arbeit selbst hoch bleibt.

Im nachfolgenden Chart habe ich alle Kommentare in unserem Projektmanagement-Tool JIRA der letzten drei Jahre auf Quartalsbasis dargestellt. Man kann neben dem Sommerloch im dritten Quartal 2021 gut erkennen, wie Robothomas sich mit jedem Monat mehr in die Kommunikation einklinkt, während die Zahl der von Menschen geschriebenen Kommentare stagniert, zur Mitte des Jahres 2021 sogar etwas abgenommen hat.

Daraus interpretiere ich, dass unsere Automationen auch ausreichend Wissen und Informationen vermitteln und manuelle Rückfragen ersetzt. Dass die Robothomas-Kommentare generell zunehmen, liegt neben neuen Funktion schlichtweg auch an unserem Personalwachstum.

Entwicklung Kommentare Robothomas vs. Rest des Teams

Teilen

Kommentare