Scenario Casting ist eine kollaborative Methode zur Strukturierung von Softwareentwicklungsprojekten - von Fachexpertise vorangetrieben - ausgedrückt in Szenarien.
Scenario Casting ist besonders nützlich, um komplexe oder schwer fassbare Domänen in den Griff zu bekommen. Wenn deine Domäne sich so anfühlt und möglicherweise auch noch viele Personen beteiligt sind, versuche es einmal mit Scenario Casting.
Scenario Casting hilft dir dabei, Software entlang der Kernprozesse deiner Domäne zu entwickeln, Schritt für Schritt auszuarbeiten und zu verfeinern.
Scenario Casting hilft dir dabei, all die vielen Ideen, Fragen und Anliegen in deinem Projekt in eine kleine Anzahl sehr aussagekräftiger Szenarien zu gießen. Diese Szenarien setzen einen Fokus für alle Beteiligten und befähigen sie, an einem Strang zu ziehen.
Scenario Casting in 5 Minuten:
auf YouTube
ansehen
Lass dir Scenario Casting von unserem DDD-Experten Richard Wallintin erklären (Englisch):
auf YouTube
ansehen

Was ist ein Szenario?

Ein Szenario ist wie eine Entdeckungsreise! Ein Szenario ermöglicht dir...
Scenario Casting bedeutet, die nächste Reise zu planen. Und zwar genau die, die den Beteiligten jetzt am spannendsten erscheint - unter Berücksichtigung aller Optionen.
Ein SZENARIO ist eine Übersicht über eine interessante Situation, die auf ein bestimmtes Ergebnis hinweist, z. B. "Ada bestellt eine Calzone-Pizza". So einfach ist das.
Ein Szenario wird aus domänenspezifischer Perspektive in reiner Fachsprache beschrieben. Es ist konkret, detailliert und eindeutig.
Ein Szenario ergibt Sinn. Ein gutes Szenario ist voller konkreter Informationen über die Domäne. Es zeigt alle relevanten Ergebnisse entlang eines beispielhaften Geschäftsprozesses und wie sie miteinander in Beziehung stehen.
Ein Szenario schreibt jedoch KEINE konkrete Lösung vor. Es zeigt ein Beispiel dafür, was in der Domäne Schritt für Schritt erreicht wird, um besser verstehen zu können, für welche (Teil-)Ziele eine Lösung benötigt wird.

Wie entwickeln wir gute Szenarien?

Finde Szenarien, indem du nach Beispielen suchst, die zeigen, warum deine Ideen, Fragen und Anliegen - oder andere interessante Punkte - aus domänenspezifischer Perspektive relevant sind.
Reicht eine Art
von Pizzakarton
für unser
Geschäft aus?
Ada bestellt
1 Calzone-Pizza,
1 Pizza Margherita
und 2 Kinderpizzen.
Interessanter Punkt
Beispiel-Szenario
Je komplexer dein Projekt ist, desto breiter gestreut und vielfältiger sind die interessanten Punkte. Die entsprechenden Beispielszenarien machen sie kompatibel miteinander und helfen, dass alle auf dieselben Fachthemen schauen!

Wie arbeiten wir mit Szenarien?

Ein Szenario ist repräsentativ für eine ganze Klasse ähnlicher Geschäftsprozesse.
Es ermöglicht, komplexe Domänen entlang der Prozesse aufzuteilen und schrittweise, Szenario für Szenario, zu bewältigen.
Passe an, teile und kombiniere Szenarien, um dich auf die Dinge zu konzentrieren, die im Moment am wichtigsten sind.
Nutze Szenarien für zielgerichtete Anforderungsanalyse: um den Zweck und die Mechanismen von Geschäftsprozessen zu erkunden, Abhängigkeiten und Fallstricke aufzudecken, ins Detail zu gehen, ohne sich zu verlieren.
Wenn du ein Entwickler bist, weißt du, dass jedes realistische Szenario früher oder später Realität wird. Es ist also entscheidend, dass du die richtigen Szenarien auswählst. So kannst du innovative Lösungen schaffen, die jeder Herausforderung gewachsen sind! Scenario Casting hilft dir dabei, diese Szenarien Schritt für Schritt zu finden.
"Mithilfe des Scenario Castings konnten wir mit unserem Kunden in Fachsprache schnell die richtigen Diskussionen führen. Domänenarchitektur und umzusetzende Stories sind dabei fast wie nebenbei abgefallen. Alle fühlen sich mitgenommen. Ich möchte nicht mehr anders fachliche Anforderungen erheben."

