Das Projektmanagement in Agenturen ist aufgrund der Vielzahl der Beteiligten eine komplexe Herausforderung. Bekannte Projektmanagementsysteme sind mit ihren Standardeinstellungen dafür nicht ausgelegt. Klassische Agentursoftware wiederum bietet oft nicht die gewünschte Flexibilität.
In diesem Artikel zeigen wir Ihnen aus unserer eigenen Erfahrung bei a coding project, wie Sie mit Jira und Scrum Ihre Workflows optimal für das Agenturgeschäft einrichten.
Hoher Kommunikationsaufwand durch viele Stakeholder
Zeitpläne können sich auf Grund von Prioritätsänderungen durch Kunden schnell ändern
Ein Team betreut mehrere Projekte parallel
Im Projektmanagement von Agenturen werden in der Regel mehrere Projekte parallel bearbeitet. Um dennoch auf einen Blick zu sehen, welche Aufgaben gerade offen sind, gibt es die Möglichkeit, ein Metaprojekt anzulegen.
Im Metaprojekt werden die Aufgaben der untergeordneten Kundenprojekte gesammelt angezeigt.
In Jira können Sie hierzu zunächst ein reguläres Projekt anlegen. Als Projekttyp können Sie "Scrum" wählen.
Im nächsten Schritt können Sie einen neuen Filter anlegen, mit dem Sie die zum Metaprojekt gehörigen Aufgaben anlegen. Dazu können Sie in Jira auf Filter > Alle Filter anzeigen > Filter erstellen klicken.
Filtern Sie die Projekte heraus, die nicht zu den Kundenprojekten gehören. Das könnte zum Beispiel die Buchhaltung sein.
Nachdem Sie den Filter gespeichert haben, können Sie das Projekt in Jira öffnen. Klicken Sie dann auf "Board konfigurieren":
Unter Filter > Gespeicherter Filter können Sie nun ihren zuvor angelegten Filter auswählen:
Zur besseren Übersicht können Sie unter "Swimlanes" zusätzlich eine Swimlane auf Basis "Projekte" erstellen. Dadurch werden die einzelnen Aufgaben im Board nach Projekten gruppiert.
Wenn Sie nun das Board öffnen, sehen Sie die Tasks aller aktiven Sprints gruppiert nach Kundenprojekten. So haben Sie auf einen Blick einen kompletten Überblick über alle wichtigen Kundenprojekte und müssen sich nicht mehr durch jedes einzelne Projekt klicken.
Unser Workflow für die Kundenprojekte besteht aus mehreren Phasen:
Zu Erledigen: Die Arbeit wurde noch nicht begonnen
In Arbeit: Eine Person ist gerade dabei die Aufgabe umzusetzen. In FeatValue bekommen die Auftraggeber automatisch eine E-Mail, wenn der Status auf "In Arbeit gesetzt wird". Dies ist vor allem bei dringenden Themen hilfreich, um den Kunden die Sicherheit zu geben, dass bereits an einem Problem gearbeitet wird.
QA (Quality Assurance): Die Aufgabe befindet sich in Prüfung eines anderen Mitarbeiter. Als Agentur für Softwareentwicklung ist das in diesem Status vor allem ein anderer Entwickler, der in einem Merge-Request den Code und das Verhalten entsprechend prüft.
QA PM: Hier wird die Aufgabe zusätzlich von einem Nicht-Entwickler geprüft. Dabei wird vor allem darauf geschaut, dass die Anforderungen des Kunden auch korrekt umgesetzt wird. Nicht jede Aufgabe durchläuft diesen Status. z.B. wird er bei der Korrektur von Fehlern oft übersprungen.
Bereit zur Abnahme: Der Kunde erhält über FeatValue eine E-Mail und kann die Aufgabe entsprechend prüfen. In Jira kann dem Kunden über die FeatValue-Erweiterung ein Hinweis zum Testen gegeben werden. Der Prüfprozess erspart uns viele E-Mails und bringt Übersicht über den aktuellen Stand. Wenn die Aufgabe nach einigen Tagen nicht vom Kunden überprüft wurde, wird sie automatisch auf erledigt gesetzt und der Kunde kann die Aufgabe bei Bedarf erneut öffnen. Dies sorgt für zusätzliche Übersichtlichkeit.
Fertig: Wenn der Kunde die Aufgabe geprüft hat, wird die Aufgabe auf Fertig gesetzt. Sollte etwas korrigiert werden, geht sie zurück auf "In Arbeit".
Feedback: Das ist ein Status, wenn etwas unklar ist. Hier wird ggfl. Kontakt zum Kunden aufgenommen. Über FeatValue lässt sich die Aufgabe kommentieren. Der Kunde wird auch dazu entsprechend benachrichtigt.
Die Kommunikation mit den Kunden nimmt im Projektmanagement relativ viel Zeit in Anspruch. Die Kommunikation kann man grob in folgende Bereiche aufteilen:
Kundenanfragen in Aufgaben gliedern und in Jira einpflegen
Kommunikation von Zeitplänen und Arbeitsfortschritt
Feedback-Schleifen
Kunden beraten
Nur die Beratung ist wirklich wertschöpfend. Die anderen Bereiche sind in erster Linie Mittel zum Zweck - hier ist dem Kunden und der Agentur geholfen, wenn der Aufwand in diesen Bereichen so gering wie möglich gehalten wird und dadurch die Beratung mehr in den Vordergrund rückt.
Um den Aufwand zu reduzieren haben wir hier zunächst auf Service Desks gesetzt. Dabei können sich Kunden Aufgaben anlegen und sich den aktuellen Status ansehen.
Das Problem mit Service Desks war jedoch, dass sie hauptsächlich für Servicefälle (z.B. im B2C-Bereich) konzipiert waren. Das bedeutet, dass ein Kunde nur wenige Aufgaben hat. Da unsere Kunden aber in der Regel hunderte von Tasks haben, stießen wir irgendwann an unsere Grenzen und die Übersichtlichkeit ging verloren.
Aus diesem Grund haben wir FeatValue gegründet, was sich vor das Projektmanagement-System schaltet und den Kunden eine eigene Oberfläche bietet. FeatValue kann in größere Projektmanagementsysteme integriert werden. So kann man als Agentur in seinem gewohnten Workflow weiterarbeiten, aber relativ einfach Kunden einbinden.
Der Fokus von FeatValue liegt vor allem auf Projekte, in dem Unternehmen langfristig zusammenarbeiten. Der Kunde hat jederzeit einen Überblick über die Aufgaben und sieht auch, wann diese zeitlich eingeplant ist. Die zeitliche Planung wird dabei aus den Jira-Sprints ausgelesen.
Die Aufwandsschätzung im Agenturprozess ist immer etwas schwierig. Die Kunden hätten gerne genaue Schätzungen in Stunden oder am Ende in Euro. Wird eine Aufgabe zu niedrig geschätzt, kann das schnell zu Konflikten führen. Wird sie zu hoch geschätzt, kann der Kunde abspringen.
Um möglichst gute Schätzungen zu erhalten, lohnt es sich, ein sogenanntes "Planning Poker" durchzuführen. Dabei schätzt jedes Teammitglied den Aufwand der Aufgabe. Am Ende werden die Schätzungen verglichen und diskutiert, warum eine Aufgabe länger oder kürzer dauert. Man einigt sich gemeinsam auf den endgültigen Aufwand.
Je nach Erfahrung des Mitarbeiters in diesem Bereich wird die Aufgabe nun schneller oder langsamer umgesetzt. Aus diesem Grund wird bei Scrum nicht in Stunden, sondern in Storypunkten geschätzt. So werden die Aufgaben in Relation zueinander gesetzt und schwierigere Aufgaben erhalten mehr Punkte als einfachere. Bei a coding project verwenden wir dazu die Fibonacci-Folge (0,1,3,5,8,13,21,34,55,...). Die Punkte pro Aufgabe liegen bei uns normalerweise zwischen 0 (Aufgabe bereits erledigt) und 55 (extrem schwierig).
Zu Beginn haben wir bei a coding project die Storypunkte wöchentlich in einem Meeting besprochen. Dazu hatten wir PlanningPokerOnline genutzt. Im Agenturgeschäft gibt es aber oft eine Vielzahl von Aufgaben, so dass diese Vorgehensweise sehr viel Zeit in Anspruch nahm, da entsprechend viele Teammitglieder im Boot waren.
Mittlerweile läuft unser Planning Poker zweimal die Woche asynchron. Dazu nutzen wir die Jira-Erweiterung Agile Poker. Die Mitarbeiter bekommen dabei eine E-Mail und können die Storypunkte schätzen, wenn sie zwischendurch ein paar Minuten Zeit haben. Zu der Schätzung kann bei Bedarf auch noch ein Kommentar eingegeben werden, warum die Zeit z.B. höher oder niedriger ausfällt.
Das Planning Poker führen wir dabei auf das Meta-Projekt aus, sodass eine Schätzungsrunde über alle Projekte läuft.
Am Ende werden in der Erweiterung alle Schätzungen der Mitarbeiter angezeigt und der Projektmanager kann entscheiden, welche Punkte am Ende genommen werden. Zum einen wird dabei auf dem Durchschnitt geachtet, zum anderen werden aber auch Schätzungen von Personen stärker gewichtet, die länger am jeweiligen Projekt arbeiten.
Durch das asynchrone Vorgehen, geht etwas an Genauigkeit verloren, da die Diskussion in großer Runde wegfällt. Allerdings sind wir von ca. 2 Stunden pro Mitarbeiter für Schätzungen auf ca. 10 Minuten gekommen. Hier lohnt es sich etwas auf die Balance zwischen Genauigkeit und Aufwand zu achten.
Wie bei Scrum üblich, arbeiten wir auch in der Agentur mit Sprints. Ein Sprint ist ein festes Zeitintervall, in dem geplante Aufgaben umgesetzt werden. Jeder Sprint umfasst eine bestimmte Anzahl von Storypoints.
Im Gegensatz zu einem Inhouse-Projekt gibt es bei Agenturen oft feste Abrechnungszeiträume, was auch bei a coding project der Fall ist. Aus diesem Grund arbeiten wir mit halbmonatigen Sprints. So können wir am Ende einer monatlichen Abrechnungsperiode die Aufgaben entsprechend abschließen.
Am Anfang haben wir einfach ausprobiert, wie viele Story Points in einen Sprint passen. Die Punkte nehmen dabei ab, je weiter der Sprint in der Zukunft liegt. So haben wir regelmäßig die Möglichkeit, auch dringende Themen einzubringen.
Aktuell sind wir dabei, die Sprintplanung komplett zu automatisieren. Mehr dazu finden Sie am Ende des Artikel unter "Ausblick".
Im Daily Standup bringen wir uns täglich um 9:45 gegenseitig auf den neuesten Stand. Jeder erzählt, was er gestern gemacht hat und was heute ansteht. Wenn es dringende Themen gibt, werden diese auf die Tagesordnung gesetzt. Wenn es Klärungsbedarf gibt, werden Meetings für die Zeit danach geplant. Das Stand-up dauert bei uns ca. 10 Minuten und bringt alle im Team in kurzer Zeit auf den neuesten Stand.
Wir dokumentieren unser Standup mit Confluence. Wir haben dort ein Dokument pro Sprint, dem wir jeden Tag einen neuen Abschnitt hinzufügen. Durch die Verlinkung der Aufgaben sieht man direkt, wie der Status ist.
Unter "Zu klären" legen wir in der Vorbereitung Themen an, die mit dem jeweiligen Mitarbeiter kurz abgestimmt werden müssen (z.B. Kundenfeedb
Derzeit befinden wir uns in der Testphase der automatisierten Sprintplanung. Dabei werden die Aufgaben auf Basis der geplanten Kapazitäten und Kundenprioritäten automatisch in Sprints eingeteilt.
Der Algorithmus berechnet, wie lange eine Aufgabe voraussichtlich dauern wird und passt den Zeitplan innerhalb eines Sprints bei Abweichungen automatisch an. Dabei greift es auf die Zeiterfassung zu. In unserem Fall ist das Toggl Track.
Auf diese Weise können sich die Kunden selbst in die Planung einbringen und kurzfristig mitbestimmen, wann welche Aufgabe umgesetzt wird. Innerhalb der Agentur wird das Projektmanagement dadurch erheblich vereinfacht. Die eingesparte Planungszeit können wir dann für eine bessere Beratung nutzen.
Effizientes Projektmanagement ist sehr wichtig für den Erfolg einer Agentur und die Zufriedenheit ihrer Kunden. Aus unseren Erfahrungen und dem Feedback unserer Kunden haben wir FeatValue entwickelt. Wenn Sie selbst Inhaber einer Agentur sind oder im Projektmanagement arbeiten, würden wir uns über einen Austausch mit Ihnen sehr freuen. Kontaktieren Sie uns einfach per E-Mail oder LinkedIn oder probieren Sie FeatValue selbst aus.