SCRUM: Lohnt es sich, sich in die sich verändernde Welt zu beugen?

Scrum - eine flexible Teamarbeitsmethode. Heute ist es sehr beliebt, es wird in vielen großen Unternehmen eingesetzt. In diesem Artikel werden wir verstehen, wann und unter welchen Umständen eine Technik entstanden ist, auf welchen Grundprinzipien ihre Implementierung basiert, was bei der Arbeit zu beachten ist und vieles mehr.



Bild


Geschichte von Scrum



Zu Beginn der Entwicklung der Softwareentwicklung stand ein "Wasserfall" -Ansatz für die Arbeit, der von den meisten Teams verwendet wurde und die Implementierung des Produkts in die folgenden Phasen unterteilt:



  • Definition der Projektanforderungen;
  • Planungsvorgänge von Anfang bis Ende;
  • Code schreiben;
  • testen.


Das heißt, der Kunde kam, beschrieb die Aufgabe, das Team plante die Implementierung und begann mit der Arbeit gemäß den festgelegten technischen Spezifikationen. Nach dem Ende der Entwicklung wurde das Produkt getestet und wenn etwas nicht funktionierte, mussten große Mengen an Code korrigiert werden, wodurch die Fristen verlängert wurden.



So arbeiteten sie von Jahr zu Jahr, während ein Team von Innovatoren lange Zeit erfolgreiche Teams beobachtete: diejenigen, die es schafften, Termine einzuhalten und ein Qualitätsprodukt herzustellen. Als Ergebnis erkannten sie, dass Erfolg in der Flexibilität des Prozesses liegt.



Basierend auf den Schlussfolgerungen aus den Ergebnissen langer Beobachtungen wurde das "Manifest für agile Softwareentwicklung" abgeleitet. Es enthielt vier Punkte:



  1. Menschen sind wichtiger als Werkzeuge.
  2. Produktqualität ist wichtiger als Dokumentation.
  3. Die Interaktion mit dem Kunden ist wichtiger als der Vertrag.
  4. Die Bereitschaft zur Veränderung ist wichtiger als der festgelegte Plan.


Diese vier Punkte haben den Ansatz zur Softwareentwicklung grundlegend verändert und die Grundlage für Agile gebildet. Im Laufe der Jahre haben Enthusiasten 12 zentrale agile Prinzipien entwickelt, die heute allen agilen Methoden zugrunde liegen:



  1. Hauptsache gute Software und ein zufriedener Kunde.
  2. Jederzeit bereit für Veränderungen.
  3. So oft wie möglich funktionierende Software als Ergebnis der Entwicklung zu erreichen.
  4. Eine Teambesprechung eignet sich am besten zum Austausch von Informationen.
  5. Der Kunde und das Entwicklungsteam müssen zusammenarbeiten.
  6. Vertraue den Menschen, dass sie ihren Job machen.
  7. Es gibt funktionierende Software - es gibt Fortschritte.
  8. Flexible Prozesse - kontinuierliche Weiterentwicklung.
  9. Die Beachtung der Qualität fördert die Flexibilität.
  10. Durch die Einfachheit des Prozesses können Sie unnötige Arbeiten vermeiden.
  11. Ein selbstorganisierendes Team arbeitet besser.
  12. Ständiges Streben nach mehr Effizienz.


Anfang der neunziger Jahre sprachen Jeff Sutherland und Ken Schwaber über ihre eigene agile Entwicklungsmethode. Lange Zeit beobachteten sie das Militär, Spezialeinheiten und sogar Rugbyspieler und kamen zu dem Schluss, dass sie es schaffen, ihre Aufgaben durch Interaktion und Teamarbeit zu erfüllen - diese Prinzipien bildeten die Grundlage von Scrum.



Im Jahr 2001 beschrieben sie detailliert die Prinzipien ihrer Methodik und veröffentlichten das Buch Agile Software Development with SCRUM. Bisher gilt dieser Ansatz als einer der beliebtesten unter Entwicklern.



Grundprinzipien von Scrum



Die Methodik basiert auf mehreren Grundprinzipien, die helfen, sich auf den Kunden zu konzentrieren und das erwartete Ergebnis mit minimalen Ressourcen- und Zeitkosten zu erzielen.



Grundprinzipien von Scrum:



  1. (). () . .
  2. . . () .
  3. . - « » — . , . , .
  4. . Scrum-team — , .




Scrum-Team



In den meisten Fällen besteht ein Scrum-Team aus 5-9 Personen, seltener aus 3-4 Personen. Innerhalb von Scrum kann das Team nicht größer sein, da die Interaktion zwischen den einzelnen Links komplizierter wird, was sich negativ auf die Effizienz der Arbeit auswirkt.

Zusammensetzung



