Freigeben über


Bewährte Methoden für Sprint und Scrum

Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022

Scrum ist ein agiles Framework, das Teams dabei hilft, durch zeitlich begrenzte Sprints schrittweise Wert zu liefern. In diesem Artikel werden bewährte Methoden für die Sprintplanung, tägliche Scrum-Besprechungen, Sprintüberprüfungen, Retrospektive, Fehlertriage und die Scrum Master-Rolle in Azure DevOps behandelt.

Besprechungen zur Sprintplanung

Die Sprintplanung umfasst eine Aushandlung zwischen dem Produktbesitzer und dem Team, um den Fokus und die Arbeit für den bevorstehenden Sprint zu bestimmen. Begrenzen Sie die Dauer der Planungssitzung auf 4 Stunden oder weniger.

Im ersten Teil der Besprechung erläutert der Produktbesitzer die Benutzergeschichten, die im Sprint enthalten sein können, gibt Informationen frei und beantwortet Fragen. Diese Unterhaltungen können Details wie Datenquellen, Benutzeroberflächenlayout, Erwartungen an die Reaktionszeiten und Sicherheits- oder Benutzerfreundlichkeitsaspekte anzeigen. Erfassen Sie diese Details im Backlog-Element-Formular. In diesem Teil der Besprechung wird klargestellt, was das Team erstellen muss.

Während Sie planen, können Sie weitere Anforderungen entdecken, die Ihrem Backlog hinzugefügt werden sollen. Halten Sie den Backlog klar definiert und in der richtigen Prioritätsreihenfolge. Das Festlegen eines Sprintziels hilft dem Team, sich auf das Wichtigste für jeden Sprint zu konzentrieren.

Nachdem Sie Ihren Sprint geplant haben, können Sie den Plan mit wichtigen Projektbeteiligten teilen.

Weitere Informationen findest du unter:

Festlegen von Sprintzielen

Scrum-Teams verwenden Sprintziele, um ihre Sprintaktivitäten zu konzentrieren. Sie legen dieses Ziel häufig während der Sprintplanungsbesprechung fest. Das Ziel fasst zusammen, was das Team bis zum Ende des Sprints erreichen möchte. Indem Sie das Ziel explizit angeben, erstellen Sie ein gemeinsames Verständnis innerhalb des Teams und helfen Dabei, Entscheidungen zu treffen, wenn Konflikte um Prioritäten herum auftreten.

Tipps aus den Graben: Sprintziele definieren

Das Sprintziel definiert, was der Produktbesitzer und das Team als ultimatives Ziel betrachten, um diesen Sprint zu erreichen. Es ist keine zufällige Auswahl von nicht verknüpften Backlogelementen, sondern eine kurze Aussage, die erfasst, was das Team erreichen sollte. Normalerweise definiert der Produktbesitzer das Sprintziel, bevor Elemente für den nächsten Sprint ausgewählt werden. Die Elemente für diesen Sprint sollten alle diesem gemeinsamen Ziel entsprechen.

Sprintziele können funktionsorientiert sein, aber auch eine große Prozesskomponente wie Bereitstellungsautomatisierung oder Testautomatisierung haben.

Beispiel:

  • Dieser Sprint konzentriert sich auf eine einfache Benutzergeschichte, um zu beweisen, dass die vorgeschlagene Lösung funktioniert.
  • Dieser Sprint implementiert Sicherheitsfeatures, die den Verwaltungsabschnitt der Website ordnungsgemäß sichern.
  • Dieser Sprint integriert die wichtigsten Zahlungsgateways, damit das Team mit dem Sammeln von Zahlungen beginnen kann.

Das Festlegen von Sprintzielen hilft dem Team, fokussiert zu bleiben, erleichtert die Priorisierung von Aufgaben innerhalb eines Sprints und schränkt die Anzahl der beteiligten Projektbeteiligten ein.

Während der Sprintüberprüfung ist die wichtigste Frage, ob Sie das Sprintziel erreicht haben. Wie viele Geschichten Sie abgeschlossen haben, ist zweitrangig. Wenn das Ziel erreicht wird, ist der Sprint erfolgreich, auch wenn nicht alle Geschichten fertig sind.

Tipps zur erfolgreichen Durchführung von Triage-Besprechungen

