기술 설계 · 양식
에러 코드 정의서 양식
서비스 전체에서 쓰는 에러 코드 체계를 한곳에 고정해, API·배치·화면이 같은 코드를 같은 뜻으로 쓰게 한다.
이럴 때 써요
- API 명세서마다 에러 코드를 따로 정의해 같은 상황을 다른 코드로 표현할 때
- 연동 파트너에게 에러 코드 전체 목록을 계약 문서로 내줘야 할 때
- 장애 원인을 코드만 보고 바로 좁혀야 할 때
양식 구성
6개 절로 이루어져 있습니다.
- 문서 정보
- 버전 · 서비스 · 관련 문서 · 작성자 · 검토자 · 승인자 · 최종 수정일
- 1 코드 체계 규칙
- 접두어만 보고도 어느 영역의 에러인지 알 수 있게 규칙을 먼저 정합니다.
- 2 공통 에러 코드
- 여러 도메인이 함께 쓰는 코드를 먼저 정한다. 같은 상황에 코드가 둘이 생기지 않게 한다.
- 3 도메인별 에러 코드
- 도메인별 코드는 발생 조건과 재시도 가능 여부까지 적는다. 재시도 여부를 모르면 클라이언트가 무한 재시도를 한다.
- 4 로그 · 모니터링 연계
- 어떤 코드가 뜨면 사람을 불러야 하는지 정한다. 전부 알림으로 두면 아무도 안 본다.
- 5 변경 이력
- 코드의 뜻이 바뀌면 남긴다. 뜻만 조용히 바꾸면 옛 로그 분석이 전부 틀어진다.
바로 써 보기
로그인 없이 바로 쓸 수 있습니다. 다 쓰면 PDF·Word·한글(HWPX)·Markdown 으로 내보냅니다.
기술 설계 단계의 다른 양식
- 상태 전이도 — 상태와 전이 규칙, 금지 전이와 알림 발송까지 표로 확정한다.
- 아키텍처 다이어그램 — 서버·DB·연동 구성 등 시스템 아키텍처를 외부 도구에서 그린 그대로 붙여 보관한다.
- 도메인 모델 정의서 — 엔티티·관계·상태를 개발자 기준으로 정의한다. 엔티티가 수십 개로 늘어도 모듈로 나눠 훑을 수 있게 한다.
- 데이터 정의서 — 화면·API 가 공통으로 참조하는 필드의 타입·정의·허용값을 한곳에 고정한다.
- 기술 설계서 (Tech Spec) — 아키텍처, 데이터 모델, API 설계를 개발 착수 전에 합의한다.
- API 명세서 — 엔드포인트별 요청·응답, 공통 에러 코드와 인증 규칙을 계약 수준으로 명세한다.
- 배치 정의서 — 정기적으로 도는 배치·스케줄러 작업의 주기, 처리 로직, 실패 시 대응을 한곳에 정의한다.
- 연동 명세서 — 외부 시스템(파트너사·택배사·PG 등)과 주고받는 데이터의 방식·필드·인증·에러 처리를 계약 수준으로 명세한다.