# 직장인 점심 추천 미니앱 MVP 기획/기능 명세 ## 1. 목표 - 사용자 현재 위치 기반으로 근처 식당을 빠르게 탐색한다. - 점심 시간 의사결정을 줄이기 위해 카테고리 필터(한식/중식/일식/양식/기타)와 정렬(거리/평점/좋아요)을 제공한다. - 사용자 생성 데이터(리뷰/별점/좋아요)를 누적해 추천 품질을 개선한다. ## 2. MVP 범위 ### 2.1 포함 - 위치 권한 요청 및 현재 좌표 획득 - 반경 N미터 내 식당 목록 조회 - 카테고리 필터 - 식당 상세(기본 정보, 평균 평점, 좋아요 수, 최근 리뷰) - 리뷰 작성/수정/삭제 - 별점(1~5) 작성 - 좋아요 토글 - 사용자별 내 리뷰 목록 ### 2.2 제외(2차) - 결제/예약 - 친구 초대/소셜 그래프 - AI 취향 학습 개인화 추천 - 관리자 운영 콘솔 웹 ## 3. 사용자 시나리오 1. 사용자가 미니앱 실행 2. 위치 권한 동의 3. 현재 위치 기준 주변 식당 로딩 4. 카테고리(예: 일식) 선택 5. 정렬 기준(거리순/평점순) 선택 6. 식당 상세 진입 7. 리뷰와 평점 확인 후 본인 리뷰 남김 8. 마음에 드는 식당 좋아요 ## 4. 화면 구조(MVP) ### 4.1 홈/목록 화면 - 상단: 현재 위치(동 이름 또는 좌표 기반 주소), 반경 선택(500m/1km/2km) - 필터: 카테고리 탭 - 정렬: 거리순, 평점순, 좋아요순 - 리스트 카드: 식당명, 카테고리, 거리, 평균평점, 좋아요수, 리뷰수 ### 4.2 식당 상세 화면 - 기본 정보: 상호명, 주소, 영업시간, 전화번호 - 통계: 평균평점, 총 리뷰수, 좋아요수 - 액션: 좋아요 버튼, 리뷰 작성 버튼 - 리뷰 리스트: 최신순 기본, 본인 리뷰 강조 ### 4.3 리뷰 작성/수정 화면 - 평점(1~5) - 텍스트(최대 500자) - 저장/취소 ### 4.4 내 활동 화면 - 내가 작성한 리뷰 목록 - 내가 좋아요한 식당 목록(선택) ## 5. 추천/정렬 규칙(MVP) - 기본 정렬: 거리 오름차순 - 평점 정렬: 평균 평점 내림차순, 동점 시 리뷰수 내림차순 - 좋아요 정렬: 좋아요수 내림차순, 동점 시 거리 오름차순 ## 6. 카테고리 정책 - 내부 표준 카테고리 - KOREAN - CHINESE - JAPANESE - WESTERN - OTHER - 외부 장소 API 카테고리 값을 내부 표준 카테고리로 매핑 - 매핑 실패 시 OTHER ## 7. 권한/개인정보 최소 수집 - 필수: 위치 권한 - 선택: 알림(2차) - 사용자 식별자: 토스 식별자 또는 내부 user_id - 저장 데이터 - 리뷰 텍스트, 평점 - 좋아요 이력 - 위치는 조회 시점 중심 좌표만 사용(정밀 로그 장기 저장 금지 권장) ## 8. 비기능 요구사항 - 최초 화면 진입 10초 이내 - 목록 API p95 800ms 이하 목표 - 앱 크래시 없이 복구 가능한 오류 처리 - 네트워크 장애 시 재시도/안내 메시지 제공 ## 9. 운영 정책 - 욕설/비방 리뷰 신고 플로우(간단 신고 버튼) - 중복 리뷰 정책 - 식당당 사용자 1개 리뷰 원칙 - 작성 시 upsert(기존 리뷰 수정) - 좋아요 정책 - 식당당 사용자 1회 - 토글 허용 ## 10. 성공 지표(MVP) - DAU - 위치 권한 허용률 - 리뷰 작성 전환율 - 식당 상세 진입률 - 재방문율(7일) ## 11. 리스크와 대응 - 위치 권한 거부율 높음 - 대안: 수동 지역 선택(구/동) 제공 - 카테고리 오분류 - 대안: 사용자 제보/운영 보정 - 초기 리뷰 부족 - 대안: 기본 외부 평점(가능 시) + 내부 리뷰 분리 표기 ## 12. 릴리즈 단위 ### v0.1 (MVP) - 위치 기반 목록/상세 - 카테고리 필터 - 리뷰/평점/좋아요 ### v0.2 - 개인화 추천(최근 선택 기반) - 점심시간 알림 - 회사/사무실 즐겨찾기