PetAI 최종 제품 기능 범위 의사결정서
버전: 2.0
기준일: 2026-07-21
상태: 팀 합의 전 제품 총괄 권고안
문서 역할: 현재 데모나 MVP가 아니라 PetAI라는 제품 세대가 최종적으로 제공할 기능과 제공하지 않을 기능을 합의하는 단일 기준
제품 방향: 게임 80~90%, 생활 보조 10~20%
0. 이번 회의에서 결정할 것
이 문서의 목적은 다음 질문에 팀이 같은 답을 갖게 하는 것이다.
- PetAI의 최종 사용 경험을 구성하는 필수 기능은 무엇인가.
- 좋은 아이디어지만 이 제품의 정체성과 맞지 않아 제외할 기능은 무엇인가.
- 가치·비용·안전성 검증 뒤 포함 여부를 정할 기능은 무엇인가.
- 기능이 포함된다면 어느 팀이 어떤 데이터와 실패 상황까지 책임지는가.
- 최종 범위와 별개로 수직 슬라이스, 1.0, 출시 후 중 언제 구현하는가.
이 문서에서 최종 제품은 현재 PetAI 제품 세대의 완성 상태를 뜻한다. 후속작, 장르가 다른 별도 게임, 대규모 소셜 플랫폼까지 무한히 포함하는 표현이 아니다.
1. 가장 중요한 구분: 범위와 개발 순서
기능의 최종 포함 여부와 개발 시점은 다른 결정이다.
| 구분 | 답하는 질문 | 값 |
|---|---|---|
| 최종 범위 | 완성된 PetAI에 존재해야 하는가 | IN, CONDITIONAL, OPEN, OUT |
| 제공 단계 | 언제 사용자에게 제공하는가 | SLICE, 1.0, POST, NONE |
POST는 제외가 아니다. 최종 제품에는 포함하지만 1.0 이후 제공한다는 뜻이다.OUT은 일정이 부족하다는 뜻이 아니다. 제품 방향상 만들지 않겠다는 뜻이다.- 현재 Unity 프로토타입에 존재한다는 이유만으로
IN이 되지 않는다. - 구현되지 않았다는 이유만으로
OUT이 되지 않는다.
1.1 최종 범위 상태
| 상태 | 의미 | 회의 후 조치 |
|---|---|---|
IN |
최종 제품에 반드시 포함 | 담당 영역, 제공 단계, 완료 조건 확정 |
CONDITIONAL |
명시한 조건이 충족될 때 포함 | 검증 책임자와 판정 기한 확정 |
OPEN |
팀 논의가 필요한 선택 | 선택지와 제품 총괄 최종 결정일 확정 |
OUT |
현재 제품 세대에서는 제외 | UI, 데이터, API, 홍보 문구에도 넣지 않음 |
아래 표의 상태는 총괄 권고안이다. 팀 합의 후 승인일과 결정 근거를 기록해야 확정된다.
2. 최종 제품 정의
2.1 한 문장 정의
PetAI는 한 명의 캐릭터와 같은 시간과 공간을 살아가며, 함께 한 플레이와 선택이 관계·취향·방·추억에 지속적으로 남는 로컬 우선 캐릭터 생활 게임이다.
2.2 사용자가 최종적으로 할 수 있어야 하는 일
- 홈 공간에서 캐릭터의 현재 행동과 감정 상태를 발견한다.
- 캐릭터에게 말을 걸거나 공간의 물건과 상호작용한다.
- 캐릭터와 여러 종류의 짧은 게임 또는 공동 활동을 한다.
- 성공, 실패, 중단, 거절에 따라 서로 다른 반응을 본다.
- 캐릭터의 취향과 성격을 설명이 아니라 선택과 행동으로 알아간다.
- 사용자의 선택과 플레이가 관계, 공간, 복장, 대사, 추억에 남는 것을 확인한다.
- 날짜, 시간, 계절, 선택적 날씨 연동을 통해 같은 하루를 산다고 느낀다.
- 며칠 뒤 돌아와도 비난받지 않고 이전 관계와 기억을 이어간다.
- 자신의 대화와 기억 데이터를 확인하고 수정하거나 삭제할 수 있다.
- 네트워크나 생성 AI가 없어도 핵심 게임을 계속할 수 있다.
- 앱을 열지 않았을 때도 위젯과 선택한 알림으로 캐릭터의 현재 상태를 가볍게 확인한다.
- 위젯이나 알림을 누르면 관련 장면으로 바로 들어가며, 앱 외부 기능을 언제든 끌 수 있다.
2.3 제품 정체성 경계
- 게임이 본체다. 알림, 일정, 날씨, 현실 행동은 게임 장면을 풍부하게 하는 보조 기능이다.
- 한 캐릭터와의 깊이를 여러 캐릭터 수집보다 우선한다.
- 관계는 시스템에 남는다. 대화만 그럴듯하고 다음 장면에 아무것도 남지 않는 구조는 허용하지 않는다.
- AI는 표현 도구다. 관계값, 보상, 해금과 공식 설정은 결정론적 규칙이 결정한다.
- 로컬 우선이다. 대화 원문과 장기 기억은 기본적으로 기기 안에서 처리한다.
- 부재를 벌하지 않는다. 연속 출석, 관계 하락, 죄책감형 알림을 사용하지 않는다.
3. 기능 영역 요약
| 영역 | 권고 방향 | 제품 비중 |
|---|---|---|
| 캐릭터 생활·관계 | 최종 핵심 | 매우 높음 |
| 공동 플레이·수집·꾸미기 | 최종 핵심 | 매우 높음 |
| 사건·선택·추억 | 최종 핵심 | 매우 높음 |
| 대화·로컬 AI·기억 | 관계를 보조하는 제한형 | 높음 |
| 날짜·날씨·달력 | 현실과 같은 하루를 만드는 선택형 연동 | 중간 |
| 위젯·알림·딥링크 | 앱 밖에서 관계를 이어 주는 최소 접점 | 중간 |
| 계정·백업·콘텐츠 배포 | 제품 운영을 위한 최소 기능 | 중간 |
| 제한 소셜·경쟁·UGC | 친구 방문·캐릭터 교류만 포함, 경쟁·UGC는 제외 | 중간 |
| 생활 관리·생산성 | 독립 앱 수준으로 확장하지 않음 | 낮음 |
4. 캐릭터 생활·관계 기능
| ID | 기능 | 권고 상태 | 단계 | 최종 포함 범위 | 넣는 이유 / 빼는 이유 |
|---|---|---|---|---|---|
| CHAR-01 | 시작 캐릭터 선택 | IN | SLICE | characterId, 표시 이름 또는 별명, 첫 만남 선택, 튜토리얼 진행 저장 | 계정 이전 뒤에도 같은 관계를 자연스럽게 이어 감 |
| CHAR-02 | 홈 공간 생활 | IN | SLICE | 이동, 머무름, 물건 사용, 시간대별 위치 | 캐릭터를 메뉴가 아닌 존재로 보이게 함 |
| CHAR-03 | 자율 행동 | IN | 1.0 | idle, 관심 대상, 활동 시작·종료, 사용자 접근 반응 | 사용자의 명령만 기다리는 도구성을 줄임 |
| CHAR-04 | 감정 상태 | IN | SLICE | mood와 화면 표현, 지속 시간, 회복 규칙 | 선택과 사건의 단기 결과를 보임 |
| CHAR-05 | 관계·육성 상태 | IN | SLICE | 유대, 이해, 거주 만족도부터 시작하고 활력·특기는 확장 후보; 소프트 일일 성장 제한 | 장기 인과의 중심 상태이면서 과도한 반복 파밍을 방지 |
| CHAR-06 | 성격에 따른 동의·거절 | IN | 1.0 | 부탁 수락, 주저, 대안 제안, 명시적 거절 | 모든 말에 동의하는 AI를 방지 |
| CHAR-07 | 갈등과 회복 사건 | IN | POST | 의견 차이, 냉각, 재대화, 화해 | 관계의 깊이를 만들되 이탈 벌칙으로 만들지 않음 |
| CHAR-08 | 성장 아크 | IN | 1.0 | 관계 단계, 대표 추억, 최소 경과 일수, 특정 선택에 따른 행동·사건 변화 | 키우는 느낌과 장기 목표 제공 |
| CHAR-09 | 복장 변화 | IN | 1.0 | 계절, 날씨, 사건, 사용자 선택에 따른 승인 복장 | 달력과 수집을 시각적으로 연결 |
| CHAR-10 | 캐릭터 이름 변경 | OPEN | 1.0 | 기본 이름 유지 또는 별명만 허용 | 고유 캐릭터성 훼손 여부 논의 필요 |
| CHAR-11 | 외형 파츠 직접 편집 | OUT | NONE | 얼굴·체형·헤어 조립식 커스터마이즈 제외 | 고정 캐릭터 인지도와 제작 품질 약화 |
| CHAR-12 | 동시에 관계 맺는 복수 캐릭터 | OUT | NONE | 수집형 캐릭터 로스터 제외 | 콘텐츠 폭이 관계 깊이를 압도 |
| CHAR-13 | 별도 캐릭터 루트 추가 | CONDITIONAL | POST | 첫 캐릭터와 데이터가 분리된 확장팩 방식 | 첫 관계의 장기 유지율과 제작 비용 확인 후 판단 |
| CHAR-14 | 영구 관계 파괴·사망 | OUT | NONE | 미접속·실패로 영구 손실 없음 | 복귀 친화 원칙 위반 |
5. 공동 플레이·수집·꾸미기 기능
| ID | 기능 | 권고 상태 | 단계 | 최종 포함 범위 | 결정 근거 |
|---|---|---|---|---|---|
| PLAY-01 | 공동 플레이 허브 | IN | SLICE | 진입, 설명, 중단, 재시도, 결과, 복귀 공통 계약 | 개별 게임을 관계 시스템과 연결 |
| PLAY-02 | 짧은 게임 여러 종 | IN | 1.0 | 서로 다른 감각의 2~3종을 목표 | 게임 80~90% 방향의 핵심 |
| PLAY-03 | 장기 플레이 모드 | CONDITIONAL | POST | 10분 이상 집중 모드 1종 | 짧은 세션 중심 가설과 충돌 여부 검증 |
| PLAY-04 | 난이도 선택·보조 | IN | 1.0 | 쉬움, 기본, 연습 또는 동등한 보조 | 실패가 관계 이탈로 이어지지 않게 함 |
| PLAY-05 | 성공·실패·중단별 반응 | IN | SLICE | 결과별 대사, 표정, 관계·추억 규칙 | 캐릭터와 함께 논다는 증거 |
| PLAY-06 | 플레이 결과 이력 | IN | 1.0 | 최고 기록보다 대표 경험과 개선을 우선 | 경쟁보다 관계 맥락 유지 |
| PLAY-07 | 캐릭터 취향 게임 | IN | POST | 캐릭터가 좋아하거나 어려워하는 활동 | 성격을 플레이로 표현 |
| PLAY-08 | 현실 행동 공동 수행 | CONDITIONAL | 1.0 | 공부, 정리, 스트레칭 중 선택한 소수 활동 | 생활 보조가 게임을 침범하지 않는지 검증 필요 |
| PLAY-09 | 수집품·기념품 | IN | 1.0 | 사건·플레이·미션·관계 선택에서 획득, 출처·획득 날짜·공개 여부 기록 | 추억을 공간의 물건으로 남김 |
| PLAY-10 | 방 꾸미기 | IN | POST | 승인 슬롯, 배치, 저장, 캐릭터 반응 | 수집과 생활 공간의 장기 루프 |
| PLAY-11 | 복장 수집·착용 | IN | POST | 시즌·사건·플레이 해금, 수동 착용 | 캐릭터 성장과 수집 목표 제공 |
| PLAY-12 | 제작·조합 | OPEN | POST | 단순 재료 조합 또는 제외 | 경제 복잡도 대비 관계 기여 검토 |
| PLAY-13 | 재화 경제 | IN | 1.0 | 단일 기본 재화, 명확한 획득·소비 이력 | 수집과 꾸미기의 선택 비용 제공 |
| PLAY-14 | 거래·경매장 | OUT | NONE | 사용자 간 거래 없음 | 서버·부정행위·경제 운영이 핵심을 압도 |
| PLAY-15 | 무한 반복 파밍 | OUT | NONE | 피로도 높은 반복 요구 없음 | 캐릭터 애착을 노동으로 바꾸지 않음 |
| PLAY-16 | 미션 보상 | IN | 1.0 | 미니게임 점수, 하루 성장 목표, 새 활동, 사건 완료에 따른 재화 지급 | 플레이와 육성의 다음 목표를 제공 |
| PLAY-17 | 직접 재화 구매 | IN | POST | 정해진 단위의 재화를 확률 없이 구매하고 복장·방 꾸미기에만 사용 | 핵심 BM을 설명 가능하게 하되 관계·스토리 pay-to-win을 막음 |
| PLAY-18 | 히든·한정 아이템 | IN | POST | 히든 조건, 시즌·콜라보 기간, 획득 조건, 도감 힌트, 재등장 정책을 명시 | 발견과 시즌 참여를 보상하되 불공정·FOMO를 통제 |
5.1 리듬게임 경계
리듬게임의 장르 판타지, 입력, 템포, 패턴, 판정, 점수, 난이도, 오디오와 보상 밸런스는 이 문서에서 확정하지 않는다. 별도 리듬게임 HTMLBook이 승인되면 PLAY-02의 한 모듈로 연결할지 팀이 결정하고 여기에 링크와 적용 버전만 남긴다.
6. 사건·선택·추억·달력 기능
| ID | 기능 | 권고 상태 | 단계 | 최종 포함 범위 | 결정 근거 |
|---|---|---|---|---|---|
| STORY-01 | 데이터 기반 사건 엔진 | IN | SLICE | 조건, 우선순위, queue, 중단 재개, 결과 | 콘텐츠를 코드 수정 없이 확장 |
| STORY-02 | 선택과 후속 반응 | IN | SLICE | 즉시 반응과 지연 후속 사건을 모두 지원 | 선택의 인과를 단발 대사 이상으로 만듦 |
| STORY-03 | 관계 단계별 사건 | IN | 1.0 | 낯섦, 익숙함, 신뢰 등 승인 단계 | 관계의 진행을 장면으로 체감 |
| STORY-04 | 취향 발견 | IN | 1.0 | 추정, 질문, 확인, 수정 | 캐릭터가 사용자를 알아간다는 증거 |
| STORY-05 | 캐릭터 취향 발견 | IN | 1.0 | 설명 대신 행동·선택·거절로 공개 | 연애·육성 시뮬레이션 문법 강화 |
| STORY-06 | 대표 추억 생성 | IN | SLICE | 날짜별 대표 카드 생성·갱신·중복 방지 | 플레이 결과의 장기 기록 |
| STORY-07 | 추억 달력 | IN | 1.0 | 월 보기, 날짜 상세, 빈 날짜, 필터 | 현실 날짜와 관계 서사를 연결 |
| STORY-08 | 추억 회상 사건 | IN | POST | 과거 선택을 새 대화·장면에서 참조 | 장기 기억의 사용자 가치 표현 |
| STORY-09 | 추억 수정·삭제 | IN | 1.0 | 잘못 저장된 사실과 카드 제거 | 사용자 데이터 통제권 보장 |
| STORY-11 | 엔딩·관계 결말 | OPEN | POST | 열린 장기 운영 또는 시즌형 결말 | 라이브 제품성과 서사 완결성 선택 필요 |
| STORY-12 | 선택 되감기 | OPEN | POST | 사건 단위 재선택 또는 추억만 보존 | 선택 무게와 접근성 사이 합의 필요 |
7. 대화·로컬 AI·장기 기억 기능
| ID | 기능 | 권고 상태 | 단계 | 최종 포함 범위 | 결정 근거 |
|---|---|---|---|---|---|
| AI-01 | 승인된 시나리오 대화 | IN | SLICE | 작성·검수된 대사와 선택지 | 캐릭터 설정과 한국어 품질 기준선 |
| AI-02 | 상황별 대사 변주 | IN | 1.0 | 시간, 감정, 관계, 최근 사건 반영 | 반복감을 줄이고 상태를 표현 |
| AI-03 | 제한형 자유 입력 | CONDITIONAL | POST | 허용 intent 분류 후 안전한 응답 | 자유 대화 기대와 일관성 위험이 큼 |
| AI-04 | 로컬 SLM 표현 계층 | CONDITIONAL | 1.0 | 승인된 상태와 intent를 자연어로 표현 | 기기 성능·한국어 품질·fallback 통과 필요 |
| AI-05 | 템플릿 fallback | IN | SLICE | 모델 미설치·실패·지연 시 즉시 대체 | AI 없이 핵심 루프 완주 |
| AI-06 | 로컬 장기 기억 | IN | POST | fact, preference, episode summary, provenance | 지속 관계의 핵심 차별점 |
| AI-07 | 기억 확인·수정·삭제 | IN | POST | 사용자에게 저장 근거와 제어 UI 제공 | 잘못된 추론과 프라이버시 대응 |
| AI-08 | 취향 추론 후 확인 | IN | POST | 추정 상태와 확정 상태 분리 | 사용자를 단정 짓지 않음 |
| AI-09 | 캐릭터 설정 validator | IN | 1.0 | 금지 사실, 관계 초과, 말투 이탈 차단 | 캐릭터 일관성 보호 |
| AI-10 | AI의 관계·보상 직접 결정 | OUT | NONE | AI 출력은 상태 변경 명령이 될 수 없음 | 재현성·밸런스·조작 방지 |
| AI-11 | 클라우드 대화 원문 처리 | OUT | NONE | 원문과 장기 기억을 기본 서버 전송하지 않음 | 로컬 우선 원칙과 개인정보 보호 |
| AI-12 | 무제한 범용 챗봇 | OUT | NONE | 모든 주제의 상담·검색·업무 대행 제외 | 게임 정체성과 안전 범위를 벗어남 |
| AI-13 | 캐릭터 음성 합성 | CONDITIONAL | POST | 승인 음색, 지연, 용량, 권리 검증 | 몰입 가치는 높지만 제작·권리 비용 큼 |
| AI-14 | 음성 입력 | OPEN | POST | 온디바이스 인식 또는 명시 동의 | 접근성 가치와 프라이버시 검토 필요 |
8. 현실 시간·환경·알림 연동
| ID | 기능 | 권고 상태 | 단계 | 최종 포함 범위 | 결정 근거 |
|---|---|---|---|---|---|
| LIFE-01 | 날짜·시간대 연동 | IN | SLICE | 아침·낮·저녁·밤, local date 고정 | 같은 하루를 산다는 핵심 몰입 |
| LIFE-02 | 요일·계절 연동 | IN | 1.0 | 사건, 복장, 방 분위기에 제한적으로 반영 | 콘텐츠 변주와 달력의 의미 강화 |
| LIFE-03 | 날씨 연동 | IN | 1.0 | 맑음·비·눈·흐림·unknown, GPS 조회 실패 fallback | 현실과 게임 장면의 연결 |
| LIFE-04 | 수동 지역 설정 | IN | 1.0 | 도시 또는 넓은 권역 선택 | 위치 권한 거절·오류 시에도 날씨 제공 |
| LIFE-05 | 동의형 GPS 날씨 조회 | IN | 1.0 | 명시 동의 뒤 현재 위치를 날씨 프록시에 1회 전송, 응답 뒤 정밀 좌표 비저장 | 현재 위치의 날씨를 쓰되 상시 추적과 이력 수집을 피함 |
| LIFE-06 | 정밀 GPS 상시 추적 | OUT | NONE | 이동 경로·정밀 좌표 저장 없음 | 가치 대비 프라이버시 비용이 과도 |
| LIFE-07 | 기기 달력 읽기 | OPEN | POST | 일정 제목 비수집, 바쁨 여부만 사용 가능 | 몰입 가치와 민감 정보 위험 논의 필요 |
| LIFE-08 | 기기 달력 쓰기 | OUT | NONE | 캐릭터가 사용자 일정에 자동 등록하지 않음 | 생활 도구가 게임을 침범 |
| LIFE-09 | 시간대 변경·여행 대응 | IN | 1.0 | 날짜 중복·손실 없이 환경만 재계산 | 실제 사용 안정성 |
| LIFE-10 | HealthKit·웨어러블 원시 데이터 | OUT | NONE | 건강 원시 데이터 수집 없음 | 규제·권한·제품 범위 급증 |
9. 위젯·알림·앱 외부 기능
위젯과 알림은 게임을 대신하는 별도 생산성 앱이 아니다. 캐릭터의 현재 상태를 짧게 보여 주고, 사용자가 원할 때 게임 안의 정확한 장면으로 돌아오게 하는 접점으로 제한한다.
| ID | 기능 | 권고 상태 | 단계 | 최종 포함 범위 | 결정 근거 |
|---|---|---|---|---|---|
| EXT-01 | 홈 화면 캐릭터 위젯 | IN | 1.0 | 작은 크기는 얼굴·상태 1줄, 중간 크기는 현재 행동·오늘 환경·바로가기 | 앱을 열지 않아도 함께 사는 감각을 제공 |
| EXT-02 | 위젯 상태 갱신 | IN | 1.0 | 마지막 승인 상태와 시간대 기반 snapshot, OS 갱신 제한 표시 | 실시간처럼 거짓 표시하지 않음 |
| EXT-03 | 상호작용형 위젯 | CONDITIONAL | POST | 인사하기, 오늘 상태 보기 등 상태 위험이 낮은 동작만 | App Intents·Android 동등 기능과 저장 충돌 검증 필요 |
| EXT-04 | 잠금 화면 위젯 | CONDITIONAL | POST | 캐릭터 아이콘, 관계 단계가 아닌 비민감 상태, 앱 바로가기 | 노출 공간이 작고 개인정보가 잠금 화면에 보일 수 있음 |
| EXT-05 | 로컬 알림 | IN | 1.0 | 기기에서 예약하는 사건·타이머 완료·선택적 재회 알림 | 서버 없이 동작하고 사용자가 직접 제어 가능 |
| EXT-06 | 원격 푸시 알림 | CONDITIONAL | POST | 신규 시즌·콘텐츠 공지처럼 서버가 필요한 소수 메시지 | APNs/FCM, 토큰, 운영 도구, 동의 정책이 필요 |
| EXT-07 | 알림 세부 설정 | IN | 1.0 | 종류별 on/off, 빈도, 조용한 시간, 미리보기 숨김, 전체 해제 | 알림을 관계 압박으로 만들지 않음 |
| EXT-08 | 알림 행동 버튼 | CONDITIONAL | POST | 보기, 나중에, 끄기. 관계·보상 확정은 앱 안에서만 수행 | 잠금 상태의 오입력과 중복 transaction 방지 |
| EXT-09 | 딥링크 | IN | 1.0 | 알림·위젯에서 홈, 특정 사건, 추억, 공동 플레이 준비 화면으로 이동 | 외부 접점과 실제 게임 장면 연결 |
| EXT-10 | 앱 아이콘 배지 | OPEN | 1.0 | 미확인 사건 수만 표시하거나 완전 미사용 | 숫자 압박과 OS 관습 사이 논의 필요 |
| EXT-11 | Live Activity·Dynamic Island | CONDITIONAL | POST | 사용자가 시작한 현실 행동 타이머나 진행 중 활동에만 사용 | 상시 캐릭터 상태는 배터리·OS 정책상 부적절 |
| EXT-12 | 백그라운드 갱신 | CONDITIONAL | 1.0 | 위젯 snapshot과 예약 알림 계산에 필요한 최소 작업 | OS가 실행을 보장하지 않으므로 fallback 필수 |
| EXT-13 | Siri·앱 단축어 | OPEN | POST | 앱 열기, 추억 보기, 공동 활동 시작 정도의 명령 | 음성 입력 범위와 중복 여부 검토 |
| EXT-14 | 공유 카드 | OPEN | POST | 사용자가 고른 추억만 이미지로 내보내고 개인정보 사전 검토 | 자연스러운 공유 가치는 있으나 소셜 기능으로 커질 위험 |
| EXT-15 | Apple Watch·Wear OS 앱 | OUT | NONE | 독립 워치 앱과 건강 연동 없음 | 별도 클라이언트·QA 비용 대비 핵심 가치 낮음 |
| EXT-16 | 이메일·SMS 알림 | OUT | NONE | 마케팅·관계 메시지를 외부 채널로 보내지 않음 | 앱의 감정 경험을 스팸 채널로 확장하지 않음 |
9.1 위젯에 표시할 수 있는 정보
- 현재 시간대에 맞는 캐릭터 표정과 승인된 짧은 상태 문구
- 캐릭터의 현재 활동 또는 마지막으로 확정된 활동
- 맑음·비·눈 등 넓은 날씨 상태와 계절 복장
- 사용자가 직접 시작한 타이머의 남은 시간
- 새 사건이 있다는 비민감 표시와 해당 화면 딥링크
9.2 위젯에 표시하지 않는 정보
- 자유 대화 원문, 장기 기억 원문, 사용자의 일정 제목
- 정밀 위치, 관계 수치, 민감한 취향과 프로필
- “외롭다”, “왜 안 왔어”, “보상이 사라진다” 같은 압박 문구
- OS가 갱신하지 않았는데 실시간 현재 상태인 것처럼 보이는 정보
- 위젯 한 번의 탭으로 재화 소비·관계 변화·기억 삭제를 확정하는 동작
9.3 알림 종류 권고
| 알림 종류 | 기본값 | 발송 주체 | 허용 예시 | 금지 예시 |
|---|---|---|---|---|
| 사용자가 시작한 타이머 완료 | 켜짐 | 로컬 | 같이 하던 시간이 끝났어. 이제 쉬자. |
완료하지 않으면 관계 하락 |
| 예약된 사건 가능 | 동의 후 켜짐 | 로컬 | 오늘 저녁에 보여 줄 게 있대. |
지금 안 열면 사건 영구 소멸 |
| 장기 부재 재회 | 기본 꺼짐 | 로컬 | 중립적인 한 번의 재회 안내 | 반복 호출, 죄책감 표현 |
| 신규 콘텐츠·시즌 | 기본 꺼짐 | 원격 푸시 | 업데이트 내용과 기간을 명확히 표시 | 캐릭터가 직접 보낸 사적 메시지처럼 위장 |
| 장애·계정 보안 | 필요 시 켜짐 | 원격 푸시 | 백업 실패 또는 계정 보안 안내 | 홍보 메시지 혼합 |
9.4 플랫폼 구현 경계
- Unity 화면만으로 홈 화면 위젯과 Live Activity를 구현할 수 없으므로 iOS는 WidgetKit·App Intents, Android는 App Widget·동등 API를 사용하는 네이티브 브리지가 필요하다.
- 위젯은 Unity save 전체를 직접 열지 않는다. Unity가 비민감
WidgetSnapshot을 원자적으로 내보내고 네이티브 확장이 읽는다. - 원격 푸시는 기기 토큰 등록·해제, 사용자 동의, 발송 감사 로그, 실패 토큰 정리가 준비되기 전에는 켜지 않는다.
- 딥링크 payload는 화면과 비민감 ID만 포함하며 대화 원문·정밀 위치·인증 정보를 넣지 않는다.
10. 공간·화면·접근성 기능
| ID | 기능 | 권고 상태 | 단계 | 최종 포함 범위 | 결정 근거 |
|---|---|---|---|---|---|
| UX-01 | 홈 중심 탐색 | IN | SLICE | 캐릭터·가구·놀이·추억으로 자연스럽게 이동 | 메뉴보다 생활 공간을 중심으로 함 |
| UX-02 | 캐릭터 직접 상호작용 | IN | SLICE | 터치, 접근, 상황 메뉴, 반응 | 터치 즉시 채팅 이동만 하는 구조 제외 |
| UX-03 | 대화 집중 화면 | IN | 1.0 | 얼굴·표정 중심, 맥락 정보, 선택지 | 감정 장면의 가독성 확보 |
| UX-04 | 추억·달력 화면 | IN | 1.0 | 날짜 탐색, 회상, 수정·삭제 | 장기 기록 접근점 |
| UX-05 | 수집·꾸미기 화면 | IN | POST | 필터, 미리보기, 배치, 소유 출처 | 경제와 공간 루프 지원 |
| UX-06 | 설정·데이터 관리 | IN | 1.0 | 알림, 데이터, 복구, 접근성, 계정 | 사용자 통제권의 필수 화면 |
| UX-07 | 입력 재매핑·터치 보조 | IN | 1.0 | 오입력 방지, 충분한 터치 영역, 게임별 보조 | 모바일 플레이 완성도 |
| UX-08 | 텍스트 크기·속도 | IN | 1.0 | 글자 크기, 자동 넘김, 타이핑 효과 끄기 | 대화 접근성 |
| UX-09 | 색각·모션·플래시 보조 | IN | 1.0 | 색 외 단서, 감소 모션, 플래시 제한 | 게임 접근성 |
| UX-10 | 스크린리더 완전 지원 | CONDITIONAL | POST | 핵심 화면부터 단계적 지원 | 엔진·미니게임별 기술 검증 필요 |
| UX-11 | 단계형 온보딩 | IN | SLICE | 세계관 최소 도입→캐릭터 선택·이름→첫 홈·대화→프로필→상점→가구 배치→완료 | 기능을 실제 조작 시점에만 알려 주고 첫 관계 루프를 완주 |
| UX-12 | 튜토리얼 강조·복귀 | IN | SLICE | 대상 UI 하이라이트, 단계 잠금, 중단 뒤 마지막 완료 다음 단계 재개, 스킵 정책 | 첫 실행의 이해도와 중단 복구를 함께 보장 |
11. 저장·계정·백엔드·운영 기능
| ID | 기능 | 권고 상태 | 단계 | 최종 포함 범위 | 결정 근거 |
|---|---|---|---|---|---|
| DATA-01 | 오프라인 핵심 플레이 | IN | SLICE | 홈, 대화, 플레이, 결과, 추억을 네트워크 없이 수행 | 로컬 우선 제품 원칙 |
| DATA-02 | 원자적 로컬 저장 | IN | SLICE | temp 검증, backup, schema migration | 관계 기록 신뢰 |
| DATA-03 | 손상 복구 UI | IN | SLICE | inspect, restore, export, 새 시작 2차 확인 | 조용한 데이터 손실 방지 |
| DATA-04 | 로컬 데이터 내보내기 | IN | 1.0 | 사람이 보관 가능한 파일과 버전 정보 | 소유권과 지원 대응 |
| DATA-05 | 선택적 클라우드 백업 | CONDITIONAL | POST | 비민감 진행, 암호화, 명시 동의, 복구 선택 | 기기 교체 가치와 개인정보 경계 검증 |
| DATA-06 | 필수 로그인 | OUT | NONE | 첫 실행과 핵심 플레이에 계정 요구 없음 | 진입 장벽과 오프라인 원칙 |
| DATA-07 | 선택 계정 | IN | 1.0 | 친구 UID, 튜토리얼·캐릭터 선택 동기화, 구매 복원; 게스트 핵심 플레이는 유지 | 친구 기능과 기기 이전을 지원하되 로그인 강제는 피함 |
| DATA-08 | 서명된 콘텐츠 업데이트 | IN | POST | manifest, hash, rollback, 호환 schema | 사건과 대사를 앱 업데이트 없이 확장 |
| DATA-09 | 원격 설정 | CONDITIONAL | POST | 안전한 범위와 기본값, kill switch | 라이브 운영 필요성 검증 |
| DATA-10 | 최소 사용 분석 | CONDITIONAL | 1.0 | 기본 최소화, 동의, 보존·삭제 정책 | 기능 이해와 이탈 구간 검증 목적 |
| DATA-11 | 대화·기억 원문 분석 전송 | OUT | NONE | 자유 입력과 로컬 기억 body 미전송 | 민감 정보 보호 |
| DATA-12 | 크래시 리포트 | IN | 1.0 | 개인정보 제거, build·stack 중심 | 출시 품질 운영 |
| DATA-13 | 교차 기기 실시간 동기화 | OUT | NONE | 동시 편집·자동 병합 없음 | 관계 로그 충돌과 서버 복잡도 과다 |
| DATA-14 | 서버 권위 관계 계산 | OUT | NONE | 관계·해금의 기본 권위는 로컬 규칙 | 오프라인 핵심 루프 보호 |
| DATA-15 | 푸시 토큰 관리 | CONDITIONAL | POST | 최소 기기 식별자, 토큰 회전·철회·삭제, 발송 감사 | EXT-06 원격 푸시 승인 시에만 도입 |
| DATA-16 | 위젯 snapshot 계약 | IN | 1.0 | schema version, 생성 시각, 비민감 필드, stale fallback | Unity와 네이티브 위젯의 안전한 연결 |
| DATA-17 | 튜토리얼·캐릭터 선택 동기화 | IN | 1.0 | currentStep, completed, characterId, 사용자 호칭, 캐릭터 이름, 첫 만남 시간, starter grant, migration version을 계정에 저장 | 기기 이전 뒤 이미 본 도입을 반복하지 않고 중복 지급을 막음 |
| DATA-18 | 권한·날씨 동의 상태 관리 | IN | SLICE | 알림·공개 범위·위치·달력의 요청 사유, 거절, 재요청, 설정 이동, GPS 날씨 전송 동의 버전 | 권한 거절·동의 철회가 핵심 플레이를 막지 않고 이후 GPS 전송을 즉시 차단 |
| DATA-19 | 온보딩 원자 생성·복구 | IN | SLICE | 캐릭터·기본 방·시작 재화·시작 가구의 단일 transaction, retry, idempotency | 중단·실패 뒤 선택 변경·중복 지급·손상 홈 0건 |
| DATA-20 | 아이템 출처·기간 정책 | IN | 1.0 | itemId, source type, unlock evidence, owned/placed state, visibility, limited window, rerun policy, purchase entitlement | 아이템 출처 불명·기간 오표기·중복 지급 0건 |
12. 소셜·라이브·수익화 기능
| ID | 기능 | 권고 상태 | 단계 | 최종 포함 범위 | 결정 근거 |
|---|---|---|---|---|---|
| BIZ-01 | 계정·친구 식별 | IN | 1.0 | 로그인 사용자에게 UID를 발급하고 SNS, 초대 링크, UID로 친구 요청 | 제한된 친구 기능의 기본 계약 |
| BIZ-02 | 친구 목록 | IN | 1.0 | 수락형 추가, 삭제, 차단, 최소 공개 프로필 | 자동 친구 추가와 주소록 수집을 피함 |
| BIZ-03 | 친구 방 비동기 방문 | IN | 1.0 | 마지막 공개 room snapshot 열람, 공개 범위 설정 | 실시간 접속·동시 상태 동기화 없이도 교류 가능 |
| BIZ-04 | 캐릭터 교류 장면 | IN | 1.0 | 미리 정의한 인사·같이 놀기·구경 연출 | 자유 창작보다 캐릭터성·안전성 유지 |
| BIZ-05 | 제한된 스티커 반응 | IN | 1.0 | 승인 스티커만 사용, 자유 텍스트·이미지·링크 금지 | moderation 범위를 통제 |
| BIZ-06 | 소셜 안전 제어 | IN | 1.0 | 요청 수락·거절, 차단, 신고, 공개 범위, 최소 감사 기록 | 친구 기능은 안전·프라이버시와 함께 출시 |
| BIZ-07 | 협동 미니게임 | CONDITIONAL | POST | 친구 초대 기반의 짧은 협동, 대전·랜덤 매칭·음성 채팅 제외 | 친구 방문과 교류가 유효할 때만 확장 |
| BIZ-08 | 비동기 기록 비교 | OPEN | POST | 익명 주간 기록 또는 완전 제외 | 경쟁이 관계 경험을 해치는지 검증 필요 |
| BIZ-09 | 글로벌 순위표 | OUT | NONE | 공개 경쟁 순위 없음 | 부정행위·운영·스트레스 증가 |
| BIZ-10 | UGC·모드 업로드 | OUT | NONE | 사용자 제작 콘텐츠 배포 없음 | 권리·검수·안전 운영 범위 초과 |
| BIZ-11 | 시즌 사건 | IN | POST | 달력 기반 신규 사건·복장·방 변화 | 같은 세계가 계속된다는 장기 동력 |
| BIZ-12 | 라이브 출석 보상 | OUT | NONE | 연속 접속 보상과 소멸 압박 없음 | 부재 무벌점 원칙 위반 |
| BIZ-13 | 광고 | OUT | NONE | 배너·전면·보상형 광고 없음 | 감정 장면과 신뢰 훼손 |
| BIZ-14 | 확률형 가챠 | OUT | NONE | 캐릭터·복장·가구 확률 판매 없음 | 제품 관계와 수집 압박 충돌 |
| BIZ-15 | 유료 본편 | IN | 1.0 | 가격과 플랫폼은 별도 사업 결정 | 광고·가챠 없이 지속 가능한 기본안 |
| BIZ-16 | 확장 콘텐츠 판매 | OPEN | POST | 사건팩·공간팩·캐릭터 루트 중 선택 | 서사 완결성과 분할 판매 경계 합의 필요 |
| BIZ-17 | 장식·복장 직접 구매 | IN | POST | 확정 가격·수량·미리보기, 확률 없음, 관계·스토리·능력치 판매 금지 | 재화 BM을 캐릭터 생활과 공간 꾸미기에 한정 |
| BIZ-18 | 기간 한정 판매 정책 | IN | POST | 시작·종료·재등장 정책 공개, 핵심 진행 판매 금지, 종료 압박 알림 금지 | 한정 요소의 수집 재미와 사용자 신뢰를 함께 유지 |
13. 언어·플랫폼 범위
| ID | 기능 | 권고 상태 | 단계 | 최종 포함 범위 | 결정 근거 |
|---|---|---|---|---|---|
| PLAT-01 | 한국어 원문 품질 | IN | SLICE | 자연스러운 구어체, 캐릭터별 말투, 반복 억제 | 현재 핵심 시장의 감정 전달 기반 |
| PLAT-02 | 다국어 구조 | IN | 1.0 | 문자열·폰트·레이아웃 분리 | 미래 현지화 비용 방지 |
| PLAT-03 | 영어·일본어 출시 | CONDITIONAL | POST | 현지화와 문화 검수, AI 품질 통과 | 단순 번역으로 출시하지 않음 |
| PLAT-04 | iOS | IN | 1.0 | 실제 기기 빌드·서명·데이터 정책 | 모바일 제품 기본 대상 |
| PLAT-05 | Android | OPEN | POST | 성능·모델 용량·기기 파편화 검증 | 시장 가치와 QA 비용 논의 필요 |
| PLAT-06 | macOS 개발 빌드 | IN | SLICE | 개발·QA용 재현 가능한 빌드 | 현재 팀 검증 기반 |
| PLAT-07 | PC 상용판 | OPEN | POST | UI·입력·세이브·스토어 요구 정의 | 모바일 동시 출시 여부 논의 필요 |
| PLAT-08 | WebGL | OUT | NONE | 로컬 AI·저장·성능 제약으로 제외 | 핵심 기능 품질 보장 어려움 |
14. 권고 제품 패키지
팀 논의를 빠르게 하기 위해 기능을 세 가지 제품안으로 묶는다.
안 A. 관계 중심 로컬 게임
- 캐릭터 1명, 홈, 공동 플레이, 사건, 추억, 꾸미기
- 승인 대사와 템플릿만 사용
- 날짜·시간만 연동하고 날씨·알림·AI는 최소화
- 계정·소셜·클라우드 없음
장점은 범위와 위험이 가장 작다는 것이다. 단점은 “나를 기억하고 함께 산다”는 차별점이 약해질 수 있다는 것이다.
안 B. 관계형 생활 게임, 총괄 권고
- 안 A 전체 포함
- 제한된 로컬 SLM, 로컬 장기 기억, 취향 확인
- 날짜·계절·날씨, 홈 화면 위젯, 로컬 알림, 딥링크
- 시즌 사건과 서명된 콘텐츠 업데이트
- 선택적 백업은 검증 후 추가
- 제한된 친구 목록·방 방문·캐릭터 교류는 포함하고, 광고·가챠·범용 챗봇은 제외
게임 80~90%, 생활 보조 10~20% 방향과 현재 기술·프라이버시 원칙을 가장 잘 만족한다.
안 C. 캐릭터 플랫폼
- 복수 캐릭터, 자유 대화, 소셜, UGC, 크로스 디바이스, 라이브 경제
- 지속적인 moderation, 서버 운영, 경제 밸런스 필요
시장 확장성은 있지만 현재 PetAI의 관계 깊이와 로컬 우선 정체성이 흐려진다. 현 제품 세대에서는 권고하지 않는다.
15. 팀이 반드시 결정해야 하는 쟁점
| ID | 결정 질문 | 선택지 | 총괄 권고 | 결정에 필요한 증거 |
|---|---|---|---|---|
| DEC-01 | 관계를 어디까지 표현하는가 | 우정·동료애 / 로맨스 포함 / 사용자 선택 | 우정·동료애 기반, 로맨스 가능성은 연령·등급 검토 후 | 타깃 연령, 스토어 등급, 캐릭터 바이블 |
| DEC-02 | 캐릭터는 한 명인가 | 한 명 / 루트형 추가 / 수집형 | 한 명, 검증 뒤 독립 루트형만 재검토 | 30일 콘텐츠 생산량·유지율 |
| DEC-03 | 최종 공동 게임 수 | 2종 / 3종 / 지속 추가 | 1.0에 2~3종, 이후 시즌 검증 | 게임별 제작·QA 비용과 반복 플레이 |
| DEC-04 | 제한형 자유 입력을 넣는가 | 없음 / intent 제한 / 범용 대화 | intent 제한만 조건부 | 한국어, 안전, 지연, 일관성 블라인드 테스트 |
| DEC-05 | 로컬 기억 범위 | 취향만 / 사건 요약 / 자유 사실 | 취향+사건 요약, 사용자가 수정 가능 | 삭제·오추론·성능 테스트 |
| DEC-06 | 현실 행동을 넣는가 | 제외 / 1~3종 / 생산성 확장 | 캐릭터와 함께 하는 소수 활동만 | 사용자가 게임으로 느끼는지 테스트 |
| DEC-07 | 달력 권한을 쓰는가 | 미사용 / 바쁨 여부 / 일정 내용 | 기본 미사용, 바쁨 여부 spike만 | 프라이버시 리뷰와 사용자 가치 |
| DEC-08 | 위치를 날씨에 어떻게 쓰는가 | 수동 도시만 / 동의형 GPS 날씨 조회 / 상시 추적 | 동의형 GPS 1회 조회 + 수동 도시 fallback, 정밀 좌표 비저장 | 권한 이탈률, 날씨 정확도, 서버 폐기·감사 검증 |
| DEC-09 | 계정·백업을 넣는가 | 로컬만 / 선택 백업 / 필수 계정 | 로컬+선택 백업 | 기기 교체 시나리오와 운영 비용 |
| DEC-10 | 수익 모델은 무엇인가 | 유료 본편 / 장식 판매 / 확장팩 / 구독 | 유료 본편+명확한 확장 콘텐츠 검토 | 가격 조사, 스토어 정책, 콘텐츠 원가 |
| DEC-11 | 엔딩이 있는가 | 없음 / 시즌 결말 / 최종 결말 | 시즌 단위 회고와 열린 관계 | 콘텐츠 운영 기간과 복귀 설계 |
| DEC-12 | 출시 플랫폼은 어디까지인가 | iOS / Android / PC 동시 | iOS 우선, Android·PC 조건부 | 실제 기기 성능과 QA 인력 |
| DEC-13 | 위젯을 1.0에 넣는가 | 없음 / 홈 위젯 / 홈+잠금 화면 | 홈 화면 위젯 포함 | 네이티브 브리지 spike와 실제 사용 빈도 |
| DEC-14 | 알림 범위는 어디까지인가 | 로컬만 / 로컬+원격 푸시 | 1.0 로컬, 출시 후 원격 푸시 조건부 | 운영 인력, 동의율, 재방문 효과 |
| DEC-15 | Live Activity를 쓰는가 | 미사용 / 타이머만 / 캐릭터 상시 상태 | 사용자가 시작한 타이머만 조건부 | 배터리, OS 정책, 제품 가치 |
| DEC-16 | 앱 아이콘 배지를 쓰는가 | 미사용 / 미확인 사건 수 | 기본 미사용 | 숫자 압박에 대한 사용자 반응 |
| DEC-17 | 친구 기능의 공개 범위는 어디까지인가 | SNS·초대 링크·UID / 방 방문 / 캐릭터 교류 / 협동 게임 | 수락형 친구, 비동기 방 방문, 제한 연출, 스티커 반응 | 프라이버시·차단·신고·서버 비용 검토 |
| DEC-18 | SNS 로그인 제공자는 무엇인가 | 이메일·비밀번호 / Google / X / Kakao / Naver / Apple | 게스트 시작 유지, 실제 출시 제공자는 플랫폼 정책과 운영 비용으로 확정 | 로그인 정책, 탈퇴·재설정, 계정 복구 흐름 |
| DEC-19 | 일일 성장 제한은 어떻게 둘 것인가 | 엄격 천장 / 반복 감쇠 / 제한 없음 | 서로 다른 활동은 온전한 성장, 같은 행동은 감쇠하는 소프트 제한 | 플레이 자유도·콘텐츠 소모·사용자 이해도 테스트 |
| DEC-20 | 초기 육성 능력치는 무엇인가 | 유대·이해·거주 만족도 / 활력·특기까지 포함 | 3개로 시작하고 활력·특기는 확장 후보 | UI 복잡도·행동 환산·각 수치의 가시적 변화 |
| DEC-21 | 진화·스토리 진행 기준은 무엇인가 | 수치만 / 수치+날짜 / 수치+추억+선택 | 유대·이해·대표 추억·최소 경과 일수·특정 선택의 조합 | 반복 파밍만으로 서사가 소모되지 않는지 |
| DEC-22 | 재화와 결제 구조는 무엇인가 | 단일 재화 / 무료+유료 이중 재화 / 유료 상점만 | 미션 무료 재화와 확률 없는 직접 구매를 분리 검토 | 가격 단위·상점 전환·pay-to-win 방지 기준 |
| DEC-23 | 튜토리얼 진행과 캐릭터 선택을 어디에 저장하는가 | 로컬만 / 계정만 / 로컬+계정 동기화 | 게스트는 로컬, 로그인 뒤 계정 동기화 | 기기 이전·계정 전환·재시작 여정 |
| DEC-24 | 히든·한정 아이템을 어떻게 운영하는가 | 히든 조건 공개 수준 / 시즌 재등장 / 콜라보 한정 / 도감 노출 | 히든은 힌트 제공, 시즌은 재등장 정책 명시, 필수 진행·관계 판매 금지 | 컬렉션 완성 욕구·이탈·결제 압박 사용자 테스트 |
16. 명시적 최종 제외 권고
다음 기능은 “나중에 시간 나면”이 아니라 현재 제품 방향상 제외할 것을 권고한다.
- 미접속으로 관계가 하락하거나 캐릭터가 사용자를 비난하는 기능
- 연속 출석 보상, 소멸 타이머, 복귀 압박
- 대화 원문과 장기 기억의 기본 클라우드 전송
- AI가 관계값·재화·해금·공식 기억을 직접 결정하는 기능
- 정밀 GPS 상시 수집과 이동 경로 저장. 단, 동의한 날씨 1회 조회의 일시 전송은 허용
- 범용 상담·검색·업무를 수행하는 무제한 챗봇
- 친구 DM, 공개 커뮤니티, 랜덤 매칭, 실시간 음성 채팅
- 글로벌 경쟁 순위와 사용자 간 거래
- 확률형 가챠, 광고, 강제 구독
- 수집을 위한 복수 캐릭터 대량 운영
- 런타임 생성 이미지에 핵심 캐릭터 외형을 맡기는 기능
- 서버·AI 장애 시 홈과 핵심 플레이가 중단되는 구조
- 위젯·알림에서 관계 하락, 재화 소비, 기억 삭제를 즉시 확정하는 동작
- 원격 푸시를 캐릭터의 사적 메시지처럼 위장하는 마케팅
17. 기능 포함 판정 기준
각 기능은 다음 질문에 답해야 한다.
| 기준 | 질문 | 통과 조건 |
|---|---|---|
| 제품 적합성 | 캐릭터와 함께 사는 게임을 강화하는가 | 관계·플레이·추억 중 하나를 직접 개선 |
| 게임 기여 | 생활 도구가 아니라 플레이 이유가 있는가 | 행동 전후 게임 상태와 피드백 존재 |
| 중복성 | 기존 기능으로 같은 가치를 만들 수 없는가 | 대체 불가 이유 한 문장 |
| 지속성 | 30일 후에도 가치가 있는가 | 반복·확장·회상 중 하나의 구조 존재 |
| 실패 안전성 | 네트워크·AI·권한 실패 시 무엇이 보이는가 | 핵심 루프 중단 없음 |
| 데이터 최소화 | 꼭 필요한 정보만 저장하는가 | field 단위 목적·보존·삭제 정의 |
| 제작 가능성 | 콘텐츠와 QA 비용을 감당할 수 있는가 | 담당자·월간 생산량·회귀 범위 정의 |
| 사용자 통제 | 거절·취소·수정·삭제가 가능한가 | 관련 UI와 상태 전이 존재 |
기준을 통과하지 못했더라도 전략적 가치가 있으면 CONDITIONAL로 두고 검증 과제를 붙인다. 근거 없이 IN으로 올리지는 않는다.
18. 기능 하나를 확정할 때 기록할 항목
기능 ID / 이름:
최종 범위: IN | CONDITIONAL | OPEN | OUT
제공 단계: SLICE | 1.0 | POST | NONE
사용자 문제:
제품 가치:
사용 전제:
정상 흐름:
거절·취소·중단:
실패·오프라인 흐름:
저장 상태:
수집 데이터와 보존 기간:
Unity 책임:
Local AI 책임:
Backend 책임:
Content 책임:
QA 증거:
운영 비용:
대신 제거할 기능:
결정자 / 결정일:
재검토 조건:
19. 범위 변경 절차
- 새 기능이 최종 제품 정의의 어느 문장을 강화하는지 적는다.
- 기존
IN기능으로 같은 가치를 만들 수 있는지 확인한다. 최종 포함 여부와제공 단계를 따로 제안한다.- Unity, AI, Backend, Content, QA의 추가 작업을 각각 적는다.
- 새 상태, 개인정보, 서버 비용, 월간 콘텐츠 비용을 추정한다.
- 범위가 증가하면 대신 줄이거나 제거할 항목을 제시한다.
- 제품 총괄 승인 뒤 이 문서와 관련 WBS를 같은 날 수정한다.
- 기획 승인 전에 구현된 기능은 feature flag로 닫아 둔다.
20. 최종 범위 합의 회의 진행안
1부: 제품 정체성, 20분
- 한 문장 정의 승인
- 게임 80~90%, 생활 보조 10~20% 승인
- 안 A/B/C 중 제품안 선택
2부: 핵심 범위, 40분
- 4~10장의
IN권고를 영역별 검토 - 구현 시점이 아니라 최종 존재 여부만 결정
- 반대 시 대체할 사용자 경험을 함께 제시
3부: 논쟁 기능, 40분
- 15장의 결정 질문 처리
- 결론이 안 나면
OPEN유지, 결정자·기한·필요 증거 지정
4부: 제외와 운영, 20분
- 16장 제외 목록 승인
- 계정·데이터·BM·플랫폼 경계 승인
- 변경 절차와 문서 책임자 확정
회의 종료 조건
- 모든 기능이
IN / CONDITIONAL / OPEN / OUT중 하나를 가진다. - 모든
CONDITIONAL에 검증 책임자와 기한이 있다. - 모든
OPEN에 최종 결정자가 있다. IN기능은 최소 하나의 제공 단계와 담당 WBS를 가진다.- 제외 기능이 프로토타입, 홍보, 데이터 schema에 숨어 있지 않다.
21. 연결 문서
리듬게임 상세 문서는 별도 HTMLBook이 승인된 뒤 이 목록과 PLAY-02에 연결한다.
22. 2026-07-23 기능 범위 보완 사항
이 절은 이전 본문과 충돌하면 우선한다. 자세한 사용자 흐름은 최종 기능 정의서를 기준으로 한다.
22.1 확정 방향
| 기능 | 최종 범위 | 경계 |
|---|---|---|
| 육성 | 유대·체력·스트레스·경험치 중심, 이해도·거주 만족도·특기 확장 | 미접속·실패로 관계 하락 금지 |
| 성장 제한 | 플레이는 막지 않고 같은 행동 반복 보상만 완만하게 감소 | 원시 e^(-stress) 식을 그대로 구현 금지 |
| 재화 | 미션/플레이/사건 + 직접 구매 후보 | 확률형·관계 판매·필수 스토리 판매 금지 |
| 아이템 | 상시·미션·관계·히든·한정·친구·기능 아이템과 도감 | 히든 조건에 결제·정밀위치·건강·친구 수 사용 금지 |
| 위젯 | 캐릭터·안전한 상태·환경 요약·가벼운 진입 | 대화 원문·정확 위치·관계 상세·결제 변경 금지 |
| 푸시 | 설정 알림, 사건, 재방문, 친구 요청, 회복 안내 | 종류별 opt-in·조용한 시간·빈도 상한 필수 |
| 로그인 | email/password + OAuth2 Google/X/Kakao/Naver 후보 | 대화·기억·건강 원문 기본 서버 전송 금지 |
| 친구 | 초대 링크/SNS/UID, 상호 수락, 비동기 방문, 스티커 | DM·이미지·링크·실시간 음성·랜덤 매칭 금지 |
| 리듬게임 | 미션 공급원으로만 이 문서에서 연결 | 세부 규칙은 별도 문서에서 결정 |
22.2 반드시 회의에서 정할 값
- 스트레스의 정규화 단위, 보상 하한, 수면 연동 opt-in과 회복량
- 일일 성장 감소식과 관계/스토리의 최소 경과 일수
- 루비라는 재화명, 50루비·1,980루비·5,900원 정액 예시의 채택 또는 폐기
- 한정 아이템 재등장 정책과 기능 아이템의 무료/해금/구매 구분
- 위젯 허용 반응, 재방문 푸시 빈도, 스트레스 회복 알림의 기본값
- SNS 제공자별 도입 순서, 친구 공개·차단·신고 운영 기준
22.3 범위 변경 규칙
- 가설 수치는 상점 가격·API·저장 schema에 고정하지 않는다.
- 새로운 앱 기능은 캐릭터·관계·추억 중 하나를 강화하는 이유와 권한/데이터 경계를 함께 제출해야 한다.
- 리듬게임 세부 기획을 이 문서에 다시 끼워 넣지 않는다. 별도 명세 링크만 유지한다.