In einem Team gibt es drei Hauptrollen:



  1. Product Owner
  2. Scrum Master.
  3. Entwickler (Lieferteam).


Lassen Sie uns alle Rollen genauer betrachten.



Product Owner



Der Eigentümer ist die Person, die für die Entwicklung verantwortlich ist. Diese Rolle spielt der Kunde des Produkts oder sein offizieller Vertreter. In seltenen Fällen - ein Vertreter des Marktes, in dem das geplante Projekt anschließend umgesetzt wird.



Der Eigentümer ist für die Erstellung des Geschäftsplans verantwortlich, der die erwarteten wirtschaftlichen Auswirkungen widerspiegelt. Darin definiert er auch einen Entwicklungsplan, in dem die Amortisationsquote der Investitionen für jeden Posten berechnet wird. Ein weiteres wichtiges Dokument, an dessen Bildung der Eigentümer beteiligt ist, ist eine Liste von Anforderungen, die nach Wichtigkeit sortiert sind.



Einfach ausgedrückt ist der Product Owner das Entscheidungszentrum für das Projektteam. Es muss das einzige innerhalb des Projekts sein, sonst wird das Prinzip, wichtige Entscheidungen schnell zu treffen, verletzt.



Eine indikative Liste der Verantwortlichkeiten des Eigentümers:



  • ;
  • ( );
  • ;
  • ;
  • ;
  • .


-



Der Scrum Master ist für die Einhaltung der Scrum-Methodik in seiner Arbeit verantwortlich: Er kontrolliert die Initiative und Unabhängigkeit aller Teammitglieder, die Zufriedenheit mit den Ergebnissen, die Atmosphäre im Team und die Ergebnisse der Arbeit im Allgemeinen.



Darüber hinaus ist es wichtig zu verstehen, dass der Scrum Master nicht nur eine isolierte Person ist, die die Entwicklung von außen beobachtet. Er ist Mitglied des Teams und muss zusammen mit der Kontrolle direkt an der technischen Implementierung des Produkts beteiligt sein.



Der Scrum Master ist verantwortlich für die Interaktion aller Teammitglieder untereinander, für die Aufrechterhaltung eines hohen Leistungsniveaus, die Beseitigung von Problemen und die Einhaltung des geplanten Arbeitsplans.



Eine ungefähre Liste der Aufgaben eines Scrum Masters:



  • eine vertrauensvolle Atmosphäre schaffen;
  • Teilnahme an Hauptversammlungen und Gewährleistung einer erfolgreichen Kommunikation der Teilnehmer;
  • ;
  • ;
  • .




Entwickler sind diejenigen, die für die technische Implementierung des Produkts verantwortlich sind. In der Regel gibt es 5-9 Entwickler pro Team. Die erste Aufgabe besteht darin, für jeden Sprint realistisch erreichbare, vorhersehbare, interessante und aussagekräftige Ziele festzulegen.



Die zweite Aufgabe besteht darin, die Ziele jedes Sprints rechtzeitig zu erreichen (Frist). Das Erreichen des Ziels ist ein erweiterbares Konzept und wird in jedem Projekt individuell festgelegt. Beispielsweise wird die Aufgabe an einem Ort als erledigt betrachtet, nachdem alle Codes geschrieben wurden, und an einer anderen Stelle wird das Ende des Tests hinzugefügt. Im Allgemeinen lässt sich jeder von seiner eigenen Vision und Erfahrung leiten.



Schlüsselkompetenzen für das Entwicklungsteam sind Planung, objektive Bewertung der geleisteten Arbeit und die Fähigkeit zur Interaktion mit anderen Teammitgliedern.



Eine Beispielliste des Entwicklungsteams:



  • Bewertung von Rückstandsposten eines Produkts;
  • Produktentwicklung und Lieferung an den Kunden;
  • Verfolgen Sie Ihren Fortschritt (zusammen mit dem Scrum Master);
  • Bereitstellung des Ergebnisses für den Product Owner.


Wie das Scrum-Team funktioniert



Erfolgreiche Arbeiten an der Scrum-Methodik sind möglich, wenn drei Prinzipien beachtet werden:



  1. Ständige Selbstverbesserung . Erfahrene Entwickler sagen, dass es unmöglich ist, das Produkt zu verbessern und in einen idealen Zustand zu bringen, ohne dass sich jedes Teammitglied selbst verbessert.
  2. Autonomie . Alle Mitarbeiter müssen nicht nur für das Gesamtergebnis verantwortlich sein und in der Lage sein, im Team zu arbeiten, sondern auch viele Aufgaben individuell zu erfüllen.
  3. Cross-Funktionalität . Jedes Team ist autark, da es Spezialisten mit unterschiedlichen Fähigkeiten umfasst.


Scrum Team Workflow



