기획에서 작업까지
입력
- 아이디어·요구사항
- 관리자 화면의 주문 목록을 지금 보이는 검색 조건 그대로 CSV 파일로 내려받게 해 주세요. 정산 담당자가 화면을 보고 엑셀에 옮겨 적는 일이 많습니다.
결과
기획 요약
정산 담당자의 수기 정산 작업 부담을 줄이고 데이터 정확도를 높이기 위해 관리자 화면의 주문 목록을 검색 조건 그대로 CSV 파일로 다운로드하는 기능을 제공합니다. 대용량 비동기 생성이나 맞춤형 컬럼 설정 등은 안정적인 기본 파일 추출 기능 구축을 위해 이번 범위에서 제외했습니다.
- 포함: 관리자 주문 목록 CSV 다운로드 UI 및 중복 요청 방지, 검색 필터 일치 전체 주문 데이터 조회, UTF-8(BOM) 인코딩 CSV 파일 생성 및 브라우저 다운로드 연동, 생성 일시 기반 파일 명명 규칙 적용
- 제외: CSV 외 타 파일 형식(XLSX, PDF 등) 지원, 다운로드 컬럼 맞춤 설정, 백그라운드 파일 생성 및 이메일 발송, 외부 정산 시스템 자동 연동
- 가정: 주문 목록 조회 권한 계정은 CSV 다운로드 권한을 보유하며, 엑셀 호환을 위해 UTF-8(BOM) 인코딩을 적용함
작업 6개, 예상 공수 합계 9.5일입니다.
기능 명세
| 번호 | 기능 | 수용 기준 | 우선순위 |
|---|---|---|---|
| F1 | 주문 목록 CSV 다운로드 UI 및 요청 제어 | 주문 목록 화면 상단에 [CSV 다운로드] 버튼 노출; 버튼 클릭 즉시 버튼 비활성화 및 로딩 상태 UI 표시; 다운로드 완료 또는 실패 시 버튼 활성화 복구; 처리 중 중복 클릭 차단 | 필수 |
| F2 | 검색 조건 기반 대상 주문 데이터 조회 | 현재 화면에 적용된 기간·주문상태 등 모든 활성 검색 필터를 조회 조건으로 반영; 페이지네이션과 무관하게 조건에 부합하는 전체 주문 레코드 조회; 검색 결과 0건 시 안내 알림 노출 및 파일 생성 중단; 서버 조회 오류 발생 시 안내 메시지 노출 | 필수 |
| F3 | UTF-8(BOM) CSV 파일 생성 및 브라우저 다운로드 연동 | 엑셀 한글 깨짐 방지를 위해 파일 선두에 UTF-8 BOM 포함; 쉼표·따옴표·줄바꿈 등 특수문자에 표준 CSV 이스케이프 처리; 생성 완료 즉시 브라우저 로컬 다운로드 연동 | 필수 |
| F4 | 다운로드 파일 명명 규칙 적용 | 파일 생성 일시가 포함된 사전 정의 파일명 패턴 자동 적용; 파일 확장자 .csv 정상 부여; 파일명 내 사용 불가 특수문자 배제 | 필수 |
작업 분해
| 번호 | 작업 | 담당 역할 | 예상 공수(일) | 선행 작업 | 관련 기능 |
|---|---|---|---|---|---|
| T1 | CSV 데이터 컬럼 구성 및 파일 명명 포맷 확정 | 기획 | 1 | — | F3, F4 |
| T2 | 검색 조건 기반 전체 주문 데이터 조회 로직 구현 | 백엔드 | 2 | — | F2 |
| T3 | UTF-8 BOM CSV 생성 및 스트리밍 다운로드 API 구현 | 백엔드 | 2 | T1, T2 | F2, F3, F4 |
| T4 | 주문 목록 내 다운로드 버튼 및 로딩/중복방지 UI 구현 | 프론트엔드 | 1.5 | — | F1 |
| T5 | CSV 다운로드 API 연동 및 파일 수신·예외 처리 | 프론트엔드 | 1.5 | T3, T4 | F1, F3, F4 |
| T6 | 주문 검색 조건별 CSV 추출 및 대용량/한글 인코딩 통합 테스트 | QA | 1.5 | T5 | 공통 |
| 합계 | 9.5 |
위험·확인 사항
1/4 충족
- 미충족: CSV 추출 대상 세부 컬럼 항목 정의 미정
제안: 개발 착수 전 정산 업무에 필수적인 주문번호, 결제금액, 정산금액, 수수료, 결제일시 등을 포함한 컬럼 명세를 확정 필요
- 미충족: 주문자 개인정보(이름, 연락처, 주소) 마스킹 처리 여부 및 보안 기준 미정
제안: 사내 개인정보 보호 정책에 따라 정산용 다운로드 파일 내 마스킹 적용 수준 및 감사 로그 적재 여부를 보안 담당자와 협의 필요
- 미충족: 1회 다운로드 가능한 최대 건수(Row Limit) 미정으로 인한 서버 메모리 부하 위험
제안: 서버 안정성을 위해 1회 다운로드 최대 건수(확인 필요)를 지정하고, 스트리밍 방식으로 메모리 점유를 최소화하도록 백엔드 설계 진행
- 충족: 다운로드 권한 세분화(슈퍼 관리자 vs 일반 운영자) 필요 여부 미정
주문 목록 화면 조회 권한 보유 시 다운로드 권한도 함께 보유하는 가정을 적용하며, 차등 권한 필요 시 추후 분리 검토