Breakpoint Wilson: Micro und Macro im Unternehmen

Was Entwickler von StarCraft lernen können
Kommentare

Es gibt Dinge, die man als Softwareunternehmen von Aufbaustrategiespielen wie StarCraft lernen kann. Betrachten wir die Sache mit dem Micro und Macro Game.

Dieser Breakpoint Wilson beginnt mit einem Geständnis: Mein Name ist Dennis Wilson, ich spiele seit 2011 StarCraft 2 online und bekomme immer noch regelmäßig in der Bronze-Liga den Hintern versohlt. Das könnte vor allem daran liegen, dass ich – realistisch betrachtet – gar keine fünf Jahre Spiel-Erfahrung habe, sondern mein erstes Jahr einfach viermal wiederholte. Das ist aber soweit nicht schlimm, da ich nach wie vor zur Unterhaltung spiele.

Spielen ist eine hervorragende Sache! Spielen ermöglicht einem nämlich, Prinzipien und Systeme in einem risikoarmen Kontext auszuprobieren. In meinem Fall verliere ich also höchstens den Glauben daran, irgendwann einmal Profispieler in einer koreanischen StarCraft-2-Liga zu werden. Dafür gewinne ich jedoch beispielsweise wesentlich spannendere Erkenntnisse zu Themen wie Cashflow, Investment und Skalierung. Wie unerwartet, oder?

StarCraft 2 für Softwareunternehmen

Ein weiterer wichtiger Punkt, den ich durch dieses Spiel verstanden habe, ist etwas, dass gerade in Unternehmen gerne schiefläuft. Konkret meine ich etwas, dass in der SC2-Welt „Micros & Macros“ genannt wird.

Setzt man Menschen, die bisher noch keine Erfahrung mit dem Genre haben, vor ein Strategiespiel, kann man etwas sehr Spannendes feststellen: Von dem Punkt an, an dem sie eine Produktionsstätte gebaut haben, lassen Sie ununterbrochen Einheiten produzieren.

Sie beginnen, den Einheiten vollkommene Aufmerksamkeit zu schenken. Sie produzieren wie wild und unkoordiniert immer weiter Einheiten. Blockweise, und ohne jegliche Gesamtstrategie. Sie fokussieren sich dafür intensiv auf Koordination und Platzierung ihrer Armee. Wie Sammlerschätze in einer Glasvitrine, wollen Sie jedem einen besonderen Platz zuweisen. Je mehr unterschiedliche Einheiten, desto besser!

Micro / Macro Gaming

Leider wird die wirtschaftliche Ebene oftmals als zweitrangig oder uninteressant betrachtet.

Im Jargon von StarCraft 2 nennt man die Koordination einzelner Einheiten oder kleinerer Gruppen „Micro Gaming“. Es scheint dem Spieler offensichtlich: In einer Schlachtfeld-Simulation müsse der Konflikt und somit die Einheiten im Mittelpunkt stehen. Falsch; das ist ein klassischer Anfängerfehler.

Anders als beispielsweise beim Schach existiert im zeitgenössischen Echtzeit-Strategie-Spiel neben der militärischen Ebene ebenfalls die wirtschaftliche Ebene. Diese ist sehr wichtig, weil sie das Fundament für einen stabilen Spielbetrieb bildet; es handelt sich um das Aufbauspiel.

Leider wird die wirtschaftliche Ebene oftmals als zweitrangig der uninteressant betrachtet. Doch ohne einen guten Cashflow und ohne geregelten Produktionsbetrieb wird es schwer werden, einen vernünftigen Impact im Spiel zu haben.

Falsch reagiert

Hat ein Spieler von StarCraft 2 die Macros nicht im Griff, passieren schlimme Dinge. Der Cashflow versiegt, die Einheitenproduktion stockt, und es werden zu viele Produktionsmittel gebunden. Als Gegenmaßnahme bauen Spieler oftmals panikartig mehr Rohstoff-Bagger, was zur Folge hat, dass neben den Produktionsmitteln nun ebenfalls die Konzentration des Spielers stark gebunden ist.

Nicht nur, dass panisches Nachbauen nichts bringt, ist die Aufmerksamkeit des Spielers vor allem bei der Basis und nicht mehr bei der taktischen Ebene. Sprich, es stehen jetzt alle Militär-Einheiten wie Schlachtvieh auf der Weide, und oftmals verpasst der Spieler nun den sich nähernden Gegner. Das eigene Spiel gerät mächtig aus dem Gleichgewicht und eine Niederlage ist sicher.