Das Beheben von Fehlern stellt einen Kompromiss mit anderen Arbeiten dar. Nutzen Sie das Triage-Meeting, um festzustellen, wie wichtig jeder Fehler im Vergleich zu anderen Prioritäten im Zusammenhang mit Projektumfang, Budget und Zeitplan ist.

  • Legen Sie Kriterien für die Bewertung der zu behebenden Fehler fest und weisen Sie Priorität und Schweregrad zu. Fehler, die mit hochwertigen Features (oder erheblichen Verzögerungskosten) oder anderen Projektrisiken verbunden sind, sollten höhere Priorität und Schweregrad erhalten. Speichern Sie Ihre Triagekriterien mit anderen Teamdokumenten, und aktualisieren Sie sie nach Bedarf.
  • Verwenden Sie Ihre Triagekriterien, um zu bestimmen, welche Fehler behoben werden sollen, und wie deren Status, Priorität, Schweregrad und andere Felder festgelegt werden.
  • Passen Sie Kriterien basierend auf der Stelle an, an der Sie sich im Entwicklungszyklus befinden. Frühzeitig können Sie die meisten Fehler beheben, die Sie triagen. Erhöhen Sie später im Zyklus den Balken, um die Anzahl der von Ihnen behobenen Fehler zu verringern.
  • Nachdem Sie einen Fehler triagen, weisen Sie ihn einem Entwickler zu, um einen Fix zu untersuchen und zu implementieren.

Verwalten Ihrer technischen Schulden

Verwalten Sie Ihre Fehlerleiste und technische Schulden im Rahmen der kontinuierlichen Verbesserungsaktivitäten Ihres Teams. Die folgenden Ressourcen bieten nützliche Anleitungen:

Tipps aus der Praxis: Fehlerverwaltung

Agile Fehlerverwaltung: Kein Oxymoron
von Gregg Boer, Hauptprogrammmanager, Visual Studio Cloud Services bei Microsoft

Beseitigen von bekannten Fehlerschulden bei jedem Sprint

In jedem Sprint überprüft das Team die verbleibenden Fehler im Bug-Backlog und stellt Kapazitäten bereit, um die bekannte Menge auf null oder nahe null zu reduzieren. Unabhängig davon, ob dieser Vorgang einen Tag, eine Woche oder den gesamten Sprint dauert, behebt das Team zuerst Fehler. Fehler, die später im Sprint gefunden wurden, sind nicht Teil des anfänglichen Engagements. Sofern sie keine hohe Priorität haben, kommen sie für den nächsten Sprint auf das Bug-Backlog.

Viele Teams arbeiten in engagementsbasierten Organisationen, in denen das Management die Fähigkeit des Teams wertet, Verpflichtungen zu erfüllen. Die Kapazitätsplanung für eine bekannte Reihe von Fehlern macht Sprintplanung deterministischer und erhöht die Wahrscheinlichkeit, Verpflichtungen zu erfüllen. Neue Fehler, die während des Sprints entdeckt wurden, sind nicht Teil des anfänglichen Engagements und können im nächsten Sprint behoben werden.

Verwalten von Fehlerschulden in einem Unternehmen

Organisationen, die auf eine Kultur umsteigen, in der sie die Schulden ständig beseitigen, sehen sich häufig dieser Frage an: Wie können Sie Teams dazu bringen, ihre Fehleranzahl zu reduzieren, ohne ihnen genau mitzuteilen, was sie tun sollen? Führung möchte, dass sich das Team ändert, aber dem Team die Autonomie gibt, um zu bestimmen, wie das geht. Eine Möglichkeit besteht darin, eine Schutzkappe zu verwenden.

Betrachten Sie z. B. eine Fehlergrenze von drei Fehlern pro Techniker. Ein Team von 10 Personen sollte nicht mehr als 30 Fehler in seinem Fehlerrückstand haben. Wenn das Team seine Obergrenze überschreitet, arbeitet es nicht mehr an neuen Features, bis es die Obergrenze wieder unterschreitet. Es wird erwartet, dass das Team jederzeit unter seinem Limit bleibt, entscheidet jedoch selbst, wie es das macht. Die Fehlergrenze stellt sicher, dass Teams keine Fehlerschulden zu lang tragen und aus den Fehlern lernen können, die die Fehler an erster Stelle verursacht haben.

Die Fehlerobergrenze deckt nur Fehler im Backlog ab. Fehler, die innerhalb des Sprints gefunden und behoben wurden, in dem ein Feature entwickelt wird, gelten als rückgängig gemachte Arbeit, nicht als Schulden.

Während Fehler zu technischen Schulden beitragen, stellen sie nicht alle Schulden dar. Schlechtes Softwaredesign, schlecht geschriebener Code oder kurzfristige Korrekturen tragen auch zu technischen Schulden bei – der zusätzlichen Entwicklungsarbeit, die sich aus diesen Problemen ergibt.

