Jeden Tag entstehen für ein Dienstleistungsunternehmen je nach Anzahl der Mitarbeiter hunderte von Arbeitszeitbuchungen, die zu einem späteren Zeitpunkt den Kunden in Rechnung gestellt werden müssen. Dabei ist sicherzustellen, dass die Arbeitszeitbuchungen auch tatsächlich abgerechenbar sind und den richtigen Kundenaufträgen und Leistungsarten zugeordnet werden. Das hört sich nach viel manuelle Arbeit an. Aber das muss es nicht sein. In diesem Artikel werden wir Dir aufzeigen, wie Du diese Aufgabe mit foreknown einfach bewältigen kannst.

Eine der Kernaufgaben von foreknown ist es, sämtliche Arbeitszeitbuchungen, die in Jira, Tempo Time Sheets (Jira plugin) oder direkt in foreknown erfasst wurden, auf Basis von individuellen Regeln in abrechenbare und nicht abrechenbare Leistungen zu überführen. Aber bevor wir dazu ins Detail gehen zuerst noch ein paar Grundlagen.

Arbeitszeiten & Leistungen

In foreknown wird zwischen Arbeitszeiten und daraus resultierenden Leistungen unterschieden. Diese klare Trennung hat mehrere gute Gründe:

  1. Arbeitszeitbuchungen dienen nicht nur der Erzeugung von Leistungen, sondern dienen auch der Vollzeiterfassung und somit der Pflege eines Arbeitszeitkontos, um Über- bzw. Unterstunden zu erkennen.
  2. Die Dauer der abrechenbaren Leistungen weicht schon mal von der Dauer der Arbeitszeitbuchungen ab,
    1. da manche Arbeitszeitbuchungen ggf. nicht oder nur teilweise dem Kunden in Rechnung gestellt werden sollen.
    2. da Rundungsregeln bei der Übernahme von Arbeitszeitbuchungen (z.B. Abrechnung immer in vollen 15 Minuten) angewendet werden.
    3. da Tagesätze, wo z.B. aus 7 Stunden gebuchter Arbeitszeit eine Leistung zu einem vollen Tagessatz resultiert, verwendet werden.

Somit ist es sinnvoll, Arbeitszeitbuchungen von Leistungen zu trennen, um die Grundlage einer Leistung jederzeit wieder nachvollziehen zu können.

Regeln - Das Bindeglied

In foreknown stellen wir Regeln bereit, die als Bindeglied zwischen Arbeitszeiten und auftragsbezogenen Leistungen dienen. Sie stellen sicher, dass die Arbeitszeitbuchungen aller Mitarbeiter aus allen relevanten Projekten und Aufgaben zu Leistungen werden, die wiederum den richtigen Aufträgen, Auftragspositionen und Leistungsarten zugeordnet sind. Aber wie funktionieren eigentlich die Regeln in foreknown?

Leistungsübernahme für Arbeitszeiten

Um die Funktionsweise zu verstehen, müssen wir zuerst etwas ausholen. Die grundlegende Aufgabe lautet, über sämtliche Eigenschaften einer Arbeitszeitbuchung die erforderlichen Kriterien zu identifizieren, um diese eindeutig einem Auftrag, einer Auftragsposition und einer Leistungsart zuordnen zu können. Damit möglichst viele Eigenschaften zur Verfügung stehen, haben wir an jeder Arbeitszeitbuchung sogenannte "Labels" angefügt, die sich aus der zugeordneten Aufgabe ergeben.

  1. Projekt: Projektkürzel aus Jira oder auch aus in foreknown angelegten Projekten z.B. Project:ABC
  2. Aufgabentyp: Typ der Aufgabe z.B. Type:Epic, Type:Task, Type:Story, ...
  3. Epic: ID des übergeordneten Epics aus Jira, wo die Aufgabe zugeordnet ist (bei SCRUM Projekten) z.B. Epic:ABC123
  4. Sprint: Name des Sprints aus Jira, wo die Aufgabe zugeordnet ist (bei SCRUM Projekten) z.B. Sprint:KW23-2022
  5. Release: Name des Releases aus Jira, wo die Aufgabe zugeordnet ist (bei SCRUM Projekten) z.B. Release:Version-1
  6. Priorität: Name der Priorität aus Jira, die der Aufgabe zugeordnet ist z.B. Priority:Medium
  7. Aufgabe: ID der Aufgabe, auf die gebucht wurde z.B. Task:ABC002
  8. Tempo-Account: ID des Tempo-Accounts aus Jira z.B. Account:XYZ