Möchte man also in der Bronze-Liga weniger oft versohlt werden oder sogar in höheren Ligen spielen, sollte man sich zuerst um ein solides Aufbauspiel kümmern. Dabei ist ein gesundes „Alltagsgeschäft“ ein besonders effektiver Hebel.

Der Oberbegriff für die großen Basics heißt „Macro Game“. Ziel eines jeden professionellen Spielers von StarCraft 2 ist es, das Macro Game möglichst sorgenfrei und im Schlaf zu beherrschen. Es ist zwar wichtig, aber soll im Alltag einfach nicht mehr von den spannenden Dingen ablenken. Somit kann sämtliche Konzentration auf Effektivität im taktischen Spiel verwendet werden.

Get Your Macros Right!

Wir verbeißen uns viel zu oft in kleinen, scheinbar offensichtlichen Dingen – die großen Hebel bleiben meist unberührt.

Was ich mit dieser Geschichte hervorheben möchte ist, dass die spannenden Dinge im Umfeld professioneller Softwareentwicklung nicht immer die wirklich wichtigen Dinge sind. Dokumentation und Tests stehen in den meisten Unternehmen weit hinter Features; ganz klar, diese bringen schließlich das Geld rein. Was aber, wenn die Feature-Produktion aufgrund eines schlechten Aufbau-Spiels einbricht?

In zu vielen Software-Unternehmen wird noch immer händisch deployed. Architekturelle und System-Dokumentation ist einfach nicht vorhanden. Ein sauberes, automatisiertes Testing-Konzept trifft man viel zu selten an. Stattdessen wollen in der Softwareentwicklung alle erstklassigen Code schreiben. Kunstwerke in die Welt setzen, die sie selbst und andere begeistern; für Arbeit gelobt werden.

Der scheinbar offensichtliche Weg dorthin ist für vielen Menschen Perfektionismus in den kleinen Dingen. Beispielsweise streitet man gerne wie um den Bart des Propheten, wenn es darum geht, ob zwei oder vier Tabs oder Spaces der Stein der Weisen ist. Wertvolle Meeting-Stunden werden damit verbracht, auf Semikolon-Ebene über Code Conventions zu diskutieren. Wir verbeißen uns einfach viel zu gerne in die kleinen, scheinbar offensichtlichen Dinge, dabei bleiben die großen Hebel leider regelmäßig unberührt.

Die Macro-Checkliste

Wie lässt sich das vermeiden? Es hilft ganz oft, gedanklich einige Schritte Abstand zur Sache zu gewinnen; eine Art Vogelperspektive auf das Projekt oder das Unternehmen zu bekommen. Je nach konkreter Situation kann man sich von dort aus sich beispielsweise Folgende Fragen stellen:

  • Wie kann ich mich im Vorfeld noch besser auf die wesentliche Arbeit konzentrieren? (Code Katas, IDEs beherrschen, Patterns kennen, Libraries nutzen)
  • Was passiert, wenn das komplette Team ausfallen würde? (Dokumentation? Frameworks? Standards?)
  • Wie schnell könnte ich einen Fehler einkreisen? (Logging, Tests, System-Trennung?)
  • Wie schnell wären wir wieder live, wenn morgen alle Server ausfielen? (Desaster Recovery? Resilience? Immutable Deployment?)
  • Wie viele händisch Schritte von wie vielen Menschen braucht der Prozess XY? (Automatisierung, Streamlining, Workload, Stau durch Feedback-Loops?)
  • Arbeite ich gerade an einer Symptom-Lösung oder behebe ich die tatsächliche Ursache? (Domänen-Wissen, System-Kenntnis, Big Picture)
  • Habe ich das Ziel wirklich verstanden? Gibt es alternative Ansätze, unser Ziel zu erreichen? (Umdenken, Querdenken)
  • Wie kann ich Kollegen Arbeit abnehmen? (Templates, Formulare, Vordrucke)

Diese Liste dient als Anregung. Wie bei den meisten guten und wirklich wirksamen Dingen im Leben handelt es sich auch hierbei vor allem um Themen, die man nicht vom Zaume brechen kann. Dennoch lohnt es sich, jeweils ein bestimmtes Thema über einen längeren Zeitraum im Auge zu behalten und eventuell sogar Verbesserungen einzuführen. Viel Spaß beim Angehen!

Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -