Natürlich ist Scrum nützlich. Es ist eine Methode, die zwei Dinge für Sie erledigt:
- Es ermöglicht Ihrem Projekt, sich an Veränderungen anzupassen und
- Sie können den Fortschritt verfolgen und sich einen Eindruck verschaffen, wann dieser abgeschlossen sein wird
Es hat also einen gewissen Wert, es zu benutzen.
Ich denke, einige deiner Voraussetzungen sind nicht korrekt und das ist der Punkt, an dem du dich verirrst.
Ich kann nicht erkennen, wie jede Story verhandelbar sein kann - sie werden alle für einen funktionierenden Compiler benötigt
Das ist nicht wahr. Sie können eine Teilmenge der Sprache unterstützen und haben dennoch einen Compiler, der unter bestimmten Bedingungen funktioniert. Sicher weniger wert als ein vollständiger Compiler, aber dennoch wertvoll.
Außerdem verstehen Sie falsch, was "verhandelbar" bedeutet: Es bedeutet nicht notwendigerweise "optional", und es gibt keine Anforderung, dass Storys in INVEST optional sind. Eine Geschichte ist ein wertvolles Ziel, und bei der Verhandlung geht es darum, wie dieses Ziel erreicht werden kann. Mit Sicherheit wird es mehr als nur Möglichkeiten geben, das Backend der einzelnen Sprachfunktionen zu implementieren. Dort müssen Sie verhandeln.
Die Geschichten haben alle die gleiche Priorität und es ist egal, in welcher Reihenfolge ich sie liefere.
Dies ist nicht richtig, da Sie unten sagen, dass einige Geschichten nicht "müssen", also sicherlich einige weniger wertvoll sind. Aber auch in der Kategorie "Muss": Einige Sprachmerkmale sind wesentlich grundlegender als andere, und das messbar.
Eine Möglichkeit, dies zu messen, besteht darin, "wie viel mehr Codezeilen auf einer vorhandenen Codebasis kompiliert werden können" oder "wie viele Tests bestehen", wenn Sie über eine vordefinierte Testsuite verfügen.
Es gibt auch andere Möglichkeiten. Wenn Sie eine C-ähnliche Sprache kompiliert haben, benötigen Sie streng genommen nur ein if
und eine goto
Schleife, um eine (kaum) funktionierende Sprache zu haben, die Sie implementieren können while
, for
und repeat
als Makros. Vorausgesetzt, es ist einfach genug, einen Precompiler zu schreiben, können Sie eine billige Notlösung haben (Hey, verhandeln wir ?:-)
In Bezug auf Anpassungsfähigkeit ist die Unterstützung einer Sprache ein ziemlich statischer Satz von Anforderungen, aber Sprachen ändern sich auch, und auch Ihre Kenntnisse über Ihre Bedürfnisse ändern sich. Müssen Sie alles implementieren? Gibt es Dinge, die Sie nicht speziell für Ihre Ziele benötigen? Einer der Grundpfeiler von Agile ist das Wissen, unvollständiges Wissen zu haben. Können Sie es nutzen?
Um Ihre Frage noch direkter zu beantworten: Benötigen Sie agile Prozesse, wenn sich Ihre Anforderungen nicht ändern lassen? Definitiv nicht! Sind sie verwendbar? Wahrscheinlich ja! Sind sie deine Zeit wert? Wahrscheinlich nicht - aber sind Ihre Anforderungen unveränderlich? In meiner Vergangenheit waren "unveränderbare Anforderungen" => "fauler Produktbesitzer" - keine Regel, aber es lohnt sich, daran zu denken.