Von der 3C-Methode zur 5C-Methode: Warum Kontext und Commitment im Requirements Engineering unverzichtbar sind

Im Requirements Engineering ist die 3C-Methode (Card, Conversation, Confirmation), eingeführt von Ron Jeffries, ein bewährtes Framework, das vor allem im agilen Umfeld eine zentrale Rolle spielt. Diese Methode stellt sicher, dass Anforderungen klar dokumentiert (Card), in der Zusammenarbeit geklärt (Conversation) und durch Akzeptanzkriterien abgesichert (Confirmation) werden. Doch wie viele bewährte Ansätze aus der agilen Welt stammt die 3C-Methode aus einer Zeit, in der die Komplexität moderner Projekte und die Dynamik globaler, verteilter Teams noch nicht in diesem Maße existierte.

In diesem Blog möchte ich die These aufstellen, dass die 3C-Methode um zwei weitere Dimensionen erweitert werden sollte: Kontext und Commitment. Diese zusätzlichen Cs können sicherstellen, dass Anforderungen nicht nur präziser und realistischer formuliert, sondern auch nachhaltig verfolgt und umgesetzt werden.


Die ursprüngliche 3C-Methode: Ein kurzer Überblick

Die 3C-Methode wurde von Ron Jeffries, einem der Mitbegründer des Extreme Programming (XP), entwickelt. Sie dient dazu, User Stories und Anforderungen strukturiert und effektiv zu gestalten. Hier eine kurze Zusammenfassung der drei ursprünglichen Cs:

  1. Card – Anforderungen werden auf Karten (physisch oder digital) knapp formuliert, um den Kern der Anforderung zu beschreiben.
  2. Conversation – Die Anforderung wird in Gesprächen zwischen Team und Stakeholdern weiterentwickelt und geklärt.
  3. Confirmation – Durch Akzeptanzkriterien wird definiert, wann die Anforderung als erfüllt gilt.

Diese Methode hat sich in der Praxis bewährt, da sie Kommunikation und Kollaboration in den Vordergrund stellt und klare Prüfkriterien liefert.


Warum die 3C-Methode heute nicht mehr ausreicht

Die Arbeitsrealität in agilen Projekten hat sich verändert. Teams arbeiten zunehmend in globalen, verteilten Umgebungen, Anforderungen sind oft komplexer, und der Erfolg hängt von der Fähigkeit ab, Anforderungen nicht nur zu klären, sondern sie in einen übergreifenden Kontext einzubetten und alle Beteiligten zu einem Commitment zu führen.

Hier kommen die zusätzlichen Cs ins Spiel: Kontext und Commitment.


Das vierte C: Kontext

Warum ist Kontext wichtig?

Der Kontext ist die Grundlage, auf der Anforderungen überhaupt erst verstanden und bewertet werden können. Ohne den Kontext ist eine Anforderung isoliert und kann missverstanden oder fehlinterpretiert werden. Ein Feature, das in einem bestimmten Projektumfeld sinnvoll erscheint, könnte in einem anderen überflüssig sein.

Wie Kontext die Methode ergänzt:

  • Einbettung der Anforderung: Anforderungen sollten nicht nur auf das „Was“ (Card) und „Wie“ (Conversation, Confirmation) fokussiert sein, sondern auch auf das „Warum“.
  • Systemgrenzen und Abhängigkeiten: Der Kontext klärt, welche Systeme, Prozesse oder Stakeholder von der Anforderung betroffen sind.
  • Geschäftsziele: Der Zusammenhang zwischen der Anforderung und den übergeordneten Geschäftszielen wird explizit gemacht.

Beispiel:
Eine User Story wie „Als Kunde möchte ich meine Bestellung speichern können“ hat eine andere Priorität, wenn der Kontext ein neues MVP ist, das schnell auf den Markt gebracht werden soll, im Vergleich zu einem etablierten System, bei dem die Stabilität wichtiger ist.


Das fünfte C: Commitment

Warum ist Commitment entscheidend?

Selbst die besten Anforderungen sind wertlos, wenn die Beteiligten sich nicht dazu verpflichten, diese umzusetzen. Commitment bedeutet, dass alle Stakeholder – von Teammitgliedern bis zu Führungskräften – hinter der Anforderung stehen und sich verpflichten, die notwendigen Ressourcen bereitzustellen.

Wie Commitment die Methode ergänzt:

  • Team-Verantwortung: Das Team verpflichtet sich, die Anforderungen in der gewünschten Qualität und Zeit umzusetzen.
  • Stakeholder-Zustimmung: Stakeholder erklären sich bereit, Ressourcen, Budget und Unterstützung bereitzustellen.
  • Nachhaltigkeit: Commitment verhindert, dass Anforderungen verworfen oder ignoriert werden, sobald Hindernisse auftreten.

Beispiel:
Eine Anforderung wird erst in das Backlog aufgenommen, wenn alle Stakeholder sich darüber einig sind, dass sie notwendig, machbar und mit den Ressourcen umsetzbar ist.


Von 3C zu 5C: Ein integrierter Ansatz

Die erweiterte 5C-Methode bietet eine strukturiertere und umfassendere Herangehensweise für modernes Requirements Engineering:

  1. Card: Prägnante Formulierung der Anforderung.
  2. Conversation: Klärung und Diskussion der Details durch Team und Stakeholder.
  3. Confirmation: Festlegen von Akzeptanzkriterien, um die Erfüllung zu überprüfen.
  4. Context: Einbettung der Anforderung in den größeren Rahmen, einschließlich Geschäftsziele und Systemgrenzen.
  5. Commitment: Sicherstellung, dass alle Beteiligten sich zur Umsetzung der Anforderung verpflichten.

Vorteile der erweiterten 5C-Methode

  • Klarheit: Kontext verhindert Missverständnisse und sorgt dafür, dass Anforderungen sinnvoll priorisiert werden.
  • Nachhaltigkeit: Commitment stellt sicher, dass Anforderungen nicht nur diskutiert, sondern auch konsequent umgesetzt werden.
  • Flexibilität: Die Methode bleibt agil, da sie Kommunikation und Anpassung fördert, ohne starre Prozesse vorzugeben.

Fazit: Die 5C-Methode als neuer Standard?

Die 3C-Methode hat sich bewährt, aber sie stammt aus einer Zeit, in der Anforderungen oft weniger komplex waren und Teams enger zusammenarbeiteten. Mit den zusätzlichen Cs Kontext und Commitment wird die Methode robuster und besser an die Realität moderner agiler Projekte angepasst.

Was denkst du? Sind Kontext und Commitment notwendige Ergänzungen, oder reichen die ursprünglichen drei Cs aus? Teile deine Meinung und Erfahrungen in den Kommentaren!

Veröffentlicht von

Ruedi

Rudolf "Ruedi" Gysi Liebt Produkte welche Kunden begeistern und Forscher zum Thema Iterative Produktentwicklung. Versucht Work-Systems und Social-Systems nachhaltig miteinander zu verbinden damit wertvolle Arbeitswelten entstehen.

Kommentar verfassen