유저스토리 피드백 반영: KT인증 선택화, 매장정보 확장, 경품수정 기능, 채널 추가, 현실적 처리시간, 클로바 TTS 명시

This commit is contained in:
doyeon 2025-10-20 10:49:14 +09:00
parent 9d066887cc
commit b563a18534
2 changed files with 68 additions and 21 deletions

View File

@ -11,7 +11,10 @@
"Read(//Users/chaerikim/Desktop/회사/Digital Garage/historyhub/define/**)", "Read(//Users/chaerikim/Desktop/회사/Digital Garage/historyhub/define/**)",
"Bash(copy:*)", "Bash(copy:*)",
"Read(//Users/chaerikim/Desktop/회사/Digital Garage/b2c-mvp/references/**)", "Read(//Users/chaerikim/Desktop/회사/Digital Garage/b2c-mvp/references/**)",
"Read(//Users/chaerikim/Desktop/회사/Digital Garage/b2c-mvp/define/**)" "Read(//Users/chaerikim/Desktop/회사/Digital Garage/b2c-mvp/define/**)",
"Bash(git add:*)",
"Bash(git commit:*)",
"Bash(git push)"
], ],
"deny": [], "deny": [],
"ask": [] "ask": []

View File

@ -18,22 +18,25 @@
1. User 서비스 1. User 서비스
1) 사용자 인증 및 관리 1) 사용자 인증 및 관리
UFR-USER-010: [회원가입] 소상공인으로서 | 나는, 이벤트 자동 생성 서비스를 사용하기 위해 | 간편하게 회원가입하고 싶다. UFR-USER-010: [회원가입] 소상공인으로서 | 나는, 이벤트 자동 생성 서비스를 사용하기 위해 | 간편하게 회원가입하고 싶다.
- 시나리오: 기본 정보 입력 및 KT 본인 인증 - 시나리오: 기본 정보 입력 및 KT 본인 인증 (선택)
미가입 상태에서 | 이름, 전화번호, 이메일을 입력하고 KT 본인 인증을 완료하면 | 회원가입이 완료되고 매장 정보 등록 화면으로 이동한다. 미가입 상태에서 | 이름, 전화번호, 이메일을 입력하고 회원가입을 하면 | 회원가입이 완료되고 매장 정보 등록 화면으로 이동한다.
[입력 요구사항] [입력 요구사항]
- [ ] 이름 2자 이상 입력 가능 - [ ] 이름 2자 이상 입력 가능 (필수)
- [ ] 전화번호 형식 검증 (010-XXXX-XXXX) - [ ] 전화번호 형식 검증 (010-XXXX-XXXX) (필수)
- [ ] 이메일 형식 검증 (example@domain.com) - [ ] 이메일 형식 검증 (example@domain.com) (필수)
- [ ] KT 본인 인증 (선택) - 인증 시 추가 혜택 제공
[인증 처리] [인증 처리]
- [ ] KT 인증 시스템 연동 확인 - [ ] KT 인증 시스템 연동 확인 (선택 사항)
- [ ] 본인 인증 요청 시 전화번호로 인증 문자 발송 - [ ] 본인 인증 요청 시 전화번호로 인증 문자 발송
- [ ] 인증 완료 시 인증 토큰 저장 - [ ] 인증 완료 시 인증 토큰 저장 및 인증 고객 플래그 설정
- [ ] KT 인증 고객에게 추가 서비스 혜택 제공
- [ ] 중복 가입 방지 (전화번호 기준) - [ ] 중복 가입 방지 (전화번호 기준)
[처리 결과] [처리 결과]
- [ ] 성공: "회원가입이 완료되었습니다" 메시지 → 매장 정보 등록 화면 - [ ] 성공: "회원가입이 완료되었습니다" 메시지 → 매장 정보 등록 화면
- [ ] KT 인증 고객: 추가 혜택 안내 (무료 체험 횟수 증가 등)
- [ ] 실패: 구체적인 오류 메시지 표시 - [ ] 실패: 구체적인 오류 메시지 표시
- M/8 - M/8
@ -42,13 +45,19 @@ UFR-USER-010: [회원가입] 소상공인으로서 | 나는, 이벤트 자동
UFR-USER-020: [매장정보등록] 소상공인으로서 | 나는, 맞춤형 이벤트를 생성하기 위해 | 내 매장 정보를 등록하고 싶다. UFR-USER-020: [매장정보등록] 소상공인으로서 | 나는, 맞춤형 이벤트를 생성하기 위해 | 내 매장 정보를 등록하고 싶다.
- 시나리오: 매장 정보 입력 및 사업자번호 검증 - 시나리오: 매장 정보 입력 및 사업자번호 검증
회원가입 완료 후 | 매장명, 업종, 주소, 영업시간, 사업자번호를 입력하면 | 사업자번호 검증 후 매장 정보가 저장되고 무료 체험 쿠폰이 발급된다. 회원가입 완료 후 | 매장명, 업종, 주소, 영업시간, 사업자번호, 메뉴 정보를 입력하면 | 사업자번호 검증 후 매장 정보가 저장되고 무료 체험 쿠폰이 발급된다.
[입력 요구사항] [입력 요구사항]
- [ ] 매장명 입력 (최대 50자) - [ ] 매장명 입력 (최대 50자)
- [ ] 업종 선택 (카테고리 리스트 제공: 음식점, 카페, 소매업 등) - [ ] 업종 선택 (카테고리 리스트 제공: 음식점, 카페, 소매업 등)
- [ ] 주소 입력 (도로명 주소 API 연동) - [ ] 주소 입력 (도로명 주소 API 연동)
- [ ] 영업시간 설정 (요일별 시작/종료 시간 입력) - [ ] 영업시간 설정 (요일별 시작/종료 시간 입력)
- [ ] 메뉴/상품 정보 입력 (선택, 최대 10개)
- 메뉴명/상품명 (최대 30자)
- 가격 정보
- 간단한 설명 (최대 100자)
- [ ] 매장 특징/강점 입력 (선택, 최대 200자)
- [ ] 대표 이미지 업로드 (선택, 최대 3장)
[사업자번호 검증] [사업자번호 검증]
- [ ] 사업자번호 형식 검증 (XXX-XX-XXXXX) - [ ] 사업자번호 형식 검증 (XXX-XX-XXXXX)
@ -118,7 +127,7 @@ UFR-PLAN-020: [AI업종트렌드분석] 소상공인으로서 | 나는, 성공
--- ---
UFR-PLAN-030: [AI경품추천] 소상공인으로서 | 나는, 예산 내에서 최적의 경품을 선정하기 위해 | AI가 타겟 고객층에 맞는 경품을 추천해주기를 원한다. UFR-PLAN-030: [AI경품추천] 소상공인으로서 | 나는, 예산 내에서 최적의 경품을 선정하기 위해 | AI가 타겟 고객층에 맞는 경품을 추천해주기를 원한다.
- 시나리오: AI 기반 최적 경품 추천 - 시나리오: AI 기반 최적 경품 추천 및 수정
트렌드 분석 완료 후 | 예산, 타겟 고객층, 이벤트 목적을 입력하면 | Claude API가 예산 대비 매력도가 높은 경품 Top 5를 추천한다. 트렌드 분석 완료 후 | 예산, 타겟 고객층, 이벤트 목적을 입력하면 | Claude API가 예산 대비 매력도가 높은 경품 Top 5를 추천한다.
[입력 요구사항] [입력 요구사항]
@ -137,11 +146,18 @@ UFR-PLAN-030: [AI경품추천] 소상공인으로서 | 나는, 예산 내에서
- [ ] 경품 목록 Top 5 생성 - [ ] 경품 목록 Top 5 생성
- [ ] 각 경품별 예상 효과 표시 (참여율 예상) - [ ] 각 경품별 예상 효과 표시 (참여율 예상)
- [ ] 예산 범위 내 경품 필터링 - [ ] 예산 범위 내 경품 필터링
- [ ] 소상공인이 1개 선택 가능 - [ ] 소상공인이 1개 선택 또는 수정 가능
[경품 수정 기능]
- [ ] 추천 경품 내용 수정 가능 (경품명, 수량, 가격)
- [ ] 직접 경품 입력 옵션 제공
- [ ] 수정된 내용 기반 예상 효과 재계산
- [ ] 예산 초과 시 경고 메시지 표시
[Policy] [Policy]
- 예산 내 최적 경품 선정 - 예산 내 최적 경품 선정
- 타겟 고객 선호도 우선 고려 - 타겟 고객 선호도 우선 고려
- 소상공인의 경품 수정 자유도 보장
- M/21 - M/21
@ -300,31 +316,40 @@ UFR-CONT-020: [AI영상제작] 소상공인으로서 | 나는, SNS 홍보를 위
UFR-CONT-030: [SNS콘텐츠생성] 소상공인으로서 | 나는, 다양한 SNS에 게시하기 위해 | 플랫폼별로 최적화된 콘텐츠를 자동으로 생성해주기를 원한다. UFR-CONT-030: [SNS콘텐츠생성] 소상공인으로서 | 나는, 다양한 SNS에 게시하기 위해 | 플랫폼별로 최적화된 콘텐츠를 자동으로 생성해주기를 원한다.
- 시나리오: 플랫폼별 최적화 콘텐츠 생성 - 시나리오: 플랫폼별 최적화 콘텐츠 생성
이미지와 영상 생성 완료 후 | Instagram, Naver Blog, Kakao Channel 선택하면 | 각 플랫폼에 최적화된 해상도와 형식의 콘텐츠가 생성된다. 이미지와 영상 생성 완료 후 | Instagram, Naver Blog, Kakao Channel, 우리동네TV, 링고 비즈를 선택하면 | 각 플랫폼에 최적화된 해상도와 형식의 콘텐츠가 생성된다.
[플랫폼 선택] [플랫폼 선택]
- [ ] Instagram (필수) - [ ] Instagram (필수)
- [ ] Naver Blog (선택) - [ ] Naver Blog (선택)
- [ ] Kakao Channel (선택) - [ ] Kakao Channel (선택)
- [ ] 우리동네TV (선택)
- [ ] 링고 비즈 (선택)
[플랫폼별 최적화] [플랫폼별 최적화]
- [ ] Instagram: 1080x1080 (정사각형) - [ ] Instagram: 1080x1080 (정사각형)
- [ ] Naver Blog: 800x600 (가로형) - [ ] Naver Blog: 800x600 (가로형)
- [ ] Kakao Channel: 800x800 (정사각형) - [ ] Kakao Channel: 800x800 (정사각형)
- [ ] 우리동네TV: 1920x1080 (16:9 가로형)
- [ ] 링고 비즈: 텍스트 기반 콘텐츠 (음성 안내용)
[콘텐츠 생성] [콘텐츠 생성]
- [ ] 선택한 이미지를 플랫폼별 해상도로 자동 조정 - [ ] 선택한 이미지를 플랫폼별 해상도로 자동 조정
- [ ] 해시태그 자동 삽입 (기획안의 해시태그 활용) - [ ] 해시태그 자동 삽입 (기획안의 해시태그 활용)
- [ ] 플랫폼별 텍스트 최적화 (글자 수 제한 고려) - [ ] 플랫폼별 텍스트 최적화 (글자 수 제한 고려)
- [ ] 우리동네TV용 영상 콘텐츠 생성
- [ ] 링고 비즈용 텍스트 콘텐츠 생성 (TTS 변환용)
[생성 결과] [생성 결과]
- [ ] 플랫폼별 최적화 이미지 파일 - [ ] 플랫폼별 최적화 이미지 파일
- [ ] 우리동네TV용 영상 파일 (15초)
- [ ] 링고 비즈용 텍스트 스크립트
- [ ] 각 플랫폼용 게시 텍스트 - [ ] 각 플랫폼용 게시 텍스트
- [ ] 미리보기 기능 - [ ] 미리보기 기능
- [ ] 일괄 다운로드 가능 (ZIP 파일) - [ ] 일괄 다운로드 가능 (ZIP 파일)
[Policy] [Policy]
- 플랫폼별 최적 해상도 자동 조정 - 플랫폼별 최적 해상도 자동 조정
- KT 계열 채널 우선 최적화
- M/21 - M/21
@ -463,8 +488,15 @@ UFR-DIST-030: [링고비즈연결음업데이트] 소상공인으로서 | 나는
[연결음 생성] [연결음 생성]
- [ ] 홍보 문구 기반 연결음 스크립트 자동 생성 - [ ] 홍보 문구 기반 연결음 스크립트 자동 생성
- [ ] TTS(Text-to-Speech)로 음성 파일 생성 - [ ] 네이버 클로바(Clova) TTS 엔진을 이용한 음성 파일 생성
- [ ] 또는 사전 녹음 파일 업로드 - [ ] 음성 톤 선택 가능 (친근한 톤, 공식적인 톤, 활기찬 톤 등)
- [ ] 또는 사전 녹음 파일 업로드 (MP3, WAV 형식)
[네이버 클로바 TTS 연동]
- [ ] 네이버 클로바 TTS API 연동
- [ ] 음성 합성 옵션 설정 (음색, 속도, 톤)
- [ ] 고품질 음성 파일 생성 (16kHz 이상)
- [ ] 생성된 음성 파일 미리듣기 기능
[링고비즈 API 연동] [링고비즈 API 연동]
- [ ] 링고비즈 API 호출 - [ ] 링고비즈 API 호출
@ -477,6 +509,10 @@ UFR-DIST-030: [링고비즈연결음업데이트] 소상공인으로서 | 나는
- [ ] 연결음 미리듣기 가능 - [ ] 연결음 미리듣기 가능
- [ ] 롤백 기능 (이전 연결음으로 복구) - [ ] 롤백 기능 (이전 연결음으로 복구)
[Policy]
- 네이버 클로바 TTS 엔진 활용 필수
- 자연스러운 음성 품질 보장
- S/13 - S/13
--- ---
@ -571,6 +607,7 @@ UFR-PART-010: [이벤트참여신청] 고객으로서 | 나는, 경품을 받기
[이벤트 발견 경로] [이벤트 발견 경로]
- [ ] 우리동네TV - [ ] 우리동네TV
- [ ] 지니TV - [ ] 지니TV
- [ ] 링고 비즈 (연결음)
- [ ] SNS (Instagram, Blog, Kakao) - [ ] SNS (Instagram, Blog, Kakao)
- [ ] QR 코드 스캔 - [ ] QR 코드 스캔
@ -980,21 +1017,28 @@ NFR-PERF-010: [AI기획속도] 시스템으로서 | 나는, 사용자 대기 시
--- ---
NFR-PERF-020: [콘텐츠생성속도] 시스템으로서 | 나는, 효율적인 서비스를 제공하기 위해 | 이미지와 영상 콘텐츠 생성을 3분 이내에 완료하고 싶다. NFR-PERF-020: [콘텐츠생성속도] 시스템으로서 | 나는, 효율적인 서비스를 제공하기 위해 | 이미지와 영상 콘텐츠 생성을 현실적인 시간 내에 완료하고 싶다.
- 시나리오: 콘텐츠 생성 성능 보장 - 시나리오: 콘텐츠 생성 성능 보장
소상공인이 콘텐츠 생성 시작 후 | 이미지 3종, 영상 1개, SNS 콘텐츠, QR 포스터까지 | 3분 이내에 모든 콘텐츠가 생성된다. 소상공인이 콘텐츠 생성 시작 후 | 이미지 3종, 영상 1개, SNS 콘텐츠, QR 포스터까지 | 현실적인 처리 시간 내에 모든 콘텐츠가 생성된다.
[성능 요구사항] [성능 요구사항]
- [ ] 이미지 생성 (3종): 90초 이내 - [ ] 이미지 생성 (3종): 2-3분 이내 (AI 이미지 생성 특성 고려)
- [ ] 영상 제작 (15초): 90초 이내 - [ ] 영상 제작 (15초): 3-5분 이내 (AI 영상 제작 특성 고려)
- [ ] SNS 콘텐츠 생성: 20초 이내 - [ ] SNS 콘텐츠 생성: 30초 이내
- [ ] QR 포스터 생성: 10초 이내 - [ ] QR 포스터 생성: 20초 이내
- [ ] 총 처리 시간: 3분 이내 - [ ] 총 처리 시간: 5-8분 이내 (단계별 병렬 처리 시)
[최적화 방안] [최적화 방안]
- [ ] 이미지와 영상 병렬 생성 - [ ] 이미지와 영상 병렬 생성
- [ ] GPU 가속 활용 - [ ] GPU 가속 활용
- [ ] 콘텐츠 캐싱 - [ ] 콘텐츠 캐싱
- [ ] 진행 상황 실시간 표시 (사용자 경험 개선)
- [ ] 백그라운드 처리로 다른 작업 가능
[Policy]
- AI 생성 모델의 현실적인 처리 시간 반영
- 품질과 속도의 균형 유지
- 사용자에게 명확한 진행 상황 피드백 제공
- M/34 - M/34