Files
2nd/10_Wiki/Topics/Event Storming.md
T

2.4 KiB


id: P-Reinforce-AI-049 category: Dev confidence_score: 0.98 tags: [event, event storming, domain modeling, saga] last_reinforced: 2026-06-XX github_commit: "[P-Reinforce] Processed Event Storming."

Event Storming (이벤트 폭풍 분석)

📌 한 줄 통찰 (The Karpathy Summary)

비즈니스 워크플로우를 구성하는 '사건(Event)'을 중심으로 시스템의 경계, 행위자, 흐름을 시각적으로 모델링하여, 분산 시스템 및 메시징 기반 아키텍처 설계의 초석을 다지는 기법이다.

📖 구조화된 지식 (Synthesized Content)

  • 정의: 비즈니스 도메인의 활동을 '사건(Event)'이라는 관찰 가능한 사실들의 집합으로 바라보고, 이를 시각적 워크숍 형태로 모델링하는 방법론. 시스템 설계에 필요한 모든 상호작용을 이벤트 중심으로 재구성한다.
  • 주요 구성 요소 (The Grid):
    1. Events (사건): 과거에 일어난 사실의 기록 (가장 중요). 예: OrderPlaced, UserRegistered.
    2. Commands (명령): 시스템에게 무엇을 해야 하는지 지시하는 행위. 예: PlaceOrder, RegisterUser.
    3. AggreGates/Services: 비즈니스 로직이 묶여서 수행되는 주체.
    4. Participants: 이벤트를 발생시키거나 명령을 내리는 사람 또는 시스템 액터.
  • 아키텍처적 의의: 이벤트 스트리밍(Event Streaming) 기반 아키텍처 (EDA) 설계에 최적화되어 있으며, 이는 마이크로서비스 간의 비동기 통신 패턴을 정의하는 데 결정적인 역할을 한다.

⚠️ 모순 및 업데이트 (Contradictions & RL Update)

  • 과거 데이터와의 충돌: 이벤트 중심 설계(Event-Driven Architecture, EDA)가 곧 모든 것을 해결한다는 오해를 경계해야 한다. 이벤트를 중심으로 시스템을 모델링하는 것이지, 실제로 모든 통신이 메시징 큐로 이루어져야 하는 것은 아니다.
  • 정책 변화: Event Sourcing 패턴과 결합될 때 가장 강력하며, 시간의 흐름에 따른 상태 변화 기록(Audit Log)을 시스템의 핵심 데이터로 활용할 수 있게 된다.

🔗 지식 연결 (Graph)