Eins der fundamentalsten Probleme in jedem Projekt ist natürlich die durchgehende Versorgung mit Kaffee. In allen großen Unternehmern hat man dies bereits erkannt; so stehen z.B. bei SAP(ple) Automaten für den unstillbaren Bedarf an Kaffee, Latte-Macchiato, Kaffee-Latte, Espresso, Espresso-Latte, usw. usf. auf jeder Etage bereit. Interne Untersuchungen ergaben, dass dadurch die Produktivität um atemberaubende 83% gesteigert werden konnte (ebenso wie die Benutzung der WCs).
Leider steht unserem Projekt am HPI kein Automat zur Verfügung; der Kaffee muss also auf umständliche, konventionelle Art "gebraut" werden. Dass darauf niemand Lust hat, versteht sich natürlich von selbst.
Der Bedarf ist groß, eine Lösung musste her. Mit reichlich Kreativität und noch mehr Post-Its ausgestattet gelang es uns sehr schnell ein geniales und unkompliziertes System zu entwickeln, das allen Ansprüchen gerecht wird: das Kaffee-Token-System, eine Erweiterung des Round-Robin-Scheduling-Algorithmus, welches im Folgenden kurz erläutert werden soll.
Es gibt vier Arten von Token:
- Der Kaffee-Token. Der wichtigste Token, es gibt nur eine Instanz - gewissermaßen ein Singleton, für die Nerds unter uns. Der Token zeigt an, welches Teammitglied die nächste Kanne Kaffee herstellen muss, sobald Bedarf auftritt (sprich: sobald jemand den Projektraum betritt). Danach wird der Token an das nächste Teammitglied weitergereicht (es gibt also eine feste Reihenfolge).
- Der Joker-Token. Ebenfalls einfach vorhanden. Schnell fiel uns auf, dass es gewissermaßen zu einem Deadlock kommt, sobald die Person mit dem Kaffee-Token nicht anwesend ist. Falls sich einer der Anwesenden aufgrund des zügig fortschreitenden Koffeinmangels daraufhin erbarmt und selbst den Kaffee kocht, bekommt er den Joker-Token gutgeschrieben. Sobald er das nächste mal den Kaffee-Token bekommen würde, wird dieser sofort weitergereicht und der Joker-Token wird entfernt.
- Negativ-Token. Im oben beschriebenen Fall könnte es natürlich auch passieren, dass niemamd freiwillig den Kaffee braut. Dann wird der Kaffee-Token weitergereicht bis zum ersten anwesenden Teammitglied, das dann gezwungenermaßen, zähneknirschend den Mangel beheben muss. Alle "übersprungenen" bekommen dann einen Negativ-Token. Sobald jemand einen Negativ-Token hat und anwesend ist, muss er die nächste Runde besorgen, egal wer aktuell im Besitz des Kaffee-Tokens ist. Ein Team-Mitglied kann auch mehrere Negativ-Token besitzen, muss aber laut Regel nicht zwei Kaffee-Runden direkt hintereinander kochen, um diese wieder abzubauen.
- Schnorrer-Token. Mit dem überlegenen Token-System ist die Kaffee-Versorung zu fast jeder Zeit sichersgestellt; das sprach sich natürlich rum, so dass wir nach kurzer Zeit regelmäßig
BesucherSchnorrer bei uns im Projektraum hatten, welche Kaffee konsumierten, ohne an der Versorgung teilzunehmen. Um dem Abhilfe zu schaffen, wurden die Schnorrer-Token eingeführt. Ein Besucher, der an einer Kaffee-Session teilnimmt, bekommt einen Schnorrer-Token vorgemerkt. Sobald ein Besucher sieben Schnorrer-Token gesammelt hat, muss er selbst eine Kanne kochen.
Wie ihr seht, ist das Token-System genial und einfach zugleich; wir überlegen bereits es zu patentieren. Zugleich verbessern wir die Regeln natürlich ständig.
Falls ihr Bugs findet, könnt ihr diese gerne in den Kommentaren mitteilen; wir werden versuchen diese bis zum nächsten Release zu fixen.
1 Kommentar:
Also wir vom eSOA Bachelorprojekt haben ja auch die Problemlage erkannt und uns einen Kaffeevollautomaten bestellt :P
Wer es nicht glaubt, kann gern vorbei kommen und das Gerät bei einer Runde kicker bewundern.
Kommentar veröffentlichen