Requirement translation

요구사항은 API 계약, 데이터 규칙, 품질 기준으로 변환된다

기능 목록을 그대로 구현하지 않고 사용자 요구를 요청/응답 계약, 저장 경계, 검증 가능한 완료 기준으로 바꿔야 NestJS 설계가 흔들리지 않습니다.

01 요구

사용자 행동과 제약

회원가입, 프로젝트 생성, 파일 편집, 실시간 협업처럼 행동을 문장으로 잡습니다.

02 API 계약

method · path · DTO

요청 DTO, 응답 DTO, status, error code, 권한 조건으로 고정합니다.

03 데이터 규칙

entity · relation · transaction

소유권, 상태 전이, unique 제약, 삭제 정책을 저장 경계로 정합니다.

04 품질 기준

acceptance · test · audit

성능, 보안, 감사 로그, 장애 대응을 완료 조건과 테스트에 넣습니다.

회원가입

요구이메일로 계정 생성
API 계약POST /auth/signup, 201, conflict
데이터 기준email unique, password hash
품질 기준validation, rate limit, audit

프로젝트

요구소유자가 프로젝트 생성
API 계약POST /projects, owner guard
데이터 기준ownerId, member relation
품질 기준권한 테스트, 삭제 정책

협업 편집

요구여러 사용자가 실시간 수정
API 계약WebSocket event, ack, error
데이터 기준document version, transaction
품질 기준latency, conflict handling

OpenAPI

요청, 응답, 오류가 문서와 구현에서 같은 이름으로 유지됩니다.

DTO / Guard

검증 규칙과 권한 조건이 controller 경계에서 먼저 드러납니다.

Entity / Migration

저장 규칙은 relation, index, transaction으로 검증됩니다.

E2E 기준

성공, 실패, 권한, 성능 조건이 테스트의 완료 기준이 됩니다.