Design system / rev A

Event Storming Board

A modelling surface for change-management requests. The chrome is monochrome steel on paper; all color in the product belongs to the sticky grammar, so the timeline reads as a legend at a glance. Conventions follow eventstorming.com, adapted where the digital medium can do better than a paper wall.

base
Industry
ground
#f2f2f3
steel
#5980a6
grid
8px / lane 208

BPMN 2.0 view

The same board in executable notation, and back again.

A board and a process model are two readings of one structure: actors are lanes, commands are activities, events are events, policies are gateways. The BPMN view is generated from the board, not drawn beside it, so a change in either notation lands in the same model. Edits made in BPMN write back to the stickies; anything BPMN cannot hold is parked rather than dropped.

Phase · Change approved by CABVendor onboarding changeRequesting managerRisk analystChange managerServiceNowBlack-box pool · external system · not oursIF RISK IS HIGHrisk is rated highSubmit changerequestUSERChange request submittedRiskAssessmentRisk registerAssess vendor riskUSERRisk rating assignedrisk is rated highDoes finance re-check thebudget after CAB?OPEN QUESTION · DANAApprove changeUSERSchedule changewindowUSERChange request closed

Parked

2 objects

  • OPPORTUNITY · O-001 Auto-approve low-risk vendors
  • OPPORTUNITY · O-002 Stop re-keying vendor data into MDG

2 opportunities · Held for the round trip; not exported to XML

ONE SLICE OF THE CHANGE-MANAGEMENT BOARD, DRAWN BOTH WAYSLAYOUT IS FIXTURE-SUPPLIED — VIEWS OWN COORDINATES, THE MODEL HOLDS NONE (INVENTORY §6)
Mapping
  • Domain event Intermediate throwing event; end event when nothing follows.
  • Command Activity. User task if an actor issues it, service task if a system does.
  • Actor Lane in the pool. One lane per actor, ordered as on the board.
  • Aggregate Data object, associated with every activity that touches it.
  • Policy Exclusive gateway when it carries a condition; event-based gateway when it reacts to an arrival. The "whenever" clause becomes the flow label.
  • External system Black-box pool with message flows. Never a task inside our pool.
  • Read model Data store, read by the activity that consults it.
  • Hotspot · question Text annotation on the element it was attached to, keeping its owner and date.
  • Pivotal event Milestone line across the pool. BPMN has no phase, so it is drawn as a dashed marker, not a shape.
  • Bounded context Sub-process, or its own pool when the switch is set to one pool per context.
  • Unknown span Collapsed sub-process marked incomplete. Exports, but fails validation on purpose.
  • Opportunity · UI mockup No BPMN equivalent. Parked in the tray and restored on the way back.
Rules of the toggle
  • One model, two notations. The BPMN view is a projection, not a copy. Nothing is duplicated, so the two readings cannot disagree.
  • Round-trips both ways. Rename a task and the command sticky is renamed. Add a gateway branch and a policy sticky appears on the board, flagged as authored in BPMN.
  • Nothing is dropped silently. Stickies with no BPMN equivalent go to a parking tray with a count in the toolbar; they come back untouched on the return trip.
  • BPMN keeps its own geometry. 4px activity corners, circles for events, diamonds for gateways — the one place this system relaxes its square rule, because the notation is the standard.
  • Shapes stay monochrome. A 3.5px bar on the leading edge carries the sticky’s hue, so provenance is readable without coloring the diagram. Turn it off for a clean export.
  • Sequence flow is inferred, then confirmed. Board position gives a first ordering; every inferred flow is drawn at 60% until someone accepts it. Unaccepted flows are listed in the review queue.
  • Exports as real BPMN. A valid BPMN 2.0 XML file with DI, openable in Camunda or Signavio. Board-only objects ride along in an extension element, so a re-import loses nothing.
  • Import is a first-class entry. Drop a .bpmn file and you get a board: lanes become actors, tasks become commands, gateways become policies, and every unmapped construct lands as a question sticky.

Parked

2 objects

  • OPPORTUNITY · O-001 Auto-approve low-risk vendors
  • OPPORTUNITY · O-002 Stop re-keying vendor data into MDG

2 opportunities · Held for the round trip; not exported to XML

COUNTED FROM THE BOARD BY domain/bpmnParkingTray, NEVER WRITTEN DOWN