Verfolgen Sie die Arbeit, um technische Schulden als Product Backlog Items, User Storys oder Fehler zu beheben. Um den Fortschritt bei der An- und Behebung von technischen Schulden nachzuverfolgen, überlegen Sie, wie Sie die Arbeitsaufgabe und die Details kategorisieren, die Sie nachverfolgen möchten. Sie können jeder Arbeitsaufgabe Tags hinzufügen, um sie in einer Kategorie Ihrer Wahl zu gruppieren.

Rolle des Scrum Master

Scrum Masters bauen und pflegen gesunde Teams, indem Sie Scrum-Prozesse einsetzen. Sie leiten, coachen, lehren und unterstützen Scrum-Teams bei der richtigen Verwendung von Scrum-Methoden. Scrum Masters fungieren auch als Change Agents, um Teams dabei zu helfen, Hindernisse zu überwinden und erhebliche Produktivitätssteigerungen voranzutreiben.

Zu den Kernaufgaben von Scrum Masters gehören:

  • Unterstützen Sie das Team bei der Einführung und Nachfolge von Scrum-Prozessen. Lassen Sie beispielsweise die tägliche Scrum-Besprechung nicht zu einer offenen Diskussion werden, die 45 Minuten dauert.
  • Verhindern Sie, dass der Produktbesitzer oder die Teammitglieder nach Beginn des Sprints zusätzliche Arbeiten hinzufügen.
  • Löschen Sie Blockierungsprobleme, die den Vorwärtsfortschritt verhindern. Für diese Arbeit müssen möglicherweise kleine Aufgaben ausgeführt werden, z. B. die Genehmigung einer Bestellung für einen neuen Buildcomputer oder das Auflösen eines Konflikts innerhalb des Teams.
  • Helfen Sie dem Team, Konflikte und Probleme zu lösen, die auftreten, und lernen Sie aus dem Prozess.
  • Stellen Sie Fragen, die ausgeblendete Probleme offenlegen und bestätigen, dass die Kommunikation vom gesamten Team gut verstanden wird.
  • Identifizieren und beheben Sie potenzielle Probleme, bevor sie zu großen Problemen werden. Es ist einfacher und weniger störend, ein Teamproblem zu beheben, wenn es klein und verwaltbar ist.
  • Verhindern, dass das Team unvollständige Benutzergeschichten während einer Sprintüberprüfungsbesprechung vorstellt.
  • Sammeln, analysieren und präsentieren Sie Daten für Geschäftsbeteiligte, um zu veranschaulichen, wie das Team verbessert wird. Wenn Ihr Team beispielsweise den Wert erhöht hat, den es liefert, während weniger Fehler generiert werden, machen Sie diese Verbesserung durch regelmäßige Kommunikation sichtbar.

Good Scrum Masters entwickeln hervorragende Kommunikations-, Verhandlungs- und Konfliktlösungskompetenzen. Sie hören aktiv auf die Wörter, die Menschen sagen und schreiben, sowie darauf, wie sie Nachrichten übermitteln - Körpersprache, Gesichtsausdrücke, Sprechtempo und andere nonverbale Kommunikationsformen.

Tägliche Scrum-Besprechungen

Tägliche Scrum-Besprechungen helfen, ein Team darauf zu konzentrieren, was es als Nächstes tun muss. Der Scrum Master erzwingt die Struktur der Besprechung und stellt sicher, dass es rechtzeitig beginnt und in 15 Minuten oder weniger endet.

Drei Aspekte erfolgreicher Scrum-Besprechungen:

  • Jeder steht auf. Das Stehen hilft dabei, die Besprechung fokussiert und kurz zu halten.
  • Die Besprechung beginnt und endet rechtzeitig, zur gleichen Zeit und an jedem Ort.
  • Jeder nimmt teil. Jedes Teammitglied beantwortet die drei Scrum-Fragen:
    • Was habe ich seit dem letzten Scrum erreicht?
    • Was werde ich vor dem nächsten Scrum erreichen?
    • Welche Blockierungsprobleme oder Hindernisse können sich auf meine Arbeit auswirken?

Hinweis

Der Fokus für Scrum-Besprechungen liegt auf dem Status der Arbeit, die von einem Teammitglied an ein anderes übergeben werden muss.

Teammitglieder beantworten ihre Fragen schnell und präzise. Gute Antworten geben an, was abgeschlossen wurde, was als Nächstes geplant ist und ob Hilfe oder Entsperrung erforderlich ist. Vermeiden Sie vage Antworten wie zum Beispiel "Ich habe an der Klasse gearbeitet" – geben Sie an, welcher Arbeitsschritt betroffen ist und was noch zu tun ist.

Niemand unterbricht während der Berichterstattungen. Verlegen Sie ausführliche Diskussionen auf die Zeit nach der Besprechung. Viele Teams verwenden einen "Parkplatz" – ein Whiteboard oder Flipchart, in dem Themen, die Nachverfolgung benötigen, während der Besprechung aufgelistet und danach adressiert werden.

Sprintüberprüfungsbesprechungen

Führen Sie Sprintüberprüfungsbesprechungen am letzten Tag des Sprints durch. Ihr Team veranschaulicht jedes Produktrückstandselement, das im Sprint abgeschlossen wurde. Der Produktbesitzer, die Kunden und die Projektbeteiligten akzeptieren die Benutzergeschichten, die ihren Erwartungen entsprechen und neue Anforderungen identifizieren. Kunden verstehen ihre Bedürfnisse häufig vollständiger, nachdem Sie die Demonstrationen gesehen haben und möglicherweise Änderungen identifizieren, die sie wünschen.

Akzeptieren Sie basierend auf dieser Besprechung einige Benutzergeschichten als abgeschlossen. Behalten Sie unvollständige Benutzergeschichten im Produktrücklog bei, und fügen Sie neue Benutzergeschichten hinzu. Bewerten Sie beide Sätze von Geschichten und schätzen Sie sie in der nächsten Sprintplanungsbesprechung, oder schätzen Sie sie erneut.

Nach dieser Besprechung und der Retrospektive plant Ihr Team den nächsten Sprint. Da sich die Geschäftsanforderungen schnell ändern, verwenden Sie diese Besprechung, um die Prioritäten des Produktrücklogs mit dem Produktbesitzer, den Kunden und den Projektbeteiligten zu überprüfen.

Sprintretrospektivbesprechungen

Retrospektiven, wenn sie gut und in regelmäßigen Abständen durchgeführt werden, unterstützen eine kontinuierliche Verbesserung.

Die Sprint-Retrospektive tritt in der Regel am letzten Tag des Sprints nach der Sprintüberprüfungsbesprechung auf. In dieser Besprechung untersucht Ihr Team seine Ausführung von Scrum und was möglicherweise geändert werden muss.

Basierend auf Diskussionen kann Ihr Team einen oder mehrere Prozesse ändern, um die Effektivität, Produktivität, Qualität und Zufriedenheit zu verbessern. Diese Besprechung und die daraus resultierenden Verbesserungen sind entscheidend für das agile Prinzip der Selbstorganisation.

Hinweis

Um die Retrospektive Ihres Teams zu unterstützen, sollten Sie die Marketplace-Retrospektive-Erweiterung installieren. Mit dieser Erweiterung können Sie Feedback zu Projektmeilensteinen sammeln, Feedback organisieren und priorisieren und umsetzbare Aufgaben erstellen, um Ihr Team im Laufe der Zeit zu verbessern.

Sprechen Sie diese Bereiche während der Sprint-Retrospektiven an:

  • Probleme, die sich auf die Effektivität, Produktivität und Qualität Ihres Teams auswirken.

  • Elemente, die die Zufriedenheit und den Projektfluss Ihres Teams beeinflusst haben.

  • Was hat die unvollständigen Backlogelemente verursacht? Welche Maßnahmen kann das Team ergreifen, um diese Probleme in Zukunft zu verhindern?

    Betrachten Sie beispielsweise ein Team mit mehreren Aufgaben, die nur eine Person ausführen konnte. Die isolierte Expertise schuf einen kritischen Weg, der den Erfolg des Sprints bedrohte. Dieses Mitglied des Teams hat zusätzliche Stunden gearbeitet, während andere Mitglieder nicht mithelfen konnten. In Zukunft beschloss das Team, eXtreme Programming zu üben, um dieses Problem im Laufe der Zeit zu beheben.

Bestimmen Sie als Team, ob Sie einen oder mehrere Prozesse anpassen möchten, um Probleme während des Sprints zu minimieren.

Möglicherweise muss Ihr Team auch arbeiten, um eine Verbesserung zu implementieren. Beispielsweise hat ein Team, das von zu vielen fehlgeschlagenen Builds negativ beeinflusst wurde, beschlossen, eine kontinuierliche Integration zu implementieren. Sie richten einen Testbuild ein, bevor sie in der Produktion aktiviert wird. Um diese Arbeit darzustellen, haben sie eine Spitze erstellt und für den Rest des Produktrücklogs organisiert.