paint-brush
Warum Vorhersehbarkeit in der Softwareentwicklung wichtiger ist als Geschwindigkeitvon@davydov
33,900 Lesungen
33,900 Lesungen

Warum Vorhersehbarkeit in der Softwareentwicklung wichtiger ist als Geschwindigkeit

von Denis Davydov4m2023/10/30
Read on Terminal Reader

Zu lang; Lesen

Während Geschwindigkeit oft die primäre Messgröße für die Produktivität in der agilen Softwareentwicklung ist, kann sie zu Problemen und technischen Schulden führen, wenn Geschwindigkeit Vorhersehbarkeit vorgezogen wird. Dieser Artikel betont die Bedeutung der Vorhersagbarkeit als Maß für den Erfolg eines Entwicklungsteams und schlägt vor, ein Gleichgewicht zwischen Geschwindigkeit und Vorhersagbarkeit zu finden, um optimale Ergebnisse zu erzielen.
featured image - Warum Vorhersehbarkeit in der Softwareentwicklung wichtiger ist als Geschwindigkeit
Denis Davydov HackerNoon profile picture



In der Technologiewelt ist Geschwindigkeit oft der Maßstab, um die Produktivität eines Entwicklungsteams zu messen. Velocity ist eine Bewertung, die in der agilen Softwareentwicklung verwendet wird, um den Arbeitsumfang zu messen, den ein Team in einem bestimmten Zeitraum erledigen kann, typischerweise dargestellt durch Story Points oder User Stories, die in jeder Iteration abgeschlossen werden. Mit anderen Worten: Es kommt darauf an, wie schnell das Team Code erstellt und Funktionen vorantreibt. Aber auch wenn Geschwindigkeit cool ist, kann sie zu schlechten Ergebnissen und einer Menge Unordnung hinter den Kulissen führen, wenn sie nicht richtig ausbalanciert wird.


Obwohl es viele andere Messungen gibt, die zusammen ein großartiges System zur Verfolgung des Fortschritts bilden, bleibt die Geschwindigkeit eine der beliebtesten und daher am häufigsten falsch angewendeten.


Der Reiz der Geschwindigkeit ... und seine Gefahren

Geschwindigkeit steht oft im Mittelpunkt. Teams sind stolz darauf, wie schnell sie eine neue Funktion zum Leben erwecken oder sich an die neuesten Marktveränderungen anpassen können. Dieses Streben nach Geschwindigkeit zeugt von dem Wunsch, mit der Konkurrenz Schritt zu halten, die Nutzer zu binden und kontinuierlich Innovationen zu entwickeln. Der Denkprozess ist einfach: Je schneller Sie handeln, desto mehr erreichen Sie bzw. desto mehr Wert bieten Sie Ihren Stakeholdern.


Lassen Sie es uns jetzt aufschlüsseln. Vollgas zu geben kann manchmal bedeuten, etwas viel Wichtigeres zu verpassen – die Fähigkeit, mit weniger oder gar keinem Burnout und damit mit Beständigkeit zu arbeiten. Stellen Sie sich vor, Sie bauen superschnell ein superhohes Gebäude, aber mit einem instabilen Fundament. Im Laufe der Zeit kann dies zu einer Menge technischem Durcheinander führen – das sind die versteckten Kosten für diese Schnelllösungen, die sich später negativ auswirken. Natürlich hat eine blitzschnelle Lieferung ihren Reiz, aber es lohnt sich, über die Kopfschmerzen nachzudenken, die sie danach mit sich bringen kann.



Vorhersehbarkeit: Das mächtige Werkzeug

Vorhersagbarkeit als Maß bezieht sich auf die Konsistenz und Zuverlässigkeit, mit der ein Team oder System über einen bestimmten Zeitraum Ergebnisse liefert. Anstatt sich auf die Geschwindigkeit zu konzentrieren, sollten Teams ihren Fokus auf die Verbesserung der Vorhersehbarkeit verlagern.


