SCRUM ist kein Akronym, sondern wird vom englischen Wort für „Gedränge“ abgeleitet. Es bezeichnet eine Vorgehensweise bei der agilen Softwareentwicklung und im übrigen Projekt- und Produktmanagement, die erstmals Mitte der 1990er Jahre beschrieben wurde. Das Wort soll kennzeichnen, dass bei sehr komplexen Projekten die Teams und Ideen zeitweilig sehr gedrängt kooperieren und konkurrieren.
Bedeutung von SCRUM
SCRUM setzt das Lean Development im Projektmanagement (insbesondere bei der Softwareentwicklung) um. Durch die Einhaltung der Regeln erfolgt die Entwicklung schlanker und zielgerichteter. Es gibt nur wenige Regeln, die
- fünf Aktivitäten,
- drei Artefakte und
- drei Rollen
des SCRUM-Cores beschreiben. Es gibt einen Guide und dessen Kurzfassung, den Agile Atlas. Dort werden die Regeln beschrieben. Diese betreffen allerdings nur die Grundlagen. Jedes Unternehmen konkretisiert ein SCRUM-Framework, indem es Techniken entwickelt, um die definierten Regeln umzusetzen. Damit gilt SCRUM als Meta-Idee, die den Anwendern Freiheiten bei der Umsetzung lässt.
Diese Idee basiert auf dem Einbringen von Erfahrung (empirisch), der kontinuierlichen Fortentwicklung während des Entwicklungsprozesses (inkrementell) und der Wiederholung bewährter Strategien (iterativ). Dahinter steckt die Erfahrung, dass sich sehr komplexe Entwicklungsprojekte – typisch beispielsweise für die Softwareentwicklung – nicht von vornherein vollumfänglich planen lassen. Zu Beginn des Projektes sind sowohl wesentliche Anforderungen als auch die dazu passenden Lösungsansätze zunächst unklar.
Durch das Schaffen von Zwischenergebnissen werden die Unklarheiten allmählich beseitigt. Auf diese Weise entsteht schneller das Endergebnis. Würde hingegen von Anfang an ein „fertiger“ Plan geschaffen werden, müssten die Beteiligten diesen während der Entwicklung vermutlich permanent präzisieren. Das hält nicht nur das Team auf, es kann und wird auch dazu führen, dass frühere Schritte revidiert werden müssen.
Typische Anwendung von SCRUM in der Softwareentwicklung
Sollte ein Auftraggeber ein Projekt wie einen Onlineshop in Auftrag geben, so sind unterschiedlichste Anforderungen zu beachten. Beispielsweise wird das Projektentwicklungsteam ein Layout und ein technisches Design für die Platzierung von Produkten vorschlagen. Schon diese beiden Komponenten können miteinander konkurrieren, doch das ist vielleicht nicht das größte Problem. Hinzu kommt nämlich das nachfolgende Online-Marketing für den Shop, welches der Auftragnehmer als Webdesign- und Marketingunternehmen typischerweise ebenfalls übernimmt.
Das Online-Marketing ist unter anderem an die Onpage-SEO gebunden, also einen Aspekt der Optimierung auf der Webseite selbst, der wiederum mit dem technischen Design konkurrieren kann. Der technische Designer könnte bestimmte Frames für Produktkategorien vorschlagen, die nur mehr oder weniger gut zu den Anforderungen der Onpage-SEO passen (weil Suchmaschinen in manchen Frames Keywords schlecht crawlen können).
Durch die SCRUM-Entwicklung konkurrieren, kooperieren und interagieren die beiden Entwickler für das technische Design und das Online-Marketing schon zu dem Zeitpunkt, an welchem es zunächst nur um die Schaffung der Produktkategorien geht. Das wirkt in der Tat „gedrängt“ (= scrum), bewahrt aber das Team davor, entweder am Ende des Prozesses das technische Design noch einmal ändern zu müssen oder die Onpage-SEO nur noch suboptimal gestalten zu können.
Was sollten Auftraggeber über SCRUM wissen?
Auftraggeber, sofern sie nicht selbst Projektentwickler sind, wissen mit dem komplexen Regelwerk von SCRUM und der Arbeit unter der Ägide einer „Meta-Idee“ zunächst nicht viel anzufangen. Daher würde es möglicherweise zu weit führen, alle Rollen, Artefakte und Aktivitäten im Detail zu beschreiben. Wichtig zu wissen wäre jedoch, dass ein Auftraggeber – im beschriebenen Fall der spätere Shopbetreiber – weiß, dass er aufgrund der SCRUM-Strategie fortwährend in den Entwicklungsprozess einbezogen wird.