Scenario Casting - das Workshop-Format

Ein Scenario Casting wird in drei iterativen Schritten durchgeführt:
  1. Brainstorming von Beispielszenarien, wie einzelne Ideen, Fragen und Anliegen die Domäne beeinflussen - ausschließlich in Fachsprache! Dies führt zu einem ersten Scenario Backlog, der den Problemraum umreißt.
  2. Priorisierung des Scenario Backlogs und Festlegung des Umfangs.
  3. Kombination der Top-Szenarien zu zusammenhängenden übergreifenden Orientierungsszenarien.
Danach vertiefe und erzähle die Geschichten der Orientierungsszenarien in kollaborativen Modellierungssitzungen mit Domain Storytelling oder Event Storming.
Ein Scenario Casting wird iterativ durchgeführt. Immer wenn du eine neue Iteration oder Phase eines Projekts startest, beginne mit einem Scenario Casting, um einen Überblick über die Domäne zu erhalten und einen Fokus für alle Beteiligten zu setzen.
Wenn du bereits ein prall gefülltes Scenario Backlog hast, kannst du Schritt 1 (Brainstorming) überspringen und mit Schritt 2 (Priorisierung) fortfahren. Wenn die Szenarien mit höchster Priorität überschaubar erscheinen und jedes für sich interessant genug ist, überspringe Schritt 3 (Kombination) und vertiefe die einzelnen Szenarien direkt. Das Scenario Casting kann umfangreich und detailliert oder sehr kurz und prägnant sein - abhängig von deinen situativen Bedürfnissen. Halte es leichtgewichtig!

Wie nutzen wir die Ergebnisse des Scenario Castings?

Jetzt, da wir den Problemraum durch Ausarbeitung der Orientierungsszenarien näher erkundet haben, gehen wir zum Lösungsraum über und entwickeln Software dafür!
Lass uns die Orientierungsszenarien verwenden, um das übergeordnete Teamziel für die nächsten Sprints festzulegen: Die Orientierungsszenarien zum Leben erwecken! Dies ist sozusagen ein kompakter "Mini-Projekt", das aus domänenspezifischer Sicht Sinn ergibt und alle vereinbarten relevanten Punkte abdeckt.
Teams fokussieren sich auf ihre individuellen Teile der Orientierungsszenarien und entwickeln Lösungen dafür.
Schließlich werden ihre Ergebnisse gemäß den Orientierungsszenarien integriert, getestet und abgenommen. Ein Orientierungsszenario sollte immer konkret, detailliert und präzise genug sein, um als Testfall zu dienen.
Starte dann das nächste "Mini-Projekt" mit einem neuen Scenario Casting.

Scenario Casting-Strategien

Wenn wir uns am Anfang befinden, analysieren wir längere Orientierungsszenarien, um uns in der Domäne umzusehen - wie bei einer Sightseeing-Tour!
Später möchten wir viele kürzere Reisen in bestimmte Bereiche unternehmen, um sie besser kennenzulernen - die Orientierungsszenarien werden kleiner und vielfältiger. Das Scenario Backlog hilft uns dabei, den Überblick zu behalten und unsere Scenario Casting-Strategie an die Bedürfnisse anzupassen.
Führe Scenario Castings mit "benachbarten" Subdomänen durch, um ihre Interaktionen zu klären.
Ermutige Teams, ihre eigenen Scenario Backlogs zu erstellen und Scenario Castings innerhalb ihrer Subdomänen durchzuführen, um tiefer einzutauchen, Randfälle, negative Fälle, Variationen, Erweiterungen usw. zu entdecken und ihre Domänenmodelle entsprechend zu gestalten.
"In Kombination mit Domain Storytelling und Event Storming haben wir uns mit Scenario Casting eine gute Übersicht verschafft und konnten so effizient und strukturiert vorgehen. Die drei Methoden ergänzen sich perfekt."

Die Artefakte

Du kennst das wahrscheinlich: Während du mitten in einem Thema steckst, stößt du auf neue Punkte, die du nicht vergessen darfst und die berücksichtigt werden sollten. Ohne abzuschweifen, ist es unmöglich, sich um all dies zu kümmern! Lege sie einfach in den Scenario Backlog und plane später, wann du dich damit befassen möchtest!
Ein Scenario Backlog ist eine Sammlung von Szenarien, die alle relevanten Punkte enthalten sollen.
Neue Szenarien tauchen ständig auf, insbesondere während kollaborativer Modellierungssitzungen, Codierung, Testen und natürlich bei der Verwendung der Software. Sie alle kommen in den Scenario Backlog und werden in zukünftigen Scenario Castings berücksichtigt.

