Document

PRODUCT_SPEC.md

PRODUCT_SPEC.md는 제품의 진실(Source of Truth)이다.

이 문서의 목적은 기술 구조를 정의하는 것이 아니다.

무엇을 만들어야 하는지 정의하는 것이다.


Purpose

다음 질문에 답한다.

무엇을 만들 것인가?

누구를 위한 것인가?

왜 중요한가?

사용자는 무엇을 경험해야 하는가?

PRODUCT_SPEC.md는 제품 관점의 기준 문서다.


Inputs

일반적으로 다음 정보를 기반으로 작성한다.

  • PITCHING_SCRIPT.md
  • 사용자 요구사항
  • 비즈니스 목표
  • 시장 이해
  • 프로젝트 방향성

Outputs

다음 내용을 정의한다.

  • 제품 정의
  • 대상 사용자
  • 핵심 가치
  • 핵심 메시지
  • 사용자 여정
  • 정보 구조
  • 화면 또는 페이지 역할
  • 기능 범위
  • 제외 범위
  • 성공 기준

Lifecycle

PITCHING_SCRIPT.md 이후 작성한다.


제품의 의미가 변경될 때 업데이트한다.


사용자 경험이 변경될 경우 업데이트한다.


기능 추가만으로는 반드시 수정할 필요는 없다.


Relationship

IDEAS.md

PITCHING_SCRIPT.md

PRODUCT_SPEC.md

ARCHITECTURE.md

TASKS.md

PRODUCT_SPEC.md는 기술 구현보다 우선한다.


ARCHITECTURE.md는 PRODUCT_SPEC.md를 구현하기 위해 존재한다.


TASKS.md는 PRODUCT_SPEC.md를 실현하기 위해 존재한다.


AI Usage

Discussion AI가 반드시 읽어야 하는 문서다.


Execution AI도 반드시 읽어야 하는 문서다.


제품 요구사항에 대한 최종 기준은 PRODUCT_SPEC.md다.


Generate With

PRODUCT_SPEC.md는 일반적으로 다음 프롬프트를 통해 생성한다.

제품 명세 Prompt


제품 명세 Prompt는 다음을 수행한다.

  • 제품 정의
  • 사용자 정의
  • 사용자 여정 설계
  • 정보 구조 설계
  • 범위 정의
  • 성공 기준 정의

Example

실제 REPL Works Compatible 프로젝트 예시를 통해 PRODUCT_SPEC.md 작성 방식을 확인할 수 있다.

Example PRODUCT_SPEC.md


예시는 다음 내용을 포함한다.

  • 제품 정의
  • 사용자 여정
  • 정보 구조
  • 범위 정의
  • 성공 기준

Key Principle

좋은 PRODUCT_SPEC.md는 구현 방법을 설명하지 않는다.

좋은 PRODUCT_SPEC.md는 무엇을 만들어야 하는지 설명한다.