웹 프런트엔드 요구사항 문서화 가이드라인
본 가이드는 dha-sleep-web UI 요구사항을 Mobile 엔지니어와 QA 엔지니어가 재사용할 수 있도록 문서화하는 공통 규칙을 정의한다. 모든 문서는 한국어로 작성하며, 아래 항목을 반드시 준수한다.
1. 문서 위치와 구조
- 각 화면(또는 UX 플로우)마다 전용 디렉터리를 생성한다.
apps/dta-wi-doc/docs/application/dha-sleep-web/frontend/web/ux-flows/<screen-id>/
requirements.md # 기능 요구사항
business-rules.md # 비즈니스 규칙 및 상태 정책
<screen-id>는 실제 라우트 또는 도메인 개념을 분명히 드러내는 케밥 케이스를 사용한다. 예:initial-entry-screen,guest-onboarding.- 동일 화면에 대한 모든 참고 자료(추가 링크, 추후 FAQ 등)는 해당 디렉터리에만 배치한다.
2. 소스 기반 작성 원칙
- 필수: 화면 요구사항은 반드시 실제 소스 코드(페이지·컴포넌트·훅 등)를 분석해 작성한다.
- 금지: 스크린샷이나 GUI 묘사 중심의 서술을 작성하지 않는다. “어떤 정보를 노출해야 하는지, 어떤 조건에서 어떤 기능이 작동하는지”만 기술한다.
- 근거 명시: 필요한 경우 소스 파일 경로나 데이터 계약(예:
/onboarding/agreements,dictionary.home.*)을 텍스트로 언급해 추적 가능성을 확보한다.
3. Requirements 문서 구성
requirements.md에는 다음 섹션을 기본으로 포함한다.
- Purpose & Scope: 화면 목적, 포함/제외 범위.
- Entry Conditions: 화면 진입 조건, 초기 상태, 선행 데이터 요구사항.
- Required Information: 사용자에게 반드시 보여야 하는 데이터·라벨·CTA와 해당 데이터 소스.
- Interaction Flows: 사용자 입력에 따른 분기(예: 언어 전환, Agent 버튼, 사용자 유형 선택). 플랫폼 중립적으로 설명하고, “3글자 단위 스트리밍”처럼 구현에 영향을 주는 동작도 포함한다.
- QA Checklist: QA가 기능을 검증할 수 있도록 Pass/Fail가 명확한 항목을 나열한다.
참고: 문단 중 “Agent 버튼”, “신규/기존 사용자 CTA”처럼 제품에서 이미 합의된 용어만 사용해 혼선을 막는다.
4. Business Rules 문서 구성
business-rules.md는 기능 뒤에 있는 정책을 정의한다.
- Localization Rules: 어떤 문자열이 어떤 i18n 리소스를 참조하는지, 언어 전환 시 따라야 할 동작.
- State Machines & Flags: 예) Agent 버튼 발광 조건, 툴팁 스트리밍 상태,
hasSeenAgentTooltip활용 방식. - Routing Rules: 어떤 CTA가 어떤 경로로 이동하며 파라미터 처리 책임이 어디에 있는지.
- Resource & Timer Management: 비동기 작업 정리, 메모리 누수 방지 규칙 등.
- Error Handling / Fallbacks: 준비되지 않은 상담 세션, 내비게이션 실패 등 예외 케이스 대응.
- Verification Points: QA가 시나리오별로 반드시 확인해야 할 정책 항목.
5. 용어 및 표현 규칙
- 독자는 모바일 개발자와 QA 엔지니어를 포함하므로 웹 전용 기술 용어(Next.js, App Router, useEffect 등)는 사용하지 않는다. 필요한 경우 “언어 리소스 로딩”, “클라이언트 내비게이션”처럼 플랫폼에 구애되지 않는 표현을 사용한다.
- 에이전트 진입점은 항상
Agent 버튼으로 통일한다. 이외에도 제품 내 확정된 명칭(예: “신규 사용자 CTA”)을 일관되게 사용한다. - 문서 전반은 기능 설명 위주로 작성하며, UI 컴포넌트의 시각적 속성(색상, 폰트, 여백 등)은 다른 디자인 문서에 위임한다.
6. 작성 절차 요약
- 화면 소스 코드를 탐색하고, 언어 리소스·서비스 호출·상태 변수를 파악한다.
- 기능 흐름을 도메인 언어로 정리한 뒤, Requirements/Business Rules 두 파일에 각각 배분한다.
- QA가 재현 가능한 체크리스트를 포함하고, 문서 전체를 한국어로 교정한다.
- 새로운 화면을 추가할 때는 동일한 디렉터리/파일 패턴을 복제해 일관성을 유지한다.
위 가이드를 준수하면 플랫폼에 구애받지 않는 요구사항 문서를 지속적으로 축적할 수 있으며, 모바일·QA 팀이 동일한 정보를 기반으로 개발/검증을 수행할 수 있다.