Scrum: Eine schnelle Einführung

Scrum  (Rugby Team), ein Softwareentwicklungsmodell, ist eine Art agile Entwicklung, die sich in den letzten zehn Jahren allmählich durchgesetzt hat.

Die Grundannahme von Scrum

Die Entwicklung von Software ist wie die Entwicklung eines neuen Produkts. Die endgültigen Abläufe eines Softwareprodukts können nicht von vornherein festgelegt werden. Der Prozess erfordert F&E, Kreativität, Versuch und Irrtum, daher gibt es keinen festen Prozess, der den Erfolg des Projekts garantieren kann.

Scrum vergleicht ein Softwareentwicklungsteam mit einer Fußballmannschaft. Es hat ein klares und höchstes Ziel, kennt das beste Modell und die beste Technologie, die im Entwicklungsprozess erforderlich sind, verfügt über ein hohes Maß an Autonomie, enger Kommunikation und Zusammenarbeit und stellt sicher, dass täglich verschiedene Herausforderungen mit einem hohen Maß an Flexibilität gelöst werden. Jede Stufe hat einen klaren Fortschritt in Richtung des Ziels.

Der Scrum-Prozess

Der Scrum-Entwicklungsprozess beginnt typischerweise mit einer 30-tägigen (oder kürzeren) Phase, beginnend mit der neuen Produktanforderungsspezifikation des Kunden, wobei das Entwicklungsteam und der Kunde auswählen, welche Teile der Spezifikation zu Beginn jeder Phase, der Entwicklung, abgeschlossen werden sollen Das Team muss sein Bestes tun, um die Ergebnisse nach 30 Tagen zu liefern, und das Team trifft sich 15 Minuten am Tag, um den Fortschritt und den Zeitplan jedes Mitglieds zu überprüfen, die aufgetretenen Schwierigkeiten zu verstehen und zu versuchen, Fehler zu beheben.

Die Vorteile des agilen Ansatzes

Was ist der Vorteil von Scrum gegenüber dem  traditionellen Entwicklungsmodell ?  Eine Besonderheit des Scrum-Modells ist, dass es auf Veränderungen reagiert. Es kann schnellstmöglich auf Änderungen reagieren.

Während sich ein traditionelles System auf die Vorabplanung konzentriert, bei der Faktoren wie Kosten, Umfang und Zeit eine wichtige Rolle spielen, betont der agile Ansatz Teamarbeit, Kundenzusammenarbeit und Flexibilität. Wenn sich die Anforderungsspezifikationen ändern, kann das agile Team mobil bleiben und auf diese Änderungen reagieren. Das bedeutet jedoch nicht zwangsläufig, dass die adaptive Planungsstrategie immer besser ist als eine prädiktive Planungsstrategie. Lassen Sie uns diese beiden Projektentwicklungsstrategien genauer vergleichen.

Daher ist der traditionelle Entwicklungsansatz (Wasserfall, auch bekannt als plangesteuert) linear, wobei alle Phasen des Prozesses nacheinander ablaufen. Dieser Ansatz hängt von vorhersehbaren Tools und vorhersehbaren Erfahrungen ab. Jedes Projekt folgt demselben Lebenszyklus, einschließlich Machbarkeit, Planung, Design, Konstruktion, Tests, Produktion, Support usw., wie unten gezeigt.

Das gesamte Projekt wird im Voraus geplant, ohne dass Raum für Änderungen der Anforderungen besteht, beispielsweise sind PMBOK und PRINCE2 von PMI streng und streng kontrolliert. Sie skizzieren die verschiedenen Phasen der Projektplanung von Anfang bis Ende und gehen davon aus, dass Sie bereits im Vorfeld alle Anforderungen und Informationen haben, die Sie benötigen.

Agile wird als modernere Softwareentwicklungsstrategie angesehen, da sie in erster Linie entwickelt wurde, um einige der Mängel des vorausschauenderen Wasserfallansatzes zu überwinden. Es ist ein Softwareentwicklungsmodell, das die iterative Entwicklung und das Testen während des gesamten Softwareentwicklungslebenszyklus eines Projekts fördert.

Überblick über den Scrum-Prozess

Scrum  ist ein Framework, das  Rollen ,  Ereignisse ,  Artefakte und Regeln/Richtlinien vorschreibt, um diese Denkweise umzusetzen. Mit anderen Worten, Agile ist die Denkweise und Scrum ist das Framework, das einen Prozess zur Umsetzung der agilen Philosophie vorschreibt.

Scrum und Agilität sind nicht dasselbe, aber Scrum ist einer der agilen Prozesse. Sie basieren auf iterativer Entwicklung. Die Anforderungen und Lösungen von Agile, die durch die Verbindung zwischen den funktionsübergreifenden und selbstorganisierten Teams gewonnen werden und bei richtiger Implementierung den Teams helfen können, komplexe Probleme anzugehen, indem sie schrittweise Produkte mit dem höchsten Wert liefern und gleichzeitig das Risiko mindern.

Scrum beinhaltet sofortige Inspektion und Anpassung, Teamarbeit wird durch Führungsphilosophie, Verantwortlichkeit und Selbstorganisation sowie bewährte technische Verfahren verbessert, die bei der Bereitstellung zeitnaher qualitativ hochwertiger Software helfen.

Schlüsselbegriffe von Scrum

Rückstand:  alle vorhersehbaren Aufgaben, einschließlich aller funktionalen und nicht funktionalen Aufgaben.

