Flexible Entwicklungsmethodik „Scrum“

    Ich arbeite weiterhin an meiner Dissertation zum Projektmanagement. Heute werden wir uns kurz Scrum und typische Fehler ansehen, die zu Problemen führen. Dieser Beitrag erhebt keinen Anspruch auf Vollständigkeit. Er ist eine Überprüfung und richtet sich an Personen, die mit Scrum nicht oder nur teilweise vertraut sind (z. B. in einem modifizierten Scrum).

    Derzeit ist Scrum eine der beliebtesten Methoden zur Softwareentwicklung. Nach der Definition ist Scrum ein Entwicklungsrahmen, mit dem Menschen aufkommende Probleme lösen können, während sie produktiv sind und Produkte von höchster Wichtigkeit produzieren (aus Sicht des Kunden - Anmerkung des Autors) [1].

    Dies deutet darauf hin, dass es in Scrum nicht möglich ist, in allen Situationen Antworten auf alle Fragen und Handlungsanweisungen zu finden (z. B. gibt die offizielle Beschreibung von Scrum nur die Notwendigkeit an, die für die Fertigstellung der Arbeit erforderliche Zeit zu schätzen, gibt jedoch nicht die Art der Bewertung an. Es kann sich um Planung von Poker und eine andere Art der Bewertung handeln. Daher ist der Name des Themas selbst nicht wahr :)

    Wenn sie über die Scrum-Methodik sprechen, meinen sie meistens eine flexible Softwareentwicklungsmethodik, die auf Scrum-Regeln und -Praktiken basiert, sodass sich herausstellen kann, dass Ihr Scrum cooler als mein Scrum ist und auch von ihm stammt So weit weg wie der VAZ 7 aus dem BMW 7er :) Die

    Autoren von Scrum kündigten folgende Features an:
    -Einfach (engl. Lightweight)
    -Verständlich, erschwinglich
    -Schwierig zu erlernen
    (sich fast gegenseitig ausschließende Absätze)

    Bild

    Rollen in Scrum

    Im klassischen Scrum gibt es drei grundlegende Rollen:
    - Product Owner
    - Scrum Master
    - Development Team Der

    Product Owner (PO) ist das Bindeglied zwischen dem Development Team und dem Kunden. Ziel von PO ist es, den Wert des zu entwickelnden Produkts und die Arbeit des Teams zu maximieren.

    Eines der wichtigsten Tools von PO ist Product Backlog. Das Product Backlog enthält die erforderlichen Arbeitsaufgaben (z. B. Story, Bug, Task usw.), die nach Priorität (Dringlichkeit) sortiert ausgeführt werden müssen.

    Scrum Master(SM) ist der „Dienerführer“. Die Aufgabe von Scrum Master ist es, dem Team zu helfen, seine Effektivität zu maximieren, indem Hindernisse beseitigt, das Team geschult, motiviert und der PO geholfen wird.

    Das Entwicklungsteam (DT) besteht aus Spezialisten, die direkt am Produkt arbeiten. Laut The Scrum Guide (ein Dokument, das eine offizielle Beschreibung von Scrum durch seine Autoren darstellt) muss DT die folgenden Eigenschaften und Merkmale aufweisen:
    - Selbstorganisierend. Niemand (einschließlich SM und PO) kann dem Team mitteilen, wie das Product Backlog in ein funktionsfähiges Produkt umgewandelt werden soll. -
    Seien Sie multifunktional und verfügen Sie über alle erforderlichen Fähigkeiten, um ein funktionsfähiges Produkt freizugeben
    -Das gesamte Team ist für die geleistete Arbeit verantwortlich und nicht die einzelnen Teammitglieder.Die

    empfohlene Teamgröße beträgt 7 (plus oder minus 2) Personen. Nach Ansicht von Scrum-Ideologen benötigen größere Teams zu viele Kommunikationsressourcen, während kleinere Teams das Risiko erhöhen (aufgrund des möglichen Mangels an erforderlichen Fähigkeiten) und den Arbeitsaufwand verringern, den ein Team pro Zeiteinheit leisten kann. [1]

    Scrum-Prozess

    Die Basis von Scrum ist Sprint, bei dem Arbeiten am Produkt durchgeführt werden. Am Ende von Sprint sollte eine neue Arbeitsversion des Produkts eingehen. Der Sprint ist immer zeitlich begrenzt (1-4 Wochen) und hat über die gesamte Lebensdauer des Produkts die gleiche Dauer.

    Vor jedem Sprint-Start wird die Sprint-Planung ausgeführt, bei der der Inhalt des Product Backlogs ausgewertet und das Sprint-Backlog erstellt wird, das die Aufgaben (Story, Bugs, Tasks) enthält, die im aktuellen Sprint ausgeführt werden müssen. Jeder Sprint sollte ein Ziel haben, das motivierend ist und durch das Erfüllen von Aufgaben aus dem Sprint Backlog erreicht wird.

    Täglich findet Daily Scrum statt, bei dem jedes Teammitglied die Fragen beantwortet: "Was habe ich gestern gemacht?", "Was habe ich heute vor?", "Auf welche Hindernisse bin ich bei meiner Arbeit gestoßen?" Die Aufgabe von Daily Scrum ist es, den Status und den Fortschritt der Sprint-Arbeit zu bestimmen, aufgetretene Hindernisse frühzeitig zu erkennen und Entscheidungen zur Änderung der Strategie zu treffen, die zur Erreichung der Sprint-Ziele erforderlich sind.

    Am Ende von Sprint werden Sprint Review und Sprint Retrospective erstellt, deren Aufgabe es ist, die Effektivität (Produktivität) des Teams im vergangenen Sprint zu bewerten, die erwartete Effektivität (Produktivität) im nächsten Sprint vorherzusagen, vorhandene Probleme zu identifizieren, die Wahrscheinlichkeit zu bewerten, alle erforderlichen Arbeiten am Produkt abzuschließen und vieles mehr .

    Eine schematische Darstellung des Prozesses ist in der folgenden Abbildung dargestellt:
    Bild

    Wichtige, häufig vergessene Funktionen

    Sie können häufig hören, dass Scrum nicht oder schlechter als erwartet funktioniert. Es ist zu beachten, dass dies meistens aus einem der folgenden Gründe geschieht:

    1. Scrum wird falsch oder unvollständig angewendet.
    Nach Ansicht der Autoren von Scrum sind empirische Erfahrungen die Hauptquelle für verlässliche Informationen. Die Notwendigkeit einer vollständigen und genauen Implementierung von Scrum wird im Scrum-Leitfaden angegeben und ist auf die atypische Organisation des Prozesses, das Fehlen eines formellen Leiters und eines Leiters zurückzuführen.

    2. Die Wichtigkeit, die Motivation des Teams sicherzustellen, wird unterschätzt.
    Eines der Kernprinzipien von Scrum ist die Selbstorganisation von multifunktionalen Teams. Nach Untersuchungen von Soziologen beträgt die Zahl der selbstorganisierbaren, selbstmotivierten Beschäftigten nicht mehr als 15% der Erwerbsbevölkerung [2].
    Auf diese Weise kann nur ein kleiner Teil der Mitarbeiter effektiv in Scrum arbeiten, ohne dass die Rollen von Scrum-Master und Product Owner wesentlich geändert werden. Dies widerspricht der Ideologie von Scrum und führt möglicherweise zu einer inkorrekten oder unvollständigen Verwendung von Scrum.

    3. Scrum wird für ein Produkt verwendet, dessen Anforderungen der Ideologie von Scrum widersprechen.
    Scrum gehört zur Agile-Familie, daher begrüßt Scrum Änderungen der Anforderungen zu jeder Zeit (der Produktbestand kann jederzeit geändert werden). Dies macht es schwierig, Scrum in Projekten mit festen Kosten und festen Zeiten zu verwenden. Scrums Ideologie behauptet, dass es unmöglich ist, alle Änderungen im Voraus vorauszusehen, so dass es keinen Sinn macht, das gesamte Projekt im Voraus zu planen und sich auf die Just-in-Time-Planung zu beschränken, d. H. Nur die Arbeit zu planen, die im aktuellen Sprint erledigt werden muss. [3] Es gibt andere Einschränkungen.

    Vor- und Nachteile

    Scrum hat durchaus attraktive Vorteile. Scrum ist kundenorientiert und reaktionsschnell. Scrum gibt dem Kunden die Möglichkeit, jederzeit Änderungen an den Anforderungen vorzunehmen (garantiert jedoch nicht, dass diese Änderungen implementiert werden). Die Fähigkeit, Anforderungen zu ändern, ist für viele Software-Kunden attraktiv.

    Scrum ist recht einfach zu erlernen. Sie können Zeit sparen, indem Sie nicht kritische Aktivitäten eliminieren. Mit Scrum können Sie am Ende jedes Sprints ein potenziell funktionsfähiges Produkt erhalten.
    Scrum konzentriert sich auf ein sich selbst organisierendes, multifunktionales Team, das die erforderlichen Aufgaben mit minimaler Koordination lösen kann. Dies ist besonders attraktiv für kleine Unternehmen und Start-ups, da keine Fachkräfte für Manager eingestellt oder geschult werden müssen.

    Natürlich hat Scrum wichtige Mängel. Aufgrund seiner Einfachheit und Minimalität legt Scrum eine kleine Anzahl ziemlich strenger Regeln fest. Dies steht jedoch grundsätzlich im Widerspruch zur Idee der Kundenorientierung, da die internen Regeln des Entwicklungsteams für den Kunden nicht wichtig sind, insbesondere wenn sie den Kunden einschränken. Zum Beispiel kann der Rückstand bei Bedarf durch die Entscheidung des Sprint-Kunden geändert werden, trotz des offensichtlichen Widerspruchs zu den Scrum-Regeln.

    Das Problem ist größer als es scheint. Weil Scrum gehört zur Agile-Familie, Scrum übernimmt beispielsweise nicht die Erstellung eines Kommunikationsplans und einer Risikoreaktion. [3] Dadurch wird es schwierig oder unmöglich, Verstößen gegen die Scrum-Regeln formal (rechtlich oder administrativ) entgegenzuwirken.

    Ein weiteres schwaches Merkmal von Scrum ist die Betonung eines sich selbst organisierenden, multifunktionalen Teams. Mit der offensichtlichen Reduzierung der Kosten für die Koordination des Teams führt dies zu einer Erhöhung der Kosten für die Personalauswahl, deren Motivation und Schulung. Unter bestimmten Arbeitsmarktbedingungen ist die Bildung eines vollwertigen, effektiven Scrum-Teams möglicherweise nicht möglich.

    Referenzliste

    [1] The Scrum Guide. Der definitive Leitfaden für Scrum: Die Spielregeln. (Ken Schwaber, Jeff Sutherland)
    [2] Management Psychology, Study Guide. (A. A. Trus)
    [3] Wie ein traditioneller Projektmanager zu Scrum wird: PMBOK vs. Scrum. (Jeff Sutherland, Nafis Ahmad)

    Vielen Dank im Voraus für diese Fehler und Ungenauigkeiten!

    Jetzt auch beliebt: