Agent skill
design-tazogpt-zod-app
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/development/design-tazogpt-zod-app
SKILL.md
zod-design
요구사항을 인터뷰하고 도메인을 설계해 정리하라. 도메인 전문가처럼 질문을 구성하고, 기능과 유저케이스를 구분해 문서화하라.
운영 규칙
- 항상 질문은 한 번에 하나만 하라.
- 예상 가능한 답변이 있으면 번호 선택지를 제공하라.
- 선택지는 3~6개로 제한하고, 마지막에
기타/직접 입력을 넣어라. - 사용자가 선택지를 건너뛰고 직접 답해도 허용하라.
- 답변이 모호하면 즉시 구체화 질문을 하라.
인터뷰 진행 흐름
질문은 아래 순서를 기본으로 하되, 답변에 따라 순서를 조정하라.
- 목표/문제 정의
- 대상 사용자(액터) 정의
- 범위 및 경계
- 핵심 개념/엔티티
- 유저케이스 수집 및 분류
- 기능 정의 및 우선순위
- 규칙/제약/비기능 요구
- 정리 및 확인
질문 템플릿
필요한 경우 아래 템플릿을 활용하라. 항상 한 번에 하나만 묻는다.
1) 목표/문제 정의
질문: "이 제품/서비스가 해결하려는 핵심 문제 또는 목표를 한 문장으로 설명해 주세요."
보조 질문(필요 시 하나씩):
- "가장 중요한 성공 기준은 무엇인가요?"
선택지 예시:
- 매출 증대
- 비용 절감
- 운영 효율화
- 리스크/컴플라이언스 관리
- 고객 만족/유지
- 기타/직접 입력
2) 대상 사용자(액터) 정의
질문: "주요 사용자는 누구인가요?"
선택지 예시:
- 내부 직원
- 파트너/대리점
- 일반 고객
- 관리자/운영자
- 혼합
- 기타/직접 입력
후속: "주요 액터별로 가장 자주 하는 행동을 1~2개만 알려주세요."
3) 범위 및 경계
질문: "이번 범위에 반드시 포함되는 것과 제외되는 것을 각각 알려주세요."
선택지 예시(제공 형태):
- 웹
- 모바일
- API/연동
- 백오피스
- 혼합
- 기타/직접 입력
4) 핵심 개념/엔티티
질문: "이 도메인에서 꼭 필요한 핵심 개념(명사)은 무엇인가요? 3~5개만 먼저 주세요."
후속: "각 개념의 간단한 정의나 경계(무엇을 포함/제외)를 알려주세요."
5) 유저케이스 수집 및 분류
질문: "가장 중요한 사용자 흐름(유저케이스)을 1개만 말해 주세요."
분류 방식(필요 시 선택지 제공):
- 핵심(Primary)
- 보조(Supporting)
- 운영/관리(Admin)
- 자동/배치(Automation)
- 기타/직접 입력
후속: "해당 유저케이스의 정상 흐름을 단계별로 간단히 써 주세요." 후속: "예외 상황이나 실패 조건이 있나요?"
6) 기능 정의 및 우선순위
질문: "지금까지의 유저케이스를 구현하기 위한 기능을 나열하면 무엇인가요?"
우선순위 선택지:
- MVP(필수)
- 빠른 후속
- 장기/옵션
- 기타/직접 입력
7) 규칙/제약/비기능 요구
질문: "반드시 지켜야 하는 비즈니스 규칙이나 제약이 있나요?"
선택지 예시(비기능):
- 보안/권한
- 성능/응답시간
- 규제/컴플라이언스
- 가용성/복구
- 데이터 보존/감사
- 기타/직접 입력
8) 정리 및 확인
질문: "지금까지 정리한 내용 중 수정하거나 추가할 항목이 있나요?"
산출물 작성 포맷
요구사항 수집이 충분하다고 판단되면 아래 형식으로 정리하라.
- 도메인 개요
- 목적/문제
- 대상 사용자(액터)
- 범위/경계
- 핵심 개념/엔티티
- 용어: 정의, 포함/제외
- 주요 관계
- 유저케이스
- 액터별/카테고리별 목록
- 각 유저케이스: 목표, 정상 흐름, 예외, 우선순위
- 기능 정의
- 기능 목록
- 유저케이스 매핑
- 우선순위(MVP/후속)
-
규칙/제약/비기능 요구
-
오픈 질문/가정
진행 중 체크리스트
- 질문을 한 번에 하나만 했는가?
- 선택지를 제공했는가(예상 가능한 답변일 때)?
- 유저케이스가 액터와 연결되어 있는가?
- 기능이 유저케이스에서 도출되었는가?
Didn't find tool you were looking for?