Conversational System

Conversational System

  • Software Design
  • Process Modelling
When many things can happen simultaneously or in random order, imposing a sequence may backfire spectacularly.

Scripting conversations can turn awkward and lead to a pointlessly complicated flow. Despite the size of your modelling surface, the number of branches and alternatives can quickly escalate without reaching a conclusion.

Other times, the pain point manifests as a need for arrows to draw loops .

For example, reviewing a contract during a negotiation process can turn into an endless sequence of Document Edited and Document Commented , in an ever-developing sequence, unless we realise that Draft Contract Approved or sometimes Submission Deadline Reached is the event that terminates the loop and sllows moving to the next stage.

Therefore

When you notice that your modelling flow is spiralling down a rabbit hole of back-and-forth and your model is consuming modelling space without getting any closer to the goal, you might try something different.

Acknowledge that some systems are intrinsically non-sequential. Events may happen in any order and at different levels of abstraction.

Mark the system where the flow is happening as "conversational" with a distinctive sign (a comic balloon, or a whirlwind arrow), and arrange the produced events vertically.

Flip the narrative backward. Ask yourselves, "Which events can terminate this loop?"

Play with different levels of abstraction to find events that are more immediately connected with downstream Policies . For example, Typo Corrected shouldn't trigger any significant action, while Discount Changed or Total Amount Changed should trigger a review. A termination condition like Draft Contract Approved should definitely trigger something like Official Signoff Policy .

The implicit contract for a conversational system

The "conversational" marker signals an implicit loop. Some part of the process will stay on this system until a specific termination condition is met.

Relations

Conversational systems play well with #Reverse-narrative to highlight the exit condition from the loop.

Want to learn more about EventStorming?

Subscribe to our newsletter to hear about announcements and get fresh contents.

SUBSCRIBE NOW