Die Arbeit des Teams, das die Scrum-Methodik leitet, ist herkömmlicherweise in mehrere Phasen unterteilt.



1. Planen einer Sprint-Aufgabenliste. Jeder Sprint beginnt mit der Planung. Alle Teammitglieder kommen zusammen, bewerten das Produkt-Backlog als Ganzes und wählen die Prioritätsaufgaben aus, die innerhalb der aktuellen Iteration ausgeführt werden sollen. Auf diese Weise wird die Liste der Aufgaben (Rückstand) des aktuellen Sprints erstellt.



Danach werden auf der Grundlage des Rückstands der Arbeitsumfang und die Dauer des Zyklus ausgehandelt. Auch das Ergebnis wird im Voraus festgelegt: Was soll als Ergebnis des Sprints erhalten werden?



2. Regelmäßige Treffen abhalten. Täglich oder wöchentlich hält das Team kurze Besprechungen ab (nicht mehr als 15 bis 30 Minuten). Sie beziehen den Eigentümer des Produkts, den Scrum Master und alle Entwickler ein. Der Zweck der Treffen ist es, von jedem eine Antwort auf drei Fragen zu erhalten:



  1. ?
  2. ?
  3. ?


Der Scrum Master identifiziert aktuelle Probleme während des Meetings und hilft dem Team, diese zu lösen.



3. Organisation eines Scrum Boards. Im Konferenzraum, in dem regelmäßige Besprechungen stattfinden, wird eine Tafel aufgehängt, die in drei Teile unterteilt ist: "Was zu tun ist", "In Bearbeitung" und "Fertig".



In jedem Teil werden Aufkleber in verschiedenen Farben mit den Hauptaufgaben platziert. Während sie fortschreiten, bewegen sie sich von einem Teil zum anderen. Auf diese Weise kann jedes Teammitglied den Fortschritt des aktuellen Sprints verfolgen.



4. Änderung von Plänen während der Iteration. Das Team muss offen sein und wenn ein Spezialist keine Zeit hat, die Frist einzuhalten, informiert er den Besitzer des Produkts. Es wird die Aufgabenverteilung ändern, die Arbeitszeiten optimieren und dazu beitragen, die Frist einzuhalten.



Dasselbe gilt für zu schnelle Arbeit, wenn Aufgaben schneller als geplant erledigt werden. Der Manager ergänzt den Rückstand nach eigenem Ermessen mit neuen Zielen, damit der Verkauf des Produkts schneller verläuft.



5. Zusammenfassen. Nach Abschluss jedes Sprints wird die fertige Software getestet. Auch potenzielle Verbraucher nehmen daran teil (Fokusgruppe). Der Eigentümer sammelt Feedback und trifft Entscheidungen für eine erfolgreiche Arbeit in der Zukunft.



Scrum-Artefakte



Scrum-Projekte umfassen drei wichtige Dokumente, die auch als Artefakte bezeichnet werden:



  1. Produktrückstand.
  2. Sprint Backlog.
  3. Sprint-Diagramm (Burndown-Diagramm).


Jeder von ihnen hat bestimmte Funktionen, über die wir weiter unten sprechen werden.



Produktmagazin



Das Produktmagazin ganz am Anfang wird vom Eigentümer erstellt. Das Dokument (Artefakt) enthält Anforderungen, die nach Wichtigkeit sortiert sind. Die ursprüngliche Version wird von Entwicklern ergänzt: Sie schätzen die Kosten für die Implementierung jeder Anforderung.



Das Product Backlog sollte nicht nur die technischen Aspekte enthalten, die für die Implementierung erforderlich sind, sondern auch die funktionalen. Für jede Anforderung wird die Priorität festgelegt (z. B. von 1 bis 5). Die höchste Priorität wird ausführlich beschrieben, damit das Team sie bewerten und testen kann.



Der Product Owner ist verpflichtet, ein Produktprotokoll nicht nur zu erstellen, sondern auch innerhalb des vereinbarten Zeitrahmens einzureichen. Andernfalls ist die rechtzeitige Umsetzung des Projekts nicht möglich.



Sprint Magazin



Wie Sie sich erinnern, wird das Produkt im Rahmen der Scrum-Methodik in kleinen Iterationen implementiert. Normalerweise ist ein Sprint eine Funktion. Für eine effektive Arbeit ist es in kleine Aufgaben unterteilt, sodass die Implementierung nicht länger als 2-3 Werktage dauert.



Eine kompetente Aufteilung der Funktionen in Aufgaben ermöglicht es, bis zum Ende der Iteration alles zu erledigen, was erforderlich ist, damit ein bestimmter Teil der Software ordnungsgemäß funktioniert und für den Endbenutzer von Wert ist.