Dafür gibt es mehrere Gründe:


  • Klare Erwartungen bei den Stakeholdern festlegen.

    Ein Team, das unterschiedliche Ergebnisse liefert – 100 Punkte in einem Monat, dann nur 10 Punkte in den nächsten beiden – kann für die Beteiligten eine Achterbahnfahrt sein. Die ungeklärten Ergebnisse versetzen die Stakeholder in ein Dilemma und sind unsicher, was sie als nächstes erwartet. Stattdessen wird ein Team, das Monat für Monat konstant beispielsweise 40 Punkte liefert, zum MVP – es wird zum zuverlässigen Spieler im Spiel. Und das ist es, wonach sich die Wirtschaft wirklich sehnt: Vorhersehbarkeit .


  • Je weniger Fehler, desto länger dauert das Spiel.

    Während Unvorhersehbarkeit hin und wieder zu brillanten Ausbrüchen führen kann, ist es die Beständigkeit der Vorhersehbarkeit, die auf lange Sicht wirklich gewinnt. Eine Sache ist: Der Weg zur Vorhersehbarkeit ist nicht universell. Natürlich hat jedes Team seine eigene Reise. Dennoch gibt es ein Muster bei den Top-Performern.


    Ausgereifte agile Praktiken sind der rote Faden unter leistungsstarken, vorhersehbaren Teams. Unabhängig davon, ob sie sich mit Scrum, Kanban oder einer Mischung verschiedener Methoden beschäftigen, haben diese Teams den Rhythmus festgelegt, der zu ihrem Kern passt und so Raum für strukturiertes Arbeiten und kreative Freiheit lässt. Auf der anderen Seite gibt es ein ständiges Streben nach Verbesserung, damit jeder Sprint oder jede Iteration den vorherigen in den Schatten stellt.


    Betrachten wir ein konkretes Beispiel. Jira von Atlassian begann als einfacher Bug- und Issue-Tracker, hat sich jedoch zu einem der weltweit beliebtesten Projektmanagement-Tools entwickelt und bietet seine Dienste einer Vielzahl von Branchen an. Es gibt natürlich eine Vielzahl unterschiedlicher Faktoren, die beim Aufstieg des Unternehmens eine Rolle gespielt haben, aber Vorhersehbarkeit ist zweifellos einer der wichtigsten. Mit einer Geschichte konsistenter Iterationen (Einführung konsistenter und regelmäßiger Updates), einer Feedbackschleife, einem erweiterbaren Ökosystem und einer transparenten Roadmap hat Jira seine Position in vielen Organisationen weltweit gesichert.


Die Balance: Geschwindigkeit vs. Vorhersagbarkeit

Obwohl mein Hauptziel in diesem Artikel darin besteht, zu zeigen, warum Vorhersehbarkeit wichtiger ist als Geschwindigkeit, ist es meine Pflicht zu erwähnen, dass die beste Vorgehensweise immer ein gutes Gleichgewicht zwischen diesen beiden ist. Wenn es darum geht, die fairste Messung zu wählen, ist die Vorhersehbarkeit zweifellos etwas, das das längste Spiel verspricht. Wenn Sie jedoch in der Lage sind, ein vielschichtiges Bewertungssystem aufzubauen, ist es am besten, einen Weg zu finden, beide (oder sogar mehr) Messungen zu kalibrieren.


Um diesen goldenen Mittelweg zu finden, ist ein hybrider Ansatz erforderlich. Dabei geht es nicht nur darum, den Unterschied aufzuteilen, sondern beide Elemente in den Entwicklungslebenszyklus zu integrieren. Die iterative Entwicklung kann beispielsweise während bestimmter Sprints für Geschwindigkeitsschübe sorgen, gefolgt von Phasen, in denen Vorhersehbarkeit und Verfeinerung Vorrang haben. Da die Teams den Wert von Schnelligkeit und Konsistenz erkennen, könnten sie ihren Ansatz auf bestimmte Projekte und Phasen zuschneiden und dabei die Stärken jedes Einzelnen nutzen, um ein Produkt zu produzieren, das sowohl zeitnah als auch zuverlässig ist.


Zusammenfassend lässt sich sagen, dass es schwierig, aber wirklich wichtig ist, sich vor Augen zu halten, dass sich der Bereich Software nicht wie eine endlose Belastung anfühlen sollte. Wenn bereits komplizierte technische Aufgaben durch problematische und manchmal oberflächliche Kennzahlen verkompliziert werden, gerät das eigentliche Wesen der Arbeit in den Hintergrund, was oft zu unnötiger Spannung führt. Wenn Sie an der Spitze eines Technologieteams stehen, ist es von entscheidender Bedeutung, darüber nachzudenken, wie Sie den Erfolg messen und Ihre Crew leiten. Am besten ist es, die Entwicklerkollegen, die Sie bewerten möchten, zu befragen und sie regelmäßig zu prüfen.