Aufgaben abarbeiten – was die die beste Strategie?
Wir alle haben jeden Tag eine Fülle von Aufgaben zu erledigen. Einige bekommen das sehr gut hin und antworten z.B. immer schnell auf Anrufe oder E‑Mails, schreiben Konzepte oder Artikel in der vorgegeben Zeit und schaffen auch sonst sehr viel offenbar mit spielender Leichtigkeit. Andere verzetteln sich – man bekommt lange keine Rückmeldung oder muss ewig oft nachfragen.
Darin unterscheiden sich Menschen erstmal gar nicht so sehr von einem Hauptprozessor in einem Computer. Es stehen auch dort begrenzte Ressourcen zur Abarbeitung von Aufgaben zur Verfügung. Es gibt unterschiedliche Strategien, wie ein Betriebssystem mit Bearbeitungszeit „umgeht“. Das nennt sich dort „Scheduling“. Lässt sich davon vielleicht etwas lernen für den eigenen Alltag? Sind vielleicht sogar Alltagsüberlegungen mit in Betriebssystemarchitekturen eingeflossen?
Vier gängige Verfahren von sogenanntem „Task-Scheduling“ sind unten einmal visualisiert. Ich idealisiere in einem ersten Schritt einmal und nehme an, dass zu einem Zeitpunkt x sämtliche Aufgaben T für einen Tag bereits vorliegen. Die Aufgaben T1 bis T5 benötigen unterschiedliche Zeiteinheiten (E), um erledigt werden zu können. Die Wartezeit meines Gegenübers auf die Erledigung einer Aufgabe ist durch einen grünen Pfeil symbolisiert. Eine weitere Idealisierung besteht darin, dass während der gesamten Bearbeitungszeit keine Unterbrechungen auftreten.
Strategie 1: First in, first out
Dazu sortiere ich mir die Aufgaben nach der Zeit ihres Eintreffens. Die von Freitagabend kommen vor denen von Sonntagmittag, wenn ich am Montag im Büro sitze. Wir schauen uns jetzt mal die Wartezeiten an, die meine Gegenüber haben, wenn ich nach diesem Prinzip arbeite. Alle Wartezeiten (grüne Pfeile) addieren wir zusammen. Das sind in unserem ersten grafischen Beispiel 39 Zeiteinheiten.
Strategie 2: Shortest Processing Time First
Hier passiert eine wesentliche Änderung: Ich sortiere mir die Aufgaben so, dass ich zunächst das erledige, was schnell geht. Man sieht es schon an der Länge der Pfeile: Die durchschnittliche Wartezeit sinkt drastisch, d.h. mehr meiner Gegenüber erhalten schneller von mir eine Antwort (26 Zeiteinheiten). An einem Alltagsbeispiel: Wenn man an einer Supermarktkasse immer diejenigen mit wenigen Teilen vorlässt und keine neuen Kunden zur Warteschlange hinzukommen, sinkt im Mittel die Wartezeit für alle. Übrigens sind wir Menschen in der Vorhersage, wie schnell etwas geht, einer Maschine meist überlegen.
Zwischenbilanz
Ein kurze mittlere Antwortzeit ist oft genau das, was mich nach außen hin als „organisiert“ erscheinen lässt. Intuitiv würden Menschen mir für komplexere Aufgaben auch mehr Zeit zugestehen. Wenn ich aber eine ganz kurze Frage lange liegen lasse, gelte ich schnell als langsam. Einen Computer würden wir auch als langsam empfinden, wenn so etwas vermeintlich Banales wie die Maus über den Bildschirm ruckelt. Dass gleichzeitig z.B. das Video im Hintergrund schneller gerendert wird, erfassen wir intuitiv nicht. Wir sind aber immer noch äußerst idealisiert unterwegs.
Strategie 3: Highest Priority First
Am Alltag etwas dichter dran ist die Strategie, nach Prioritäten zu sortieren. Je dunkler die Aufgabe T in der folgenden Grafik ist, desto höher ist ihre Priorität. Wenn wir die gleichen Annahmen machen wie für die beiden ersten Strategien (z.B. alle Aufgaben liegen am Tagesbeginn vor), ist das Ergebnis für die mittleren Antwortzeiten drastisch schlecht, was natürlich aber auch mit am konkreten Beispiel liegt. In der Tendenz lässt sich das aber durchaus verallgemeinern.
Wir stellen durch diese Strategie zwar die wichtigsten Auftraggeber:innen schnell zufrieden, zahlen das aber mit dem relativ hohen Preis, dass umso mehr Menschen lange auf unsere Antwort warten müssen.
Strategie 4: Preemptive Highest Priority First
Damit wir auch mal den Gegenpol sehen am Schluss noch mehr Realismus mit der Zusatzannahme, dass Aufgaben unterschiedlicher Priorität zu unterschiedlichen Zeiten über den Tag hinzukommen. Aufgaben höherer Priorität unterbrechen dabei die Abarbeitung niedriger priorisierter Aufgaben. Diese werden dann fortgesetzt, wenn alle „höherwertigen“ Aufgaben erledigt sind. Das sieht erstmal gut aus, scheint ziemlich optimal zu sein und kommt der Realität vielleicht am nächsten, aber da stecken auch wieder starke versteckte Idealisierungen und Probleme drin.
- Es ist wahrscheinlich, dass niedrigpriorisierte Aufgaben während der Abarbeitung höherpriorisierter Aufgaben kommen und nicht wie in meinem fiktiven Beispiel gleich bearbeitet werden, weil sie immer gerade da sind, wenn nichts zu tun ist. Dadurch steigen die im Mittel erforderlichen Antwortzeiten (x+1).
- Jeder Aufgabenwechsel ist ressourcenmäßig teuer. Man muss sich jedesmal neu eindenken, vor allem, wenn eine komplexe Aufgabe unterbrochen wird. Auch ein Betriebssystem muss Zustände von Prozessen sichern und wiederherstellen. Das kostet Rechenzeit.
- Immer neue Aufgaben mit hoher Priorität können Aufgaben mit niedriger Priorität verdrängen, sodass sie gar nicht mehr bearbeitet werden. Bei Betriebssystemen spricht man davon, dass Prozesse verhungern, im Alltag bleiben Verwaltungarbeiten gerne mal liegen – so wie Korrekturen (deren Priorität steigt aber mit der Zeit automatisch von alleine …).
Wie mache ich das?
Ich kombiniere SPF und PHPF. SPF sorgt dafür, dass Antwortzeiten kurz sind, PHPF lässt mich gegenüber für mich wichtigen Personen „gut“ dastehen. Weiterhin versuche ich, indirekte Kommunikationssituationen zu vermeiden. Wenn ich merke, dass jemand etwas für einen anderen bei mir lösen möchte, lasse ich die Anfrage entweder bewusst verhungern oder versuche, eine direkte Kommunikation zu etablieren. Indirekte Kommunikationssituationen sind sehr teuer, weil man die Bedürfnisse mehrerer Personen mitdenken muss.
Weiterhin vermeide ich in Arbeitsphasen Unterbrechungen bzw. versuche Menschen klar zu machen, wie problematisch Unterbrechung sind (spontanes Vorbeikommen, Telefonanrufe). Als Ausgleich schaffe ich Phasen, in denen ich klar signalisiere: „Ich bin bereit für ‚Wo ich dich gerade sehe …‘ “. Irgendwas an uns ist ja dann schon anders als bei einem Betriebssystem …