Weiterhin werden alle an der Jira Aufgabe hinterlegten Labels 1:1 mit übernommen. Auf diese Weise kannst Du auch eigene Labels oder auch von foreknown mit besonderen Funktionen versehende Labels zusätzlich einsetzen. Darauf kommen wir später noch mal zurück.

Regeln anwenden

Mit Hilfe der Labels und dem Mitarbeiter einer Arbeitszeitbuchung stehen nun jede Menge Informationen zur Verfügung, um eine eindeutige Zuordnung zu gewährleisten. Bevor wir beispielhaft zeigen, wie eine Detailregel aufgebaut sein kann, noch eine wichtige Information.

Jedes Projekt, dass in foreknown bzw. über Jira in foreknown erstellt wurde, erhält automatisch eine sog. Grundregel zugeordnet. Diese Grundregel stellt schon mal sicher, dass alle Arbeitszeiten von Aufgaben des Projekts über das o.g. Label Project:<Projektkürzel> in diese Grundregel reinfließen. Anschließend gilt es, die nötigen "Detailregeln" zu definieren. Der nachfolgende Dialog zeigt die Einstellungsmöglichkeiten einer Detailregel.

Erstellen von Detailregeln für die Leistungsübernahme von Arbeitszeiten

Eine Detailregel nutzt die Labels, die an einer Arbeitszeitbuchung hinterlegt sind und kann definierte Labels mit einer ODER- oder UND-Verknüpfung auf Existenz prüfen. Die Detailregel greift, wenn ein oder ggf. auch alle ausgewählten Labels an einer Arbeitszeitbuchung vorhanden sind. Darüber hinaus können aber noch Einschränkungen auf Mitarbeiter- bzw. Berechtigungsgruppenebene gemacht werden. Anschließend wird noch die gewünschte Auftragsposition und Leistungsart ausgewählt und fertig ist die Detailregel.

Beispiel

Alle Arbeitszeiten, die auf das Epic "ABC123" und deren Unteraufgaben fließen, sollen auf die Auftragsposition "Shop Entwicklung" laufen. Dabei sollen Mitarbeiter Max und Marina als Junior Entwickler und Moritz als Senior Entwickler gebucht werden.

Es müssen dafür 2 Regeln definiert werden, die wie folgt aussehen:

  1. Option "Diese Regel greift, wenn mindestens eines der nachfolgenden Labels vorhanden ist" aktivieren
  2. Labels: Task:ABC123, Epic:ABC123 auswählen
  3. Auftrag, Auftragsposition: wie gewünscht auswählen
  4. Leistungsart: Junior Entwickler
  5. Mitarbeiter: Max, Marina auswählen

Die zweite Regel unterscheidet sich von der ersten Regel lediglich durch die Leistungsart (Senior Entwickler) und die Mitarbeiter (Moritz)

Sämtliche Detailregeln sind in der Reihenfolge sortierbar und werden auch in der definierten Reihenfolge angewendet.

Besonderheiten

Es gibt ein paar besondere Anwendungsfälle bei den Regeln, die wir an dieser Stelle einmal aufzeigen wollen.

Die Fallback-Option

Die Option "Diese Regel greift, wenn keine der vorgelagerten Detailregeln angewendet werden konnte" dient dazu, einen Fallback für alle Arbeitszeitbuchungen zu schaffen, die durch sämtliche Detailregeln durchgefallen sind. Es erklärt sich von selbst, dass diese Detailregeln immer am Ende der Liste stehen müssen. Es können auch mehrere Detailregeln von diesem Typ existieren, wenn man z.B. einen Fallback pro Mitarbeiter oder Berechtigungsgruppe definiert.

Auf diese Weise stellt man sicher, dass immer alle Arbeitszeitbuchungen zugeordnet werden können. Es ist aber zu beachten, dass die vorgelagerten Detailregeln auch immer alle gewünschten Fälle abdecken.

Standardregeln verwenden

Für eine Grundregel kann festgelegt werden, dass sogenannte Standard-Labels für die Zuordnung von Arbeitszeiten auf Auftragspositionen und Leistungsarten ausgewertet und angewendet werden.

  1. Order: -
  2. Service: <Leistungsart-Kürzel>

