kt-event-marketing/think/es/04-이벤트참여및관리.puml
merrycoral 59625f59dd 이벤트스토밍 유저플로우 설계 완료
- 유저플로우 연결도 작성 (userflow.puml)
- 6개 상세 유저플로우 시퀀스 다이어그램 작성
  - 01-회원가입및매장등록
  - 02-AI이벤트기획생성
  - 03-이벤트채널배포
  - 04-이벤트참여및관리
  - 05-효과측정및분석
  - 06-당첨자선정및알림
- 이벤트스토밍 요소 포함 (Event, Command, Actor, Policy, External System, Data)
- PlantUML 문법 검증 완료 (전체 통과)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-17 13:07:01 +09:00

120 lines
3.7 KiB
Plaintext

@startuml 04-이벤트참여및관리
!theme mono
title 유저플로우 04: 이벤트 참여 및 관리
actor "이벤트 참여자" as Customer
participant "이벤트 참여 시스템" as ParticipationSystem
participant "중복 체크 시스템" as DuplicateCheck
participant "알림 시스템" as NotificationSystem
database "참여자 DB" as ParticipantDB
database "이벤트 로그 DB" as EventLogDB
== 이벤트스토밍 요소 ==
note over Customer, EventLogDB
**Command**: 이벤트 조회, 참여 신청
**Event**: 이벤트 발견됨, 참여신청됨, 중복체크 완료됨,
참여 확인됨, 참여정보 저장됨
**Actor**: 이벤트 참여자 (고객)
**Policy**: 중복 참여 불가, 자동 접수 처리
end note
== 이벤트 발견 및 조회 ==
Customer -> ParticipationSystem : **Command**: 이벤트 조회 요청\n(데이터: 채널 경로[우리동네TV/SNS/QR코드])
activate ParticipationSystem
note over Customer
**유입 경로**
- 우리동네TV 시청
- Instagram 게시물
- Naver Blog
- KakaoTalk 메시지
- 매장 QR코드 스캔
end note
ParticipationSystem --> Customer : **Event**: 이벤트 발견됨\n(데이터: 이벤트 상세 정보, 경품 정보, 참여 방법)
== 이벤트 참여 신청 ==
Customer -> ParticipationSystem : **Command**: 참여 신청\n(데이터: 이름, 전화번호, 참여 경로)
ParticipationSystem -> EventLogDB : 참여 로그 기록\n(데이터: 참여 시간, 경로, 디바이스 정보)
activate EventLogDB
EventLogDB --> ParticipationSystem : 로그 저장 완료
deactivate EventLogDB
== 중복 참여 체크 ==
ParticipationSystem -> DuplicateCheck : 중복 확인 요청\n(데이터: 전화번호, 이벤트ID)
activate DuplicateCheck
note right of DuplicateCheck
**Policy**: 중복 참여 불가
- 전화번호 기반 확인
- 이벤트별 1회 제한
- 실시간 중복 체크
end note
DuplicateCheck -> ParticipantDB : 참여 이력 조회
activate ParticipantDB
ParticipantDB --> DuplicateCheck : 조회 결과
deactivate ParticipantDB
DuplicateCheck --> ParticipationSystem : **Event**: 중복체크 완료됨\n(데이터: 중복 여부)
deactivate DuplicateCheck
alt 중복 없음 (정상 참여)
ParticipationSystem -> ParticipantDB : 참여자 정보 저장\n(데이터: 참여자 정보, 참여 시간, 경로)
activate ParticipantDB
ParticipantDB --> ParticipationSystem : **Event**: 참여정보 저장됨\n(데이터: 참여번호)
deactivate ParticipantDB
ParticipationSystem -> NotificationSystem : 참여 확인 알림 발송 요청\n(데이터: 전화번호, 참여번호)
activate NotificationSystem
NotificationSystem --> Customer : **Event**: 참여 확인됨\n(알림톡: 참여 완료, 당첨자 발표 일정)
deactivate NotificationSystem
ParticipationSystem --> Customer : 참여 완료 화면\n(데이터: 참여번호, 경품 정보, 발표 일정)
note over Customer
**참여 완료**
✓ 참여번호: #12345
✓ 경품: KT 멤버십 5,000P
✓ 발표: 2025-10-24 18:00
✓ 당첨 시 알림톡 발송
end note
else 중복 참여
ParticipationSystem --> Customer : 중복 참여 불가 안내\n(사유: 이미 참여한 이벤트)
note over Customer
**중복 참여 제한**
- 1인 1회 참여 제한
- 공정한 당첨 기회 보장
end note
end
deactivate ParticipationSystem
== 실시간 참여 현황 집계 ==
ParticipationSystem -> EventLogDB : 실시간 집계 업데이트
activate EventLogDB
EventLogDB --> ParticipationSystem : 집계 완료
deactivate EventLogDB
note over ParticipationSystem
**실시간 집계 데이터**
- 총 참여자 수
- 채널별 참여 분포
- 시간대별 참여 추이
→ 효과 측정 시스템 전달
end note
@enduml