Priorisierung nach der MoSCoW-Methode

Bei der Durchführung von Softwareentwicklungs-Projekten kommt der richtigen Priorisierung von Funktionalitäten für den Projekterfolg eine wichtige Bedeutung zu. Dies gilt im Besonderen für Projekte, die nach einem agilen Vorgehensmodell wie Scrum arbeiten. Durch die Priorisierung wird sichergestellt, dass das Team die wichtigsten Anforderungen so schnell wie möglich umsetzt und die Software frühestmöglich auch produktiv zum Einsatz kommen kann.

Sinnvolle und nachvollziehbare Priorisierung

Foto: Alex Minza unter CC-Lizenz

Bei der Priorisierung von Software-Anforderungen wendet //SEIBERT/MEDIA bevorzugt die sog. MoSCoW-Methode an, die Dai Clegg von Oracle UK 1994 vorgeschlagen hat. Der Hintergrund: Wenn Kunden nach einer Priorisierung ihrer Anforderungen gefragt werden, stufen sie häufig (fast) alle Anforderungen als sehr relevant ein. Eine Priorisierung etwa in sehr wichtig, durchschnittlich wichtig und wenig wichtig fällt oft schwer.

Die MoSCoW-Regel ermöglicht hier eine sinnvolle und nachvollziehbare Abstufung, bei der keine interessanten Features vermeintlich unter den Tisch fallen. Dabei wird jede Anforderung in eine von vier Kategorien eingeteilt, aus deren Anfangsbuchstaben sich der Name des MoSCoW-Prinzips ergibt.

Must-have-Anforderungen

Diese Anforderungen sind essenziell für die Anwendung und unbedingt umzusetzen. Wird eines dieser hoch priorisierten Features nicht realisiert, ist die Software unter Umständen gar nicht funktionsfähig oder es fehlt ein für die Zufriedenheit der Nutzer bedeutender Basisfaktor (zur Wirkung einzelner Features auf die Kundenzufriedenheit siehe unserer Artikel zum Kano-Modell).

Should-have-Anforderungen

In dieser zweitwichtigsten Kategorie werden Anforderungen gesammelt, die nicht zwangsläufig umgesetzt werden müssen, aber dennoch einen hohen Nutzen haben. Sobald die Must-have-Anforderungen ausgeliefert worden sind, realisiert das Team so viele Should-have-Features wie im Zeit- und Budget-Rahmen möglich.

Could-have-Anforderungen

Hierfür wird häufig auch die Bezeichnung "nice to have" verwendet. Diese Anforderungen können umgesetzt werden, wenn noch Zeit und Budget vorhanden sind. Diese Anforderungen sind keine Kern-Features, würden das Release aber aufwerten.

Won’t-have-Anforderungen

Diese Anforderungen sind nicht etwa grundsätzlich verzichtbar oder nicht gewünscht (dann wären sie nicht im Backlog). Allerdings können und sollen sie nicht im Rahmen der anstehenden Iteration umgesetzt werden. Für spätere Releases sind sie allerdings auf jeden Fall interessant. Mitunter werden diese Anforderungen deshalb auch positiver als Want-Features oder Want-to-have-but-won’t-have-this-time-round-Anforderungen bezeichnet: Sie sind sinnvoll, aber nicht jetzt.

Der Vorteil dieser Kategorisierung von Anforderungen gegenüber einer Priorisierung nach Zahlen: Es ist für alle Beteiligten direkt ersichtlich, welche Anforderungen die Software in jedem Fall erfüllen muss, damit das System produktiv einsetzbar ist. Das Entwicklungsteam kann sich zunächst auf die Anforderungen fokussieren, die absolut notwendig sind, und sich die Vorteile eines inkrementellen Vorgehens zunutze machen.

Wie läuft die Priorisierung praktisch ab?

In einem Workshop mit dem Projektteam werden alle Anforderungen aus dem Backlog in Form von Karten (für Nutzer der Software JIRA ist hier das Plugin Agile Scrum Cards sehr zu empfehlen) auf einem Tisch ausgebreitet. Zugleich werden Karten für die vier Kategorien Must, Should, Could und Would ausgelegt. Die einzelnen Anforderungen werden nach und nach durchgesprochen, deren Relevanz gemeinsam diskutiert und jeweils einer dieser vier Kategorien zugeordnet. Am Ende sollte ein klares Bild davon bestehen, woran in der nächsten Zeit zu arbeiten ist.

Prioritäten ändern sich

Prioritäten können sich mit der Zeit verschieben. Dies kann verschiedene Ursachen haben. Beispielsweise werden im Projektverlauf aus Could-Anforderungen Shoulds, andere Anforderungen werden womöglich sogar obsolet. Daher sollte das Team die Priorisierung in regelmäßigeren Abständen überprüfen und die Relevanz der Anforderungen aus dem Backlog neu bewerten.

Haben Sie Fragen zu agilen Vorgehensweisen? Möchten Sie Agilität in Ihrem Unternehmen einführen? Bei //SEIBERT/MEDIA ist “Agile” in Projekten an der Tagesordnung. Mit mehr als 20.000 Stunden Projekterfahrung in internen und externen Projekten mit agilen Entwicklungsmethoden gehört //SEIBERT/MEDIA zu den erfahrenen und größten Anbietern für Scrum in Verbindung mit den Atlassian-Tools Jira/Greenhopper und Confluence in Deutschland. Gerne helfen wir Ihnen bei der Etablierung agiler Prinzipien und Verfahren – sprechen Sie uns einfach unverbindlich an. Ausführliche Informationen finden Sie auch auf unserer speziellen Seite zum Thema Agilität in Unternehmen.

Weiterführende Informationen

Agile Projekte in der Praxis: Elemente, Nutzen, Tools, Hürden
Daily Standup-Meetings: Einsatzbesprechungen für effektive Teamarbeit
Greenhopper und Jira: Agile Projekte digital abbilden
Live-Session zu Agilität mit Scrum und Kanban
Agile Software-Entwicklung erfordert viel Disziplin


Mehr über die Creative-Commons-Lizenz erfahren