Nachdem der Sprint-Rückstand abgeschlossen ist, wird er vom Entwicklungsteam ausgewertet und mit dem Produktprotokoll verglichen. Wenn es signifikante Abweichungen gibt, bestimmt das Team die vorrangigsten Aufgaben innerhalb des aktuellen Sprints und weniger wichtige Aufgaben, die auf die nächste Iteration übertragen werden können.



Die Aufgabe des Product Owner besteht darin, kleine und unbedeutende Aufgaben aus dem Backlog auszuschließen, deren Umsetzung das Endergebnis der Arbeit nicht beeinflusst.



Sprint-Zeitplan



Ein Sprint-Zeitplan ist ein Kalender mit Aufgaben, die für die Arbeit innerhalb der aktuellen Iteration geplant sind. Es zeigt den verbleibenden Arbeitsaufwand bis zum Ende des Sprints an. Das Team wertet den Zeitplan regelmäßig aus und reagiert bei Bedarf schnell auf Änderungen.



Der Besitzer des Produkts achtet besonders auf den Kalender. Es bewertet die Arbeitsgeschwindigkeit und die Einhaltung von Fristen. Wenn beispielsweise der Arbeitsaufwand im Laufe der Zeit nicht abnimmt, bedeutet dies, dass es einige Abweichungen im Prozess gibt und eine dringende Korrektur der Aktionen des Teams erforderlich ist.



So implementieren Sie die Scrum-Methode korrekt



Um die Effizienz des Teams zu verbessern, ist die korrekte Implementierung der Scrum-Methodik erforderlich. Fehler können nicht nur nichts ändern, sondern auch die Produktivität beeinträchtigen.



Wenn Sie Änderungen vornehmen möchten, führen Sie die Implementierung schrittweise durch:



  1. Stellen Sie das Team zusammen . Der Hauptschritt, von dem der Erfolg des Produkts in der Zukunft abhängt. Wählen Sie qualifizierte Fachkräfte mit praktischer Erfahrung auf Ihrem Gebiet. Nehmen Sie sich Zeit und denken Sie daran: Ein funktionsübergreifendes Team zusammenzustellen ist keine leichte Aufgabe.
  2. Weisen Sie einen Product Owner zu . Geben Sie diese Rolle dem Kunden oder seinem Vertreter. Es ist wichtig, dass eine Person Erfahrung in dieser Richtung hat, da die Interaktion innerhalb des Teams und zwischen dem Kunden von ihm abhängt.
  3. -. , . , .
  4. . . , . . - , .
  5. . . . , .
  6. Analysieren und bewerten Sie die Ergebnisse . Führen Sie nach jedem Sprint eine Analyse durch und bewerten Sie die Ergebnisse. Fahren Sie mit der nächsten Entwicklungsstufe nur mit voller Zufriedenheit mit den Ergebnissen der vorherigen fort.


Diese sechs Schritte verbessern die Effizienz des gesamten Teams. Sie wirken aber nur auf den ersten Blick einfach. Tatsächlich wird es viel Zeit in Anspruch nehmen, die Arbeit nach den neuen Regeln zu stabilisieren.



Jemand aus dem Innovationsteam mag es vielleicht nicht. Dies ist natürlich, wenn Menschen sich etwas Neuem widersetzen. Ihre Aufgabe ist es, jedem Teammitglied die Vorteile der neuen Methodik zu vermitteln.



Fassen wir zusammen



Scrum ist eine agile Entwicklungsmethode, die auf agilen Prinzipien basiert. Seine Entwicklung begann in den 90er Jahren des letzten Jahrhunderts und erlangte in den frühen 00er Jahren großen Bekanntheitsgrad. Heute wird Scrum von vielen Teams verwendet, deren Aktivitäten eng mit Projekten verbunden sind.



Scrum kann in 6 Schritten in Ihrem Unternehmen implementiert werden. Bei der Organisation des Prozesses müssen Sie jedoch vorsichtig sein. Die Methodik erfordert keine besonderen Kenntnisse der Mitarbeiter, sondern ist eher eine Frage der Organisation und der ordnungsgemäßen Gestaltung der Arbeitszeit.



Vergessen Sie nicht, dass Scrum keine magische Pille ist. Wenn Sie eine ständige Aufschlüsselung der Fristen und eine schlechte Atmosphäre im Team haben, wird die Einführung neuer Technologien nicht alle Probleme lösen. Stellen Sie daher zunächst die Kommunikation innerhalb des Teams her, bauen Sie effektive Arbeit auf und implementieren Sie dann Scrum, um die Produktivität zu steigern.



Wenn Sie sich für unseren sechsmonatigen Online-Kurs "Beruf: Produkt" anmelden, erfahren Sie noch mehr über Methoden der Teameffektivität! Mehr erfahren!




All Articles