Wenn Du z.B. an jeder Aufgabe bereits die o.g. zwei Standard-Labels zuordnest, so können alle Arbeitszeitbuchungen dieser Aufgabe automatisch einer Auftragsposition und Leistungsart zugeordnet werden.

Das ist allerdings nur dann sinnvoll möglich, wenn jede einzelne Aufgabe so geschnitten ist, dass Tätigkeiten an dieser Aufgabe sich auf eine Auftragsposition und Leistungsart beziehen. Sobald mehrere Leistungsarten z.B. Junior und Senior Entwickler auf eine Aufgabe Arbeitszeiten buchen, wäre eine eindeutige Zuordnung nicht mehr gewährleistet.

Leistungsart aus der Tätigkeitsbeschreibung identifizieren

Für deine Detailregel kann auch noch eine Checkbox "Leistungsart aus der Tätigkeitsbeschreibung identifizieren" aktiviert werden. Aktiviere diese Checkbox, um in der Tätigkeitsbeschreibung nach einer Leistungsart über einen Prefix <Leistungsart-Kürzel>:… oder Postfix (<Leistungsart-Kürzel>) suchen zu lassen. Eine auf diese Weise identifizierte Leistungsart überschreibt die zuvor ausgewählte Leistungsart.

Wenn also ein Junior Entwickler an einer Aufgabe arbeitet, so setzt dieser in der Tätigkeitsbeschreibung z.B. ein Postfix "Dialog umgesetzt (J-ENT)" und ein Senior Entwickler würde "...(S-ENT)" setzen. Diese Kürzel ergeben sich aus den an den Leistungsarten in foreknown hinterlegten Kürzeln und sorgen somit für die korrekte Zuordnung einer Leistungsart.

Diese Option setzt somit voraus, dass jeder Mitarbeiter bei der Buchung seiner Arbeitszeit immer an das Prä- bzw. Postfix denkt und es korrekt eingibt.

Berechtigungsgruppen

Eine Detailregel kann auch auf bestimmte Mitarbeiter eingeschränkt werden. So könnte eine Regel dafür sorgen, dass alle Junior Entwickler auf die entsprechende Leistungsart "Junior Entwickler" gebucht werden. Dafür können alle betroffenen Mitarbeiter der Regel einzeln zugeordnet werden. Möchte man allerdings sicherstellen, dass in allen betroffenen Detailregeln immer die richtigen Mitarbeiter berücksichtigt werden, kann man auch eine oder mehrere Berechtigungsgruppen zuordnen.

Wenn also im Unternehmen jeder Mitarbeiter eindeutig einer Leistungsart zugeordnet werden kann, so könnte man pro Leistungsart eine Berechtigungsgruppe erstellen (über System Administration möglich) und dieser Berechtigungsgruppe die entsprechenden Mitarbeiter zuordnen. Im nächsten Schritt kann dann die Berechtigungsgruppe einer Detailregel zugeordnet werden und schon würden alle relevanten Mitarbeiter für diese Detailregel berücksichtigt werden.

Das hat auch den großen Vorteil, dass man zentral an einer Stelle Mitarbeiter hinzufügen bzw. entfernen kann und es würde automatisch alle Detailregeln, die diese Berechtigungsgruppe verwenden sich aktualisieren.

Fazit

Die Regeln in foreknown stellen ein mächtiges Werkzeug dar, um mit wenig Aufwand viele Arbeitszeitbuchungen korrekt auf Aufträge, Auftragspositionen und Leistungsarten zuordnen zu können. Doch bevor man seine invidiuellen Regeln erstellt, sollte man sich Gedanken darüber machen, wie Projekte mit Ihren Aufgaben z.B. in Jira strukturiert werden und welche Informationen bereits bei der Erstellung von Aufgaben für foreknown bereitgestellt werden können. Denn diese Informationen haben maßgeblichen Einfluss auf die Gestaltung der Detailregeln.

Ist das Regelwerk aber erst einmal definiert, spielt es keine Rolle mehr, wie viele Arbeitszeitbuchungen zu bewältigen sind, da eine Zuordnung zu Aufträgen weitestgehend automatisiert stattfinden kann. Das erleichtert nicht nur die Tätigkeiten des Projekt Managers, sondern führt auch zu aktuellen Kennzahlen am Projekt, Auftrag, Team und Unternehmen, wodurch frühzeitig positive und negative Entwicklungen erkennbar werden.