이 장에서 배우는 것 한 줄짜리 요청이 어떻게 실행 가능한 명세가 되는지, 그리고 왜 되묻는 단계가 따로 있는지.
현실에서 요청은 이렇게 옵니다.
"장바구니에 쿠폰 적용되게 해주세요"이 한 줄로는 만들 수 없습니다. 정해지지 않은 게 너무 많습니다.
PM 에이전트가 모호함을 질문으로 걷어냅니다.
마지막 질문이 이 단계의 가치입니다. 요청한 사람도 생각 못 한 지점을 만들기 전에 발견했습니다.
사람 PM이 물어도 됩니다. 다만 차이가 있습니다.
| 사람 PM | PM 에이전트 | |
|---|---|---|
| 시점 | 회의를 잡아야 함 | 즉시 |
| 빠뜨림 | 익숙한 영역은 건너뜀 | 체계적으로 훑음 |
| 기록 | 회의록에 흩어짐 | 그대로 명세가 됨 |
세 번째가 실무에서 큽니다. 문답이 곧 명세라서 따로 정리할 일이 없습니다.
"범위 밖"이 있는 것에 주목하세요. 범위를 하지 말 것으로 적는 것이 여기서도 그대로 적용됩니다.
저절로 해결되지 않습니다. 뒤 단계에서 AI가 하나를 골라 진행하고, 그 선택이 그럴듯하게 굳습니다.
graph TD
A["명세에 안 적힌 것"] --> B["AI가 임의로 결정"]
B --> C["코드에 반영됨"]
C --> D["테스트도 그 기준으로 생성"]
D --> E["전부 통과 · 아무도 이상함을 모름"]
E --> F["나중에 발견: '이게 왜 이렇게 돼 있죠?'"]테스트까지 그 기준으로 만들어지기 때문에 검증 단계에서도 안 걸립니다. 그래서 이 단계가 프로세스의 첫 번째인 것입니다.
같은 유형의 작업이면 물어야 할 것도 비슷합니다.
되묻기의 목적이 정확히 그것입니다. 그 답을 지금 정하는 것과 나중에 발견하는 것의 비용 차이가 큽니다.
1. 이 단계에서 남긴 애매함이 왜 뒤에서 안 걸립니까?
AI가 임의로 결정한 뒤 테스트도 그 기준으로 생성되기 때문입니다. 전부 통과하므로 검증 단계에서도 이상함이 드러나지 않고, 한참 뒤에 "이게 왜 이렇게 돼 있죠?"로 발견됩니다.
2. PM 에이전트가 사람 PM과 다른 실무적 이점은?
문답이 그대로 명세가 된다는 것입니다. 회의록에 흩어지지 않아 따로 정리할 일이 없습니다. 그 외에 즉시 시작할 수 있고 익숙한 영역도 안 건너뜁니다.
3. 요청자가 "생각 안 해봤다"고 답하면 어떻게 봐야 합니까?
좋은 신호입니다. 되묻기의 목적이 정확히 그것을 찾는 것이고, 만들기 전에 발견하는 편이 훨씬 쌉니다.
명세가 준비되면 여러 에이전트가 동시에 붙습니다 → 프로세스 2 — 에이전트 오케스트레이션
Q: 쿠폰을 여러 개 겹쳐 쓸 수 있나요?A: 아니요, 하나만요.Q: 만료된 쿠폰을 입력하면 어떻게 되나요?A: 만료됐다고 알려주고 적용은 안 됩니다.Q: 최소 주문 금액 조건이 있나요?A: 쿠폰마다 다릅니다. 미달이면 조건을 안내해주세요.Q: 적용 후 총액은 즉시 갱신되나요, 아니면 결제 단계에서?A: 즉시요.Q: 이미 할인 중인 상품에도 적용되나요?A: ...아, 그건 생각 안 해봤네요. 안 되게 해주세요.[기능] 장바구니 쿠폰 적용[동작]- 쿠폰 코드 입력란에 코드를 넣으면 검증 후 할인 적용- 적용 시 총액 즉시 갱신[규칙]- 쿠폰은 1개만 적용 (중복 불가)- 만료 쿠폰: "사용 기한이 지난 쿠폰입니다"- 최소 금액 미달: "N원 이상 주문 시 사용 가능합니다"- 할인 중인 상품에는 적용 불가[범위 밖]- 쿠폰 발급 기능 (별도 작업)- 쿠폰 통계 (별도 작업)화면 기능 공통 질문: □ 실패했을 때 무엇을 보여주나 □ 로딩 중에는 무엇을 보여주나 □ 권한이 없는 사용자에게는 □ 모바일에서는 어떻게 보이나 □ 기존 기능 중 영향받는 것은