Wie nutzen wir das Scenario Backlog?

Das Scenario Backlog hilft dabei, dein Projekt langfristig zu steuern und den evolutionären Softwareentwicklungsprozess zu gestalten, ohne sich frühzeitig auf Lösungsideen festzulegen.
Das Scenario Backlog ist ein lebendiges Objekt. Es ist nie zu spät, neue Szenarien einzufügen, die berücksichtigt werden müssen.
Das Scenario Backlog ist strikt auf den Problemraum beschränkt, um vorzeitiges Design und zu frühe Planung zu vermeiden.
Stattdessen hilft das Scenario Backlog dabei, Orientierungsszenarien zu erstellen, die einen übergreifenden Fokus zwischen den Teams innerhalb des Problemraums setzen und die individuellen Anstrengungen der agilen Teams bündeln.
"Ein gutes Orientierungsszenario gibt einfach Fokus, Fokus, Fokus ... im Priorisierungsprozess, in der Abstimmung der 50 Teams untereinander, bei der Umsetzung in den Teams, in der Testvorbereitung."
Ein Orientierungsszenario beleuchtet den Problemraum. Es umreißt die Hauptabsichten der beteiligten Akteure und beschreibt die Ergebnisse, die sie in einem beispielhaften Geschäftsprozess entlang der aktuellen interessanten Punkte erzielen.
Neue Orientierungsszenarien werden aus den aktuellen Szenarien mit höchster Priorität im Scenario Backlog erstellt. Zwischen den Szenarien besteht oft eine kausale Beziehung. Wir machen dies deutlich, indem wir sie zusammenstellen. Auf diese Weise werden viele kleine Szenarien zu einem zusammenhängenden und ikonischen Orientierungsszenario, das allen im Projekt bekannt ist!

Wofür verwenden wir Orientierungsszenarien?

Ein Orientierungsszenario erfüllt viele Zwecke:
  • Es setzt einen übergreifenden Fokus für die Softwareentwicklung in unmittelbarer Zukunft.
  • Es dient als umfassender Testfall für die korrekte Integration der Produktinkremente der Teams.
  • Es hilft dabei, die Komplexität der Domäne einzuschätzen und Ressourcen für kollaborative Modellierungssitzungen besser zu planen.
  • Es bildet eine solide Grundlage, um Subdomänen und die Events an ihren Grenzen zu identifizieren, um daran entlang Bounded Contexte und technische Architektur zu designen.
  • Es dient als Ausgangspunkt für weitere Szenarien: negative und alternative Szenarien, Erweiterungsszenarien usw.

Agilität im großen Maßstab - ernsthaft!

Agilität kann als kurze Feedback-Zyklen verstanden werden, die zu häufigen Verbesserungen sowohl des Produkts als auch des Plans führen. Aber wie funktioniert das im großen Maßstab? Es fühlt sich nicht sehr agil an, wenn Teams langfristige, teamübergreifende Programmieraufgaben planen.
Es wäre hilfreicher, wenn sich die Teams ausschließlich auf ihre eigenen Produkte konzentrieren könnten, aber gleichzeitig mehr Orientierung erhalten, um ihre Ergebnisse besser mit denen anderer Teams abzustimmen.
Hier kommen sowohl DDD-Subdomänen als auch Scenario Casting ins Spiel: DDD-Subdomänen definieren den individuellen Teamumfang im Problemraum, und Orientierungsszenarien bieten teamübergreifende Anleitung dafür, worauf sich die Teams innerhalb ihrer Subdomänen als nächstes konzentrieren sollten. In Kombination ermöglicht dies den Teams, so unabhängig wie möglich zu arbeiten und dennoch effektiv zusammenzuarbeiten: Das gemeinsame Ziel besteht darin, das Orientierungsszenario zum Leben zu erwecken!
Ein Orientierungsszenario beleuchtet den Geschäftsbedarf, ohne Lösungen vorzuschreiben. Daher liegt es in der Verantwortung der agilen Teams, Lösungen für ihre Teile des Orientierungsszenarios zu finden und umzusetzen - auf die gute alte, Team-basierte, nicht skalierte agile Art. Jedes Team hat die Freiheit, alternative Szenarien zum Orientierungsszenario zu betrachten und ihr Produkt weiterzuentwickeln. Dies ermöglicht es jedem Team, das Beste aus der zur Verfügung stehenden Zeit zu machen und gleichzeitig im Einklang mit dem aktuellen Orientierungsszenario zu bleiben.
Sobald ein Orientierungsszenario zum Leben erweckt wurde, führen die Teams ein weiteres Scenario Casting für das nächste durch.
Dies ist ein einfacher, aber leistungsstarker, wahrhaft aus der Fachdomäne getriebener, agiler Prozess im großen Maßstab.

