umlforge_event_driven
Design event-driven messaging architectures, modeling producer-broker-consumer flows with failure handling. Supports Kafka, SQS, RabbitMQ, event sourcing, and pub/sub patterns.
Instructions
Design an event-driven or async messaging architecture (Kafka, SQS, RabbitMQ, etc.).
USE THIS WHEN:
Services communicate via events or messages (not direct API calls)
You are designing event sourcing, CQRS, or pub/sub patterns
You want to model producer ? broker ? consumer flows with failure handling
NOT FOR:
Synchronous REST/gRPC calls between services ? use umlforge_api_sequence
Entity lifecycle (Order goes pending ? active) ? use umlforge_state_machine
Full system architecture overview ? use umlforge_stakeholder_arch
Produces:
Event flow sequence: producers ? broker ? consumers with ack, retry loops (max N), dead-letter queue handling
Event catalogue table: name, producer, consumers, payload, idempotency, retention
Choreography vs orchestration assessment with coupling risk flags
Failure mode analysis: scenario, impact, detection, recovery
(report_mode=True) Event System Analysis Notes: reliability risks, idempotency gaps, resilience quick wins
Args: system_context: What this event-driven system does and why it uses messaging. producers: Services that emit events (e.g. "Order Service emits order.placed"). consumers: Services that consume events (e.g. "Notification, Inventory, Analytics"). broker: Message broker (e.g. "Kafka", "RabbitMQ", "AWS SQS/SNS") (optional). events: Named domain events (e.g. "order.placed, payment.failed") (optional). report_mode: True ? also produce Event System Analysis Notes. Pro/Team/Enterprise only.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| broker | No | ||
| events | No | ||
| consumers | Yes | ||
| producers | Yes | ||
| report_mode | No | ||
| system_context | Yes |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |