Project brief
프로젝트 내용
[프로젝트 개요]
- 카페24로 구축해 둔 홈페이지 프로토타입을, 고객이 온라인으로 자가품질검사를 의뢰하고 진행상태를 조회하며 확정된 성적서를 이메일·우편·방문으로 수령할 수 있는 운영용 시스템으로 고도화합니다. 고객용 반응형 웹 화면, 관리자 백오피스, 식품규격·시험항목 마스터, DB가 범위이며 기존 디자인·메뉴·콘텐츠·코드 중 재사용 가능한 부분은 최대한 활용합니다.
- 모바일 네이티브 앱, 온라인 PG 결제, 전자세금계산서 발급 API, 배송추적 API, 법령사이트 자동수집, 시스템 내 성적서 생성 및 전자직인, 정식 회원가입과 마이페이지는 이번 범위에서 제외합니다.
[클라이언트 소개]
- 식품분야 시료 분석 서비스를 제공하는 기관입니다. 이번 시스템은 외부 고객이 직접 분석을 의뢰하고 조회하는 고객용 서비스이며, 동시에 접수·분석·정산·전달을 처리하는 내부 관리자 업무 시스템입니다. 국가 과제 예산으로 집행하는 사업이라 세금계산서 발행이 가능한 사업자와 계약합니다.
- 개발 지식: 센터 내부에 개발인력이 없습니다.
[프로젝트 배경 및 목표]
- 지금 상황: 프로토타입은 주요 화면과 양식 다운로드 방식의 의뢰 절차까지만 구현되어 있습니다. 고객은 양식을 내려받아 작성해야 하고, 접수 이후의 진행상태 확인과 성적서 전달은 시스템 밖에서 처리됩니다. 아직 대외 오픈 전이라 이관할 회원·의뢰·개인정보 데이터는 없습니다. 국가 과제 예산 집행 일정과 연동되어 있어 일정 안에 마무리하는 것이 중요합니다.
- 끝나면 이렇게 되기를 바랍니다: 고객이 홈페이지 안에서 의뢰서를 작성하고 접수번호로 진행상태를 확인할 수 있게 됩니다. 저희가 가장 우선하는 것은 의뢰 접수에서 그치지 않고 분석·정산·성적서 전달까지의 관리 기능이 홈페이지 안에서 함께 돌아가는 것입니다.
- 다만 이런 점이 우려됩니다: 무리한 범위로 계약한 뒤 일정 내 완료하지 못하는 상황을 가장 경계하고 있습니다. 검수와 세금계산서 발행까지 마쳐야 하는 날짜가 고정되어 있어 일정이 빠듯하다는 점을 인지하고 있으며, 주 개발자 한 명에게 일정이 걸려 있는 구조라면 변동이 생겼을 때 대응할 방법이 없다고 보고 있습니다. 그래서 문서에 적은 기능을 모두 담기보다 우선순위에 따라 실현 가능한 범위를 제안받는 편을 선호합니다.
[필수 과업 범위와 결과물]
1. 수행 범위
- 상세 기획: 착수 후 1주 이내 기존 프로토타입을 기술진단하고 결과를 문서로 공유한 뒤 최종 개발범위를 확정합니다. 진단 항목은 프로그램 구조, PHP·MySQL 버전, CMS·Framework 사용 여부, 재사용 가능범위, 보안상 수정 필요 부분, 서버 변경 필요성입니다.
- UI·UX 디자인: 프로토타입에 초안 수준의 디자인과 메뉴가 잡혀 있어 신규 디자인 작업은 최소화합니다. 신규 화면과 관리자 화면에 필요한 범위만 진행합니다.
- SW 개발: 고객용 반응형 웹, 관리자 백오피스, 마스터 관리, DB 구축
- 인프라 구축·배포: 카페24 환경 유지를 전제로 하되, 서버 변경이 필요하면 근거와 추가비용·이전범위를 함께 제시해 주세요.
- 데이터 이관: 이관 대상 고객 데이터는 없습니다. 센터가 제공하는 식품규격·시험항목 Excel 원본의 최초 마스터 일괄등록 작업이 이관에 해당합니다.
- 테스트·QA: 개발 완료 후 일괄 검수가 아니라 10월 중순부터 완성된 기능 단위로 순차 검수하는 방식을 선호합니다. 이를 반영한 단계별 개발·검수계획을 제안해 주세요.
- 유지보수: 하자보수 기간과 무상·제외 범위, 대응시간과 처리절차, 하자보수 종료 후 월정액과 건별 비용을 구분해 제시해 주세요.
2. 상세 기능 요구 사항
** 화면 단위 상세 정의와 항목별 우선순위 표기는 첨부된 제안요청서에 있습니다. 아래 괄호 안 순위는 그 문서의 우선순위
와 같습니다.
2-1. 고객 화면 (PC·태블릿·모바일 반응형 웹)
- 온라인 분석의뢰서 작성: 의뢰기관·의뢰자 정보와 연락처, 시료명·시료종류·시료수량, 검사 업무구분, 식품유형 또는 적용 식품규격, 시험항목, 기타 요청사항 입력 (1순위 / 의뢰 1건당 시료 1개·복수 시험항목 기준, 시료 식별자를 분리한 확장 가능 데이터 구조)
- 성적서 발급 옵션 입력: 언어 국문·영문·국영문 선택, 발급 부수, 수령방법 이메일·우편·방문 복수 선택, 우편 선택 시 수령인·연락처·우편번호·주소 입력 (1순위)
- 세금계산서 발행요청: 발행 여부와 발행정보 입력 (1순위)
- 첨부파일 업로드: 의뢰 1건 합계 최대 20MB·최대 5개, 허용 확장자·MIME Type·용량 검증 및 실행파일 차단 (1순위)
- 비회원 진행조회: 접수번호와 이메일 입력 후 일회용 인증번호 또는 조회링크로 본인확인, 분석·정산·전달상태와 이메일 발송일시·우편 등기번호·방문수령 가능일 조회 (1순위 / 성적서 직접 다운로드 미제공)
- 보완자료 제출: 보완요청 상태에서 이메일 인증 후 보완내용·첨부파일 추가 제출, 최초 제출내용은 수정하지 않고 별도 이력으로 적재 (1순위)
2-2. 관리자 백오피스 (PC 우선, 기본적인 태블릿 대응)
- 의뢰 접수관리: 전체 의뢰목록과 접수번호·기관명·의뢰자·시료명·상태·담당자 검색, 기간·상태·담당자별 필터 (1순위)
- 분석 진행관리: 분석담당자 배정·변경, 분석상태 관리(접수·검토중·보완요청·보완완료·분석중·분석완료), 보완요청 등록과 보완자료 확인 (1순위)
- 성적서 등록·전달: 확정 PDF 업로드 후 수신정보·파일 확인 → 관리자 발송 실행 → 이메일 첨부발송 및 이력기록, 우편 발송일자·등기번호 입력, 방문수령 안내와 수령 완료 처리, 수령방법별 상태 개별 관리 (1순위 / 업로드 즉시 자동발송 금지)
- 정산상태 관리: 입금확인, 세금계산서 발행요청·처리중·발행완료 상태관리, 사전 승인 거래처의 관리자 예외승인과 승인자·승인일시·승인사유 기록, 성적서 전달 가능 여부 표시 (1순위)
- 내부 운영 편의: 고객 공개용 안내와 관리자 내부메모 구분, 의뢰목록 Excel 다운로드, 업무변경 이력과 변경 전후값 조회 (2순위)
2-3. 식품규격·시험항목 마스터
- 마스터 데이터 구조: 검사 업무구분(자가품질검사 / 향후 일반 이화학 분석), 식품군·식품유형·적용 식품규격, 시험항목 코드·명·사용여부·표시순서, 식품유형과 시험항목 매핑, 의무·선택 구분과 관리자 비고 (2순위 / 업무구분과 시험항목을 자가품질검사 화면에 하드코딩하지 않는 확장 구조)
- 시험항목 자동 불러오기: 식품규격 선택 시 대상 시험항목 일괄 조회, 의무항목 삭제 불가·선택항목 추가 가능 (2순위 / Excel VLOOKUP과 유사한 마스터 조회방식)
- 관리자 마스터 운영: 직접 등록·수정·사용중지, 접수검토 단계에서 시험항목 최종 확인과 사유 기록 후 조정 (2순위)
- 초기 마스터 일괄등록: 센터 제공 Excel 원본 기준 최초 데이터 등록 (2순위 / 수량은 착수 후 원본으로 확정)
- 접수 시점 스냅샷 보존: 마스터가 변경되어도 기존 의뢰의 접수 당시 규격·시험항목 유지 (2순위 범위에도 적용)
- 마스터 고도화: 적용일자·버전 관리, 관리자 Excel 업로드 일괄등록·수정, 양식오류 검증과 오류내용 안내, 변경 전후 이력과 변경자·일시·사유 기록 (3순위)
2-4. 이메일 발송 및 성적서 파일 관리
- 접수번호 자동발번: 외부에서 추측하기 어렵고 중복되지 않는 번호 채번 (1순위)
- 자동 이메일 발송: 접수완료·보완요청·방문수령 가능안내·성적서 발송 메일 (1순위 / 템플릿 관리와 기본 문구 수정 2순위)
- 발송 이력과 재발송: 발송일시·수신주소·외부 메일서비스 접수 성공·거부·반송 결과 이력, 실패·반송 건 관리자 확인 및 재발송 (1순위)
- 발신도메인 인증: SPF·DKIM 적용과 스팸 분류 최소화 (1순위 / 카페24 기본 메일 또는 외부 메일 발송서비스 기준 검토)
- 성적서 임시보관·삭제: 임시보관 기간과 삭제예정일 설정·확인, 삭제대상 조회와 관리자 일괄삭제, 삭제 후 재발송이 필요한 경우 파일 재등록 절차 (1순위)
- 자동삭제 처리: 설정 일정에 따른 자동삭제와 결과 기록, 발송실패·반송 시 삭제 유예, 자동삭제 실패 확인과 재처리 (2순위)
2-5. 계정·권한 및 보안
- 개인별 관리자계정: 공용 관리자계정 미사용, 전체관리자의 계정 생성·정지와 역할 부여·변경·회수 (1순위)
- 고정 역할 3종: 전체관리자 / 분석담당자 / 경영지원 역할별 접근범위 구분 (1순위 / 조회전용 역할 추가 2순위, 메뉴·기능 단위 세부 권한 매트릭스와 변경 전후값 전체 기록 3순위)
- 중요 이력 기록: 로그인, 상태변경, 담당자 변경, 시험항목 조정, 첨부파일 열람, 성적서 등록·발송·삭제, 입금확인, 세금계산서 처리, 예외승인, 권한변경 (1순위)
- 파일 접근통제: 고객 첨부파일과 성적서의 직접 URL 접근 차단, 권한 있는 관리자만 열람, 전 구간 HTTPS, 관리자 비밀번호 암호화 저장 (1순위)
- 개인정보 처리: 수집·이용 동의, 우편수령 정보의 수집목적·보관기간·파기정책 반영, 정기 백업 주기·보관기간과 복구절차 제시 (1순위 / 동의이력 기록, 보관기간 경과 자동파기와 결과 기록, 운영·개발 환경 분리 2순위)
- 파일 저장정책: 고객 첨부파일은 처리완료일로부터 12개월 경과 시 내부보관 후 서버에서 삭제, 삭제대상 목록 조회와 일괄처리, 내부 NAS는 실시간 저장소로 연결하지 않음 (1순위)
3. 결과물
- 착수 후 1주 이내 기술진단 결과 문서
- 확정 요구사항 정의서, 최종 기능목록과 화면목록
- 전체 소스코드와 소스관리 저장소 전체 이력의 인계본 (발주사 소유)
- 데이터베이스 구조와 백업파일
- 관리자계정과 권한목록
- 외부서비스 및 라이선스 목록
- 서버·배포·백업·복구 매뉴얼
- 관리자 운영매뉴얼
- 테스트 시나리오·결과와 사용자검수 결과를 포함한 통합 검수보고서
- 완료보고서와 하자보수 연락체계
- 협의 산출물(상세 업무 Workflow, 식품규격·시험항목 Excel 업로드 양식, 추가 설계서 또는 API 문서)은 과제 정산에 필요한 범위를 확인한 뒤 착수회의에서 확정합