Der Hintergrund

Scenario Casting ist ein agiles und kollaboratives Werkzeug basierend auf Domain-driven Design (DDD).
Das erste Scenario Casting wurde 2018 ad hoc durchgeführt - getrieben von der Notwendigkeit, mit einer großen Gruppe von Experten in sehr kurzer Zeit die relevantesten Szenarien mit Event Storming zu erfassen. Seitdem haben unzählige Stunden intensiver Workshops mit Dutzenden von Teams die Methode in ihre aktuelle Form gebracht.
Jörn Koch begeistern ambitionierte und stark kooperative Projekte in komplexen Fachdomänen.
Agile Ansätze und DDD sieht Jörn als Schlüssel für erfolgreiche Softwareentwicklung - Schlüssel, die sich jedoch manchmal schwer drehen lassen. Deshalb ist Jörn stets auf der Suche nach leichtgewichtigen und eleganten Ansätzen, die dies für alle einfacher machen. Scenario Casting ist ein solcher Ansatz.
Jörn ist Experte für DDD und agiles Vorgehen. Er arbeitet als Coach und Trainer bei WPS – Workplace Solutions.

Mit Scenario Casting loslegen

Möchtest Du Scenario Casting in deinem Projekt verwenden? Brauchst Du nützliche Profi-Tipps zum Einstieg oder tatkräftige Unterstützung bei der Durchführung von Scenario Casting-Workshops?
Nimm Kontakt auf
Lass uns gerne unverbindlich sprechen, damit du das Beste aus Scenario Casting in der aktuellen Phase deines Projekts herausholen kannst. Wenn du Scenario Casting bereits ausprobiert hast oder bereits ein erfahrener Scenario Casting-Anwender bist, gib gerne Feedback!

Schulung zum Scenario Casting

Möchtest du herausfinden, wie man Scenario Casting in deiner Organisation einsetzt? Das Training zeigt dir, wie du Scenario Casting nutzen kannst, um
Das Training besteht aus praktischen Übungen und erklärender Theorie (einschließlich DDD und agiler Ansätze in Kürze). Es ist speziell darauf ausgelegt, alle Beteiligten deines Projekts abzuholen: Domänenexperten, Benutzer, BAs, POs, Agile-Meister, Tester, UX-Designer, Entwickler usw.
Für das Training sind keine Programmierkenntnisse erforderlich!
Das Training ist in Englisch oder Deutsch verfügbar und kann vor Ort oder online durchgeführt werden.
Trainings-Angebot anfragen
WPS – Workplace Solutions ist Organisator der Scenario Casting Trainings.
Wirf gern einen Blick auf das gesamte Schulungsangebot der WPS.
Neues & Events

Neues & Events rund um Scenario Casting

JavaMagazin 8.2023
JETZT LESEN
»Mit Orientierungsszenarien zielsicher durch die Fachdomäne navigieren: Domain-Driven Design aus der Gemüsekiste«
2023/08
A Scenario Casting showcase by Jörn Koch
ModernRE 2023 - Leipzig
»Szenario-Casting – mit Szenarios sicher durch die Fachdomäne navigieren«
2023/10/12 - 2:20-3:00 p.m.
A talk by Jörn Koch
CoMoCamp 2023 - Vienna
»Short sessions on different collaborative modeling methods«
2023/05/04 - 10:00-13:00 a.m.
Practitioners, creators and thought leaders of collaborative modeling methods brought together
OOP 2023 - DIGITAL
»Scenario Casting – Agility Starts in DDD's Problem Space!«
2023/02/08 - 9:00-10:30 a.m.
A talk by Jörn Koch
software@work 2022 - Hamburg
»EDDA – Vom Orientierungsszenario zur Architektur-Blaupause«
2022/11/04 - 3:30-4:10 p.m.
A talk by Jörn Koch and Sönke Magnussen
SOFTWARE ARCHITECTURE SUMMIT - Berlin
»Scenario Casting – Agilität beginnt in der Fachdomäne«
2022/09/14 - 2:00-5:30 p.m.
A workshop by Jörn Koch
DDD EUROPE 2021 - ONLINE
»Scenario Casting – Find common ground across teams in collaborative modelling«
2021/02/05 - 10-12 a.m.
A workshop by Jörn Koch