Sprint:  Der Zeitraum für eine Generationsentwicklung, in der Regel höchstens 30 Tage als Zyklus. Während dieser Zeit muss das Entwicklungsteam einen formulierten Rückstand vervollständigen, und das Endergebnis ist ein inkrementelles und lieferbares Produkt.

Sprint Backlog:  Die Aufgaben, die in einem Sprintzyklus erledigt werden müssen.

Zeitfenster:  Ein Zeitfenster für das Meeting. Beispielsweise beträgt die Timebox für jedes tägliche Scrum-Meeting 15 Minuten.

Sprint-Planungsmeeting:  Findet vor Beginn jedes Sprints statt. In der Regel einen Tag (8 Stunden). Die in diesem Meeting zu formulierende Aufgabe lautet: Der Product Owner und die Teammitglieder zerlegen das Backlog in kleine funktionale Module, entscheiden, wie viele kleine funktionale Module im anstehenden Sprint abgeschlossen werden müssen, und legen die Aufgabenpriorität dieses Product Backlogs fest. Darüber hinaus muss das Meeting im Detail besprechen, wie diese kleinen funktionalen Module nach Bedarf zu vervollständigen sind. Der Arbeitsaufwand dieser Module wird in Stunden berechnet.

Tägliches Scrum-Meeting:  gehalten von Mitgliedern des Entwicklungsteams, normalerweise 15 Minuten. Jedes Entwicklungsmitglied muss dem Scrum Master drei Projekte melden: Was wurde heute fertiggestellt? Sind Sie auf Hindernisse gestoßen? Was wirst du machen? Durch dieses Treffen können die Teammitglieder den Fortschritt des Projekts miteinander verstehen.

Sprint-Review-Meeting:  Nach jedem Sprint präsentiert das Team die Ergebnisse des Sprints dem Product Owner und anderem zugehörigen Personal. In der Regel dauert dieses Treffen 4 Stunden.

Die Sprint-Retrospektive  findet nach dem  Sprint-Review  und vor der nächsten  Sprint-Planung statt . Bei einmonatigen Sprints ist dies höchstens ein dreistündiges Meeting  . Die retrospektive Sitzung ist im Grunde ein „Verbesserungs“-Meeting, das abgehalten wird, um Wege und Mittel zu finden, um potenzielle Fallstricke und vergangene Fehler zu identifizieren und neue Wege zu finden, um diese Fehler zu vermeiden, an denen alle teilnehmen – der  Product Owner ,  der Scrum Master und die Mitglieder des Entwicklungsteams , und optional mit den Stakeholdern.

Scrum Master:  Ein Teammitglied, das für die Überwachung des gesamten Scrum-Prozesses und die Überarbeitung des Plans verantwortlich ist.

Der Product Owner  , der das Produkt im Namen des Unternehmens besitzt, ist Teil eines  Scrum-Teams . Ein Product Owner hat jedoch keine Autorität über andere Mitglieder des Teams, genau wie der  Scrum Master . Ein Product Owner ist dafür verantwortlich, sich über einen längeren Zeitraum um ein Produkt zu kümmern, und ist für den Produkterfolg verantwortlich. Als Product Owner sollten Sie direkt mit den Kunden und Benutzern, dem Entwicklungsteam und anderen wichtigen Stakeholdern interagieren, wie das Bild unten zeigt.

Ein  Scrum  -Team  ist eine Ansammlung von Personen (normalerweise zwischen fünf und neun Mitgliedern), die zusammenarbeiten, um die erforderlichen Produktinkremente zu liefern. Das Scrum-Framework fördert ein hohes Maß an Kommunikation zwischen den Teammitgliedern, damit das Team:

  • Verfolge ein gemeinsames Ziel
  • die gleichen Normen und Regeln einhalten
  • respektieren einander

Wie funktioniert Scrum?

Ein Scrum-Prozess unterscheidet sich von anderen agilen Prozessen durch spezifische Konzepte und Praktiken, die in die drei Kategorien Rollen ( Product Owner ,  Scrum Master , Entwicklungsteam und andere Stakeholder), Ereignisse, Artefakte und Regeln unterteilt sind.

Um einen Scrum-Prozess zu starten, erstellt ein Product Owner eine priorisierte Wunschliste, die als  Product Backlog bezeichnet wird . Während  der Sprintplanung  wird das Backlog nach Komplexität und Geschäftswert (Priorität) bemessen. Der Product Owner (Kunde) und das Entwicklungsteam bestimmen, welche Backlog-Elemente dem Sprint hinzugefügt werden. Das Team hat eine bestimmte Zeit (  Sprint genannt , normalerweise zwei bis vier Wochen), um seine Arbeit abzuschließen, aber es trifft sich jeden Tag, um seinen Fortschritt zu bewerten ( tägliches Scrum ). Auf dem Weg dorthin hält der Scrum Master das Team auf sein Ziel fokussiert. Am Ende des Sprints überprüft das Team seinen Fortschritt, zeigt dem Kunden das funktionierende Produkt und überprüft, was gut gelaufen ist oder was es für den nächsten Sprint verbessern muss. Dann wiederholt sich der Zyklus.

124 Kommentare

  1. I’m impressed, I must say. Rarely do I come across a blog that’s both educative and entertaining, and let me tell you, you have hit the nail on the head. The issue is something that not enough people are speaking intelligently about. Now i’m very happy I found this in my hunt for something concerning this.

Kommentar hinterlassen

Deine E-Mail-Adresse wird nicht veröffentlicht.