# 기능명세서 작성 속성 가이드

빠르게 매니패스트를 파악하고 싶은 분들을 위해 속성 가이드를 준비했습니다.

매니패스트로 쇼핑몰을 기획하려는 상황을 가정하고,&#x20;

가장 메인 기능인 **쇼핑**에 필요한 기능을 구성해보겠습니다.

{% stepper %}
{% step %}

### 새 문서 준비

**새 문서를 만든 후, 디렉토리 뷰를 켭니다.**

해당 가이드에서는 **디렉토리 뷰**를 주로 활용합니다.&#x20;

디렉토리 뷰에서 작성하면 기능별로 집중할 수 있고, 더 디테일하게 작성할 수 있습니다.

<figure><img src="/files/mtH7E2Uxpabc1aW4C9E8" alt=""><figcaption></figcaption></figure>

**📌 Tip**

* 트리뷰에서 아이템을 `Shift+클릭` 하면 디렉토리 뷰로 이동합니다.
* 아이템을 `더블클릭` 하면 아이템의 **이름을 바로 수정**할 수 있습니다.
* `Drag & Drop`으로 순서를 바꾸거나, 포함 위치를 바꿀 수 있습니다.

{% endstep %}

{% step %}

### 요구사항 작성 방법

먼저, 요구사항을 정의해봅시다.&#x20;

* 쇼핑 : 상품을 진열해두면, 고객이 상품을 골라 주문할 수 있다.

거기서, ‘쇼핑에서 이런것을 할 수 있어야해!’ 하는 기준을 충족 기준에 적어주세요.

* 충족 기준
  * 유저가 원하는 카테고리, 브랜드를 선택할 수 있어야 한다.
  * 유저에게 정렬 방식의 선택지를 주어야 한다.
  * 유저가 검색어를 입력하여 상품을 검색할 수 있어야 한다.
  * 검색 내용은 관련도순 표기가 포함되어야 한다.
  * 서비스 내에서 구매(결제)를 할 수 있다.
  * 장바구니에 상품을 담아 합산할 수 있고, 합산 기준으로 혜택을 적용할 수 있다.

> 프로젝트 성격에 따라 `최소한의 기능 개발 수준` , `유저 플로우 완성도의 기준`, `비즈니스 모델을 실현할 수 있는 수준` 등 다양한 관점에서 작성할 수 있습니다. 💭&#x20;

<details>

<summary>충족 기준, 왜 적어야 하죠?</summary>

1. 프로덕트의 목적성과 핵심 유저플로우를 구체화 시키는 과정입니다.
2. 프로덕트의 완성도나 진척도를 체크하는 기준이 됩니다.

</details>

**✏️매니패스트에서 작성하면 이런 모습입니다.**

<figure><img src="/files/Bna3jQAV8OrMX1CxwRIO" alt=""><figcaption></figcaption></figure>

{% endstep %}

{% step %}

### 기능 작성 방법

요구사항을 구체화하며, 대략적인 기능들이 보이는 듯 합니다.

그러면 이제 좀더 현실적으로 기능을 더 세분화 해보겠습니다.

* ‘쇼핑에는 보통 어떤 기능이 들어가지?’
* ‘요구사항에 따라 이런 기능이 필요하겠어’

이와 같은 사고 흐름으로, 생각대로 리스트업 해 나갑니다.

저희의 요구사항에서 언급된  카테고리 분류, 정렬, 검색 모두 상품 목록이 있어야 하는 세부 기능들이니, **‘상품 목록 조회’**&#xB97C; 기능으로 넣어보았습니다.

**✏️매니패스트에서 작성하면 이런 모습입니다.**

<figure><img src="/files/X8PIezDhcOh8sH57xCKV" alt=""><figcaption></figcaption></figure>

{% endstep %}

{% step %}

### 상세 기능 작성 방법

그리고 바로 '상품 목록 조회'의 세부기능을 작성해보겠습니다.

이해를 돕기 위해, 익숙한 형태로 기능과 세부 기능을 적어보았습니다.

| 기능       | 세부 기능     | 기타 (정책, 기능 설명 등)     |
| -------- | --------- | -------------------- |
| 상품 목록 조회 |           | 상품 목록을 표시합니다.        |
|          | 필터        | 카테고리(2뎁스), 브랜드 별     |
|          | 정렬        | 추천순, 가격순, 인기순        |
|          | 검색        | 제품명 검색, 필터 동일 적용     |
| 상품 상세 조회 |           | 선택된 상품 상세 정보를 표시합니다. |
|          | 옵션, 수량 선택 | 옵션별 가격 변동 가능         |
|          | 장바구니 담기   | 선택 옵션, 수량 포함         |
|          | 바로 구매     |                      |
| ...      |           |                      |

위 내용의 '상품 목록 조회'를 매니패스트에서 작성해볼까요?

📌 Tip : 디테일한 내용은 ‘설명’에 적을 수 있으니 참고해주세요!

**✏️매니패스트에서 작성하면 이런 모습입니다.**

<figure><img src="/files/h6jPOKEV2ujAK8NIZSpw" alt=""><figcaption></figcaption></figure>

{% endstep %}

{% step %}

### 반복하기

기본적인 작성 방법은 여기까지 입니다.&#x20;

디렉토리 뷰에서 작성한 내용을 트리 뷰로 보면 이렇게 완성되어 있습니다.

<figure><img src="/files/eNgEwWK5Tf7KoILtYaFK" alt=""><figcaption></figcaption></figure>

이제 나머지 부분들도 머릿속의 그림대로 따라 가지를 뻗어 나가면 됩니다.

**📌 처음부터 완벽한 기획은 없습니다! 반복되는 수정 작업을 통해 완성도를 높이세요.**

{% endstep %}
{% endstepper %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.manyfast.io/plan/quick-guide.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
