전체 개발 안내서
1. 서비스 개요
서비스 한 줄 설명
생활도자 공방의 대표 운영자와 보조 강사가 작품 번호 하나로 작품의 주인, 사진, 제작 단계, 선반 칸, 다음 가마 후보와 회원권 잔여 횟수를 관리하고, 회원은 웹에서 자기 작품의 진행 상태와 예상 완성 시점을 확인하는 서비스입니다.
서비스 형태
- 웹 기반 월 구독형 서비스
- 운영자 화면과 회원 전용 화면 제공
- Next.js 기반 반응형 웹으로 개발
- 휴대전화와 PC 브라우저에서 사용
- 모바일 앱 설치나 앱 스토어 등록은 전제하지 않음
- 공방 회원은 별도 비용 없이 자기 작품을 조회
첫 검증 환경
| 항목 | 기준 |
|---|---|
| 첫 검증 공방 | 고양시 생활도자 공방 |
| 운영 인력 | 대표 운영자 1명, 보조 강사 1명 |
| 월 정기 회원 | 약 40명 |
| 월 작품 수 | 약 130점 |
| 검증 기간 | 3개월 |
| 현재 작품 문의 | 주 약 20건 |
| 주인을 바로 찾지 못하는 작품 | 월 2~3회 |
2. 핵심 고객과 역할
대표 운영자
공방 전체 설정과 작품·회원 운영을 담당합니다.
- 보조 강사 계정 등록
- 공정별 선반과 선반 칸 설정
- 단계별 기본 소요 기간 설정
- 회원 및 회원권 관리
- 작품 등록·수정
- 여러 작품의 단계 및 위치 일괄 변경
- 다음 가마 후보 선택
- 변경 이력 확인
보조 강사
현장에서 작품 정보를 등록하고 갱신합니다.
- 회원 선택
- 작품 번호, 사진, 단계, 선반 칸 등록
- 작품 번호 검색
- 단계 및 위치 변경
- 여러 작품 일괄 변경
- 회원권 잔여 횟수 확인 및 수동 변경
별도의 승인 담당자는 두지 않습니다. 대표 운영자와 보조 강사의 변경 내용은 모두 이력으로 남깁니다.
공방 회원
자기 작품만 조회합니다.
- 작품 사진 확인
- 현재 진행 단계 확인
- 예상 완성 시점 확인
- 완성 여부 확인
- 자기 회원권 잔여 횟수 확인 여부는 첫 운영 후 결정
첫 개발에서는 회원이 작품이나 메모를 직접 등록하거나 수정하지 않습니다.
3. 해결할 문제와 사용자 목표
현재 문제
- 작품이 3~4주 동안 여러 선반과 공정을 이동합니다.
- 포스트잇이 지워지거나 떨어지면 작품 주인을 찾기 어렵습니다.
- 초벌 대기와 재벌 대기 작품을 눈으로 세고 있습니다.
- 작품 크기와 높이를 선반 사진으로 비교해 다음 가마 작품을 고릅니다.
- 회원은 카카오톡으로 예상 완성 시점을 반복 문의합니다.
- 월 정기권, 10회권, 유효기간과 할인을 엑셀에서 관리해 실수가 생깁니다.
- 흙값과 유약값을 별도로 받아야 하지만 자주 빠뜨립니다.
운영자가 달성할 목표
- 작품 번호로 주인, 사진, 단계와 선반 칸을 즉시 찾습니다.
- 작품 이동 시 단계와 선반 칸을 함께 갱신합니다.
- 초벌 대기와 재벌 대기 작품 수를 따로 확인합니다.
- 여러 작품을 한꺼번에 다음 단계로 변경합니다.
- 다음 가마 후보의 사진, 크기, 높이를 비교합니다.
- 회원 상세에서 회원권 잔여 횟수와 유효기간을 확인합니다.
회원이 달성할 목표
- 카카오톡으로 묻지 않고 자기 작품의 사진과 현재 단계를 확인합니다.
- 공방의 단계별 소요 기간과 가마 예정일을 반영한 예상 완료일을 확인합니다.
- 작품이 완성됐는지 직접 확인합니다.
4. 첫 개발 범위
첫 개발에 포함
| 영역 | 포함 기능 |
|---|---|
| 접근 권한 | 대표 운영자·보조 강사 로그인, 회원 본인 확인 |
| 초기 설정 | 회원, 현재 작품, 공정별 선반, 선반 칸, 단계별 소요 기간 등록 |
| 작품 관리 | 작품 번호, 회원, 사진, 단계, 선반 칸, 크기, 높이 등록 |
| 작품 찾기 | 작품 번호와 회원명 검색, 단계별 목록과 상세 조회 |
| 변경 관리 | 단계 및 위치 변경, 변경 이력, 여러 작품 일괄 변경 |
| 대시보드 | 단계별 작품 수, 초벌·재벌 대기 수, 다음 가마 후보, 회원권 정보 |
| 가마 후보 | 초벌·재벌 후보 분리, 작품 사진·크기·높이·선반 사진 비교 |
| 회원 관리 | 회원 등록, 월 정기권·10회권, 잔여 횟수, 유효기간 |
| 회원 웹 조회 | 자기 작품의 사진, 현재 단계, 예상 완료일, 완성 여부 |
| 예상 완료일 | 단계별 소요 기간 자동 적용, 작품별 가마 예정일 우선 적용 |
첫 개발에서 제외
| 제외 기능 | 후속 처리 방향 |
|---|---|
| 가마 채움 비율 자동 계산 | 가마 용량과 작품 부피 기준을 정한 뒤 추가 |
| 가마 내부 배치도 | 가마 선반 층과 적재 위치 관리 기능으로 확장 |
| 가마 회차와 소성 기록 | 점화·냉각·가마 개방·검수까지 관리하도록 확장 |
| 흙값·유약값과 수납 여부 | 사용량, 금액, 계좌이체 수납 기록 기능으로 추가 |
| 서비스 안에서 실제 결제 | 첫 개발에 포함하지 않음 |
| 파손·분실·재제작 처리 | 문제 유형, 사진, 회원 안내와 처리 결과 기록으로 추가 |
| 자동 완성 알림 | 웹 조회 검증 후 추가 |
| 카카오톡 알림톡 | 사업자 채널과 알림톡 템플릿 준비 후 추가 |
| 공방 구독료 자동 결제 | 주변 공방의 유료 전환 검증 후 추가 |
첫 개발의 다음 가마 화면은 후보 작품을 고르는 기능까지만 제공합니다. 가마 채움 비율, 적재 위치, 점화와 냉각 관리는 포함하지 않습니다.
5. 작품 관리 기준
5.1 작품 번호 규칙
작품 번호는 젖은 작품의 굽 바닥에 새깁니다. 시스템에서는 작품 번호와 회원을 연결합니다.
기본 형식
- 제작 연도 두 자리
- 제작 월 두 자리
- 해당 월의 순번
- 최대 일곱 자
예시:
2608-01
2608-02
2608-99
월 작품 수가 100점을 넘을 수 있으므로 100번째부터는 하이픈을 제외합니다.
2608100
2608101
2608130
이 방식은 숫자만 사용하면서 제작 월과 순번을 유지하고, 일곱 자 제한도 지킵니다.
시스템 처리 규칙
- 작품 번호는 자동 제안하되 운영자가 수정할 수 있습니다.
- 같은 공방 안에서는 중복을 허용하지 않습니다.
- 다른 공방끼리는 같은 작품 번호를 사용할 수 있습니다.
- 검색할 때 하이픈 유무를 모두 처리합니다.
- 번호를 정정하면 이전 번호, 새 번호, 변경자와 변경 시각을 남깁니다.
- 번호를 삭제하고 새 작품을 만드는 방식으로 정정하지 않습니다.
5.2 첫 개발의 작품 단계
운영자가 사용하는 기본 단계는 다음과 같습니다.
건조
→ 초벌 대기
→ 초벌 완료
→ 시유
→ 재벌 대기
→ 완성
완성은 재벌과 검수를 마치고 회원이 수령할 수 있는 상태입니다.
회원에게 보이는 표현
| 운영 단계 | 회원 화면 표시 |
|---|---|
| 건조 | 건조 중 |
| 초벌 대기 | 초벌 소성 대기 |
| 초벌 완료 | 초벌 완료 |
| 시유 | 시유 중 |
| 재벌 대기 | 최종 소성 대기 |
| 완성 | 완성 · 수령 가능 |
단계 변경 규칙
- 기본적으로 바로 다음 단계로 이동합니다.
- 이전 단계로 되돌릴 때는 정정 사유가 필요합니다.
- 초벌 대기 작품은 초벌 후보에만 넣을 수 있습니다.
- 재벌 대기 작품은 재벌 후보에만 넣을 수 있습니다.
- 초벌 작품과 재벌 작품은 같은 후보 목록에 섞지 않습니다.
- 완성 작품도 실제 보관 중이라면 완성품 선반 칸을 기록합니다.
- 현재 값만 수정하지 않고 모든 변경 내용을 이력으로 남깁니다.
5.3 선반과 선반 칸
선반 위치는 공정별 선반과 칸 번호로 기록합니다.
예시:
초벌 대기 · 2번 선반 · 1칸
재벌 대기 · 1번 선반 · 3칸
완성품 · 3번 선반 · 2칸
선반 설정 정보
- 공정 구분
- 선반 이름 또는 번호
- 선반 칸 번호
- 사용 여부
- 현재 선반 사진
- 메모
위치 규칙
- 작품 단계에 맞는 선반 칸만 선택할 수 있습니다.
- 단계와 선반이 다르면 저장을 막고 올바른 선반을 안내합니다.
- 같은 단계 안에서 선반 칸만 옮길 수 있습니다.
- 선반 칸 이동도 별도 이력으로 남깁니다.
- 작품이 남아 있는 선반이나 선반 칸은 삭제할 수 없습니다.
- 삭제하려면 해당 작품을 다른 선반 칸으로 먼저 이동해야 합니다.
5.4 작품 크기와 높이
첫 등록에서는 빠른 입력을 위해 크기와 높이를 선택 입력으로 둡니다. 다만 다음 가마 후보로 선택하려면 입력이 필요합니다.
- 최대 폭
- 높이
- 단위는 cm
- 작품 사진
- 필요한 경우 크기 비교용 메모
다음 가마 후보 화면에서는 작품 사진, 최대 폭, 높이, 현재 선반 칸과 선반 사진을 함께 보여줍니다.
6. 예상 완료일 계산
6.1 설정값
대표 운영자가 공방 작업 기준 설정에서 단계별 기본 소요 기간을 입력합니다.
- 건조에 필요한 일수
- 초벌 대기 예상 일수
- 초벌 완료 후 시유까지의 일수
- 시유에 필요한 일수
- 재벌 대기 예상 일수
- 재벌 후 검수까지의 일수
첫 검증 공방의 실제 작업 주기에 맞춰 설정하며, 임의의 기본값을 강제하지 않습니다.
6.2 계산 순서
가마 예정일이 없는 작품
현재 단계에 들어온 날짜에 남은 단계의 기본 소요 기간을 더합니다.
예상 완료일
= 현재 단계 시작일
+ 현재 단계의 남은 기간
+ 이후 단계의 기본 소요 기간 합계
가마 예정일이 있는 작품
작품에 입력된 가마 예정일을 먼저 적용하고, 가마 이후 남은 단계의 기간을 더합니다.
예시:
- 현재 단계: 재벌 대기
- 재벌 예정일: 9월 10일
- 재벌 후 검수 기간: 공방 설정값
이 경우 9월 10일을 기준으로 예상 완료일을 다시 계산합니다.
재계산 시점
다음 상황에서 예상 완료일을 다시 계산합니다.
- 작품 단계가 변경됨
- 가마 예정일이 입력되거나 변경됨
- 공방의 단계별 기본 소요 기간이 변경됨
- 작품의 예상 완료일이 운영자에 의해 정정됨
운영자 화면과 회원 화면은 같은 계산 결과를 사용해야 합니다.
회원 화면 표시
날짜는 확정일이 아니라 예상일임을 표시합니다.
예상 완료일 · 2026년 9월 18일
가마 일정과 건조 상태에 따라 달라질 수 있어요.
예상일이 지났지만 작품이 완성되지 않았다면 운영자 화면에는 확인 대상으로 표시하고, 회원 화면에는 일정 확인 중을 표시합니다.
7. 주요 이용 순서
7.1 첫 도입
- 대표 운영자가 로그인합니다.
- 공방 이름과 기본 정보를 등록합니다.
- 건조·초벌 대기·초벌 완료·시유·재벌 대기·완성 선반을 등록합니다.
- 각 선반의 선반 칸을 등록합니다.
- 단계별 기본 소요 기간을 입력합니다.
- 보조 강사 계정을 등록합니다.
- 현재 활동 중인 회원과 회원권을 등록합니다.
- 공방에 실제 보관 중인 작품을 등록합니다.
- 작품 수와 실제 선반 수량을 대조합니다.
- 누락된 위치나 중복 번호가 없으면 운영을 시작합니다.
가정: 첫 파일럿에서는 과거 수령 완료 작품을 제외하고, 현재 공방에 보관 중인 작품을 모두 등록합니다.
7.2 새 작품 등록
- 운영자가 회원을 검색하거나 선택합니다.
- 시스템이 다음 작품 번호를 제안합니다.
- 운영자가 굽 바닥에 번호를 새깁니다.
- 작품 사진을 촬영합니다.
- 현재 단계를 선택합니다.
- 해당 단계에 연결된 선반과 선반 칸을 선택합니다.
- 필요하면 최대 폭과 높이를 입력합니다.
- 저장 후 작품 상세를 확인합니다.
완료 조건은 작품 번호로 검색했을 때 주인, 사진, 단계와 선반 칸이 모두 나오는 것입니다.
7.3 작품 찾기와 이동
- 운영자가 작품 번호를 입력합니다.
- 작품의 주인, 사진, 현재 단계와 선반 칸을 확인합니다.
- 다음 단계와 이동할 선반 칸을 선택합니다.
- 저장 전 마지막 수정 내용을 확인합니다.
- 단계와 위치를 함께 갱신합니다.
- 변경자와 변경 시각을 이력에 남깁니다.
7.4 여러 작품 한꺼번에 변경
- 단계별 작품 목록에서 작품을 여러 개 선택합니다.
- 새 단계와 새 선반 칸을 지정합니다.
- 저장 전에 작품별 변경 가능 여부를 검사합니다.
- 가능한 작품은 변경합니다.
- 실패한 작품은 번호와 실패 이유를 따로 보여줍니다.
예시:
변경 성공 12점
변경 실패 2점
2608-31 · 다른 사용자가 먼저 수정함
2608-42 · 선택한 선반 칸이 재벌 대기 단계와 맞지 않음
7.5 다음 가마 후보 선택
- 초벌 또는 재벌 탭을 선택합니다.
- 대기 작품의 사진, 크기, 높이와 위치를 확인합니다.
- 현재 선반 사진과 비교합니다.
- 다음 가마 후보를 선택합니다.
- 필요한 경우 작품별 가마 예정일을 입력합니다.
- 선택 목록을 저장합니다.
후보 선택만으로 작품 단계는 바뀌지 않습니다. 실제 소성 후 운영자가 일괄 변경합니다.
7.6 회원의 작품 확인
- 회원이 공방 전용 웹 주소에 접속합니다.
- 본인 확인 후 로그인합니다.
- 자기 작품 목록을 확인합니다.
- 작품을 선택해 사진, 단계와 예상 완료일을 봅니다.
- 완성 작품은
완성 · 수령 가능으로 확인합니다.
8. 화면 구성
메인 화면은 운영자 대시보드와 같습니다.
| 화면 | 주소 예시 | 사용 목적과 핵심 구성 | 완료 조건 |
|---|---|---|---|
| 로그인과 회원 본인 확인 | /login, /s/[공방]/login | 대표·보조 강사 로그인, 회원 본인 확인 | 역할에 맞는 화면으로 이동 |
| 초기 설정 | /setup | 공방, 사용자, 선반, 소요 기간, 회원, 현재 작품 등록 | 필수 설정 누락 없이 운영 시작 |
| 운영자 대시보드 | /app | 작품 번호 검색, 단계별 수, 초벌·재벌 대기 수, 다음 가마 후보, 회원권 요약 | 한 화면에서 오늘 처리할 업무를 선택 |
| 단계별 작품 목록 | /app/works | 단계·선반·회원 필터, 사진과 위치, 여러 작품 선택 | 원하는 작품을 찾거나 일괄 변경 시작 |
| 작품 등록 | /app/works/new | 번호, 회원, 사진, 단계, 선반 칸, 크기, 높이 입력 | 검색 가능한 작품 생성 |
| 작품 상세·수정 | /app/works/[id] | 주인, 사진, 단계, 위치, 예상 완료일, 이력 | 현재 위치와 다음 행동 확인 |
| 여러 작품 변경 | /app/works/bulk | 선택 작품 검토, 단계·선반 칸 일괄 변경 | 성공·실패 결과 구분 |
| 다음 가마 후보 비교 | /app/kiln-candidates | 초벌·재벌 분리, 사진·크기·높이·선반 사진 비교 | 초벌과 재벌을 섞지 않고 후보 저장 |
| 회원 목록 | /app/members | 이름, 연락처, 회원권 종류, 잔여 횟수, 유효기간 | 회원을 빠르게 조회 |
| 회원 상세 | /app/members/[id] | 작품 목록, 회원권, 잔여 횟수 변경 이력 | 회원 작품과 이용권 상태 확인 |
| 공방 작업 기준 설정 | /app/settings/workflow | 선반, 선반 칸, 단계별 소요 기간 | 유효한 위치와 날짜 계산 기준 설정 |
| 회원 전용 내 작품 | /s/[공방]/my-works | 자기 작품 사진, 현재 단계, 예상 완료일, 완성 여부 | 다른 회원 작품 없이 자기 작품만 확인 |
9. 화면별 상세 기준
9.1 운영자 대시보드
상단
- 작품 번호 검색창
- 새 작품 등록 버튼
- 회원 검색
- 최근 조회 작품
단계별 현황
- 건조
- 초벌 대기
- 초벌 완료
- 시유
- 재벌 대기
- 완성
각 항목에는 작품 수와 목록 이동 버튼을 표시합니다.
오늘 확인할 항목
- 위치가 등록되지 않은 작품
- 중복 또는 정정이 필요한 작품 번호
- 예상 완료일이 지났지만 완성되지 않은 작품
- 초벌 대기 작품 수
- 재벌 대기 작품 수
- 다음 가마 후보로 선택된 작품
- 잔여 횟수가 0회인 회원
- 유효기간이 가까운 순서의 회원권
완료 조건
운영자가 다른 문서나 엑셀을 열지 않고 다음 행동을 시작할 수 있어야 합니다.
- 작품 찾기
- 단계별 목록 열기
- 다음 가마 후보 확인
- 회원권 잔여 횟수 확인
9.2 단계별 작품 목록
필터
- 작품 단계
- 공정별 선반
- 선반 칸
- 회원명
- 작품 번호
- 초벌·재벌 후보 여부
- 예상 완료일 순서
작품 한 줄에 표시할 정보
- 작품 사진
- 작품 번호
- 회원명
- 현재 단계
- 현재 선반 칸
- 해당 단계에 머문 기간
- 예상 완료일
- 크기와 높이
- 선택 체크 상자
모바일에서는 사진, 번호, 단계와 위치를 먼저 보여주고 나머지는 펼쳐서 확인합니다.
9.3 작품 상세
상단 고정 정보
- 작품 사진
- 작품 번호
- 회원명
- 현재 단계
- 현재 선반 칸
- 예상 완료일
하단 정보
- 제작일
- 최대 폭과 높이
- 가마 후보 여부
- 가마 예정일
- 단계 변경 이력
- 선반 칸 변경 이력
- 번호 정정 이력
- 마지막 수정자와 수정 시각
빠른 행동
- 다음 단계로 이동
- 선반 칸만 변경
- 다음 가마 후보에 추가
- 작품 번호 정정
- 사진 추가
- 회원 상세 열기
9.4 회원 전용 내 작품 조회
목록 카드
- 대표 작품 사진
- 작품 번호
- 현재 단계
- 예상 완료일
- 완성 여부
상세 내용
- 큰 작품 사진
- 현재 진행 단계
- 전체 단계에서 현재 위치
- 예상 완료일
- 완성 여부
회원에게는 다음 정보를 노출하지 않습니다.
- 내부 선반 칸
- 다른 회원의 이름
- 보조 강사 메모
- 번호 정정 이력
- 다음 가마 후보 목록
- 회원권 내부 변경 이력
10. 회원권 관리 기준
관리 정보
- 회원권 종류: 월 정기권, 10회권
- 시작일
- 유효기간
- 전체 횟수
- 잔여 횟수
- 체험 후 등록 할인 메모
- 사용 여부
- 변경 이력
잔여 횟수 변경
예약이나 출석 기능이 첫 개발에 없으므로 자동 차감하지 않습니다.
운영자 또는 보조 강사가 회원 상세에서 직접 변경합니다.
변경 전 6회
변경 후 5회
사유: 8월 21일 수업 이용
변경자: 보조 강사
잘못 차감한 경우 횟수를 복구하고 복구 사유를 남깁니다.
첫 개발에서 하지 않는 일
- 계좌이체 확인 자동화
- 회원권 온라인 결제
- 흙값·유약값 계산
- 미납 알림
- 예약과 출석에 따른 자동 차감
11. 데이터 구조
모든 핵심 정보에는 공방 구분값을 저장합니다. 다른 공방의 회원, 작품과 사진이 섞이지 않아야 합니다.
| 데이터 | 주요 정보 |
|---|---|
| 공방 | 이름, 전용 주소, 사용 상태 |
| 사용자 | 공방, 이름, 역할, 로그인 정보, 사용 상태 |
| 회원 | 공방, 이름, 연락처, 회원 로그인 연결, 활동 상태 |
| 회원권 | 회원, 종류, 전체 횟수, 잔여 횟수, 시작일, 유효기간, 할인 메모 |
| 회원권 변경 이력 | 변경 전후 횟수, 사유, 변경자, 변경 시각 |
| 작품 | 공방, 작품 번호, 회원, 제작일, 현재 단계, 현재 선반 칸, 최대 폭, 높이, 예상 완료일, 가마 예정일 |
| 작품 사진 | 작품, 비공개 사진 주소, 대표 사진 여부, 등록자 |
| 공정 단계 | 단계 코드, 화면 표시명, 표시 순서 |
| 단계별 소요 기간 | 공방, 단계, 기본 일수 |
| 선반 | 공방, 공정 구분, 선반 이름·번호, 사진, 사용 여부 |
| 선반 칸 | 선반, 칸 번호, 사용 여부 |
| 단계 변경 이력 | 이전 단계, 새 단계, 변경자, 변경 시각, 정정 사유 |
| 위치 변경 이력 | 이전 선반 칸, 새 선반 칸, 변경자, 변경 시각 |
| 번호 정정 이력 | 이전 번호, 새 번호, 변경자, 변경 시각 |
| 다음 가마 후보 | 작품, 초벌·재벌 구분, 선택자, 선택일, 가마 예정일 |
| 회원 조회 기록 | 회원, 작품, 조회 시각 |
중복 방지
작품 번호의 중복 여부는 다음 두 값을 함께 검사합니다.
공방 구분값 + 작품 번호
다른 공방은 같은 2608-01을 사용할 수 있지만, 같은 공방에서는 두 번 사용할 수 없습니다.
빠른 조회 기준
다음 항목에는 검색용 색인을 적용합니다.
- 공방과 작품 번호
- 공방과 회원명
- 공방과 현재 단계
- 공방과 현재 선반 칸
- 회원과 작품
- 초벌·재벌 후보 구분
12. 접근 권한과 보안
로그인 방식
가정: 첫 개발에서는 다음 방식을 사용합니다.
- 대표 운영자와 보조 강사: 이메일 또는 휴대전화 번호와 비밀번호
- 회원: 휴대전화 번호와 비밀번호
- 최초 회원 등록 시 일회용 초대 주소를 생성
- 운영자가 기존 카카오톡으로 초대 주소를 직접 전달
- 카카오톡 자동 발송 기능은 사용하지 않음
서버에서 검사할 권한
| 행동 | 대표 | 보조 강사 | 회원 |
|---|---|---|---|
| 작품 등록·수정 | 가능 | 가능 | 불가 |
| 여러 작품 일괄 변경 | 가능 | 가능 | 불가 |
| 회원 등록·조회 | 가능 | 가능 | 본인만 |
| 회원권 변경 | 가능 | 가능 | 불가 |
| 선반·소요 기간 설정 | 가능 | 조회만 | 불가 |
| 보조 강사 계정 관리 | 가능 | 불가 | 불가 |
| 작품 조회 | 전체 | 전체 | 본인 작품만 |
화면에서 메뉴를 숨기는 것만으로 권한을 처리하면 안 됩니다. 서버가 공방과 회원의 연결 관계를 확인한 뒤 데이터를 제공해야 합니다.
사진 보안
- 작품 사진과 선반 사진은 비공개 저장소에 보관합니다.
- 로그인한 사용자의 권한을 확인한 뒤 임시 사진 주소를 발급합니다.
- 사진 주소만 알아도 다른 회원의 작품을 볼 수 없게 합니다.
- 목록에서는 작은 미리보기 이미지를 사용합니다.
- 회원은 자기 작품 사진만 볼 수 있습니다.
13. 동시 수정과 오류 처리
대표와 보조 강사의 동시 수정
작품을 열었을 때의 마지막 수정 시각과 저장 직전의 수정 시각을 비교합니다.
다른 사람이 먼저 수정했다면 바로 덮어쓰지 않고 다음 내용을 보여줍니다.
이 작품은 보조 강사가 먼저 수정했습니다.
현재 단계와 위치를 다시 확인한 뒤 저장해 주세요.
여러 작품 일괄 변경
- 저장 전에 각 작품의 현재 상태를 다시 검사합니다.
- 변경 가능한 작품만 저장합니다.
- 실패한 작품은 변경하지 않습니다.
- 성공 작품과 실패 작품을 구분해 보여줍니다.
- 실패 이유에는 동시 수정, 단계 불일치, 선반 불일치, 권한 오류를 포함합니다.
삭제 원칙
운영에 중요한 정보는 직접 삭제하지 않습니다.
- 작품: 보관 종료 또는 사용 중지 처리
- 회원: 활동 종료 처리
- 선반: 작품이 없을 때만 사용 중지
- 회원권: 종료 처리
- 잘못된 단계·위치·번호: 정정 이력 기록
14. 모바일 웹 디자인 기준
공방 현장에서는 휴대전화 사용을 우선합니다.
기본 원칙
- 작품 번호 검색창을 화면 위에 고정
- 사진 촬영 버튼을 크게 표시
- 최근 사용한 선반 칸을 먼저 표시
- 단계 변경은 적은 입력으로 완료
- 주요 버튼은 장갑을 끼거나 손이 젖은 상황에서도 누르기 쉽게 구성
- 색상만으로 단계를 구분하지 않고 단계 이름을 함께 표시
- 저장 전 작품 번호, 단계와 위치를 다시 보여줌
- 목록의 사진은 작은 미리보기로 제공
- 긴 표는 모바일에서 카드 형태로 전환
작품 등록 화면의 입력 순서
회원 선택
→ 작품 번호 확인
→ 사진 촬영
→ 단계 선택
→ 선반 칸 선택
→ 크기·높이 입력
→ 저장
회원과 단계, 선반 칸을 선택한 뒤 다음 작품을 등록할 때 직전 값을 다시 사용할 수 있게 합니다.
15. 권장 구현 구성
| 영역 | 구현 기준 |
|---|---|
| 웹 화면 | Next.js와 TypeScript |
| 데이터베이스 | PostgreSQL |
| 사진 저장 | 비공개 객체 저장소 |
| 로그인 | 서버 세션 기반 인증 |
| 화면 형태 | 모바일 우선 반응형 웹 |
| 배포 | 관리형 웹 배포 환경 |
| 날짜 기준 | 한국 시간대 |
| 사진 입력 | 모바일 카메라 촬영 또는 파일 업로드 |
서버에서 처리해야 할 기능
- 작품 번호 생성과 중복 검사
- 공방별 데이터 접근 검사
- 회원별 작품 접근 검사
- 단계와 선반 칸의 일치 여부 검사
- 단계·위치·번호 변경 이력 저장
- 예상 완료일 계산
- 일괄 변경 전 작품별 조건 검사
- 동시 수정 충돌 검사
- 사진 접근 권한 검사
화면에서 계산한 결과를 그대로 저장하지 않고, 서버가 같은 규칙으로 다시 검사해야 합니다.
16. 개발 순서
1단계: 공방과 접근 권한
- 대표·보조 강사·회원 역할
- 로그인
- 공방별 데이터 분리
- 회원 본인 작품만 조회하는 권한
2단계: 초기 설정
- 공정별 선반
- 선반 칸
- 단계별 기본 소요 기간
- 회원 등록
- 회원권 등록
3단계: 작품 등록과 검색
- 작품 번호 생성
- 중복 검사
- 사진 촬영
- 단계와 선반 칸 등록
- 작품 번호 검색
- 작품 상세
4단계: 현장 운영
- 단계별 작품 목록
- 단계와 위치 변경
- 변경 이력
- 여러 작품 일괄 변경
- 동시 수정 처리
5단계: 가마 후보와 회원권
- 초벌·재벌 대기 수
- 다음 가마 후보 비교
- 작품 크기와 높이
- 선반 사진
- 회원권 잔여 횟수와 변경 이력
6단계: 회원 웹 조회
- 회원 로그인
- 자기 작품 목록
- 작품 사진과 현재 단계
- 예상 완료일
- 완성 여부
7단계: 파일럿 준비
- 현재 보관 작품 등록
- 실제 선반과 시스템 대조
- 휴대전화 현장 테스트
- 데이터 권한 검사
- 운영자와 보조 강사 사용 연습
17. 필수 시험 항목
작품 번호
- 같은 공방에서 중복 번호 등록이 차단되는가
- 다른 공방에서는 같은 번호를 사용할 수 있는가
2608-01과260801같은 오기입을 구분하고 경고하는가- 번호 정정 이력이 남는가
- 100번째 작품 번호가 일곱 자 이내로 생성되는가
단계와 위치
- 초벌 대기 작품을 재벌 대기 선반에 저장하지 못하게 하는가
- 같은 단계에서 선반 칸만 옮길 수 있는가
- 단계와 위치를 함께 변경하면 두 이력이 모두 남는가
- 작품이 남은 선반 칸을 삭제하지 못하게 하는가
일괄 변경
- 일부 작품만 실패했을 때 성공과 실패가 구분되는가
- 실패 작품의 번호와 이유가 표시되는가
- 다른 사용자가 먼저 수정한 작품을 덮어쓰지 않는가
회원 접근
- 회원이 다른 회원의 작품 주소에 직접 접근해도 차단되는가
- 다른 공방의 회원과 작품이 검색되지 않는가
- 사진 주소를 복사해도 권한 없이 열리지 않는가
예상 완료일
- 단계 변경 후 날짜가 다시 계산되는가
- 가마 예정일이 기본 소요 기간보다 우선하는가
- 소요 기간 설정 변경 후 연결된 작품 날짜가 갱신되는가
- 운영자 화면과 회원 화면에 같은 날짜가 표시되는가
모바일 현장 사용
- 휴대전화에서 사진을 바로 촬영할 수 있는가
- 작품 번호 검색과 단계 변경을 한 손으로 처리할 수 있는가
- 사진이 많아도 목록이 지나치게 느려지지 않는가
- 저장 완료와 실패가 명확히 표시되는가
18. 첫 개발 완료 기준
다음 조건을 모두 만족해야 첫 개발이 완료된 것으로 봅니다.
- 대표 운영자와 보조 강사가 각자 로그인할 수 있습니다.
- 다른 공방의 회원, 작품과 사진에 접근할 수 없습니다.
- 현재 공방에 보관 중인 작품을 실제 선반 칸과 연결해 등록할 수 있습니다.
- 작품 번호로 주인, 사진, 현재 단계와 선반 칸을 찾을 수 있습니다.
- 작품 단계와 선반 칸을 변경하고 이전 내용을 이력에서 확인할 수 있습니다.
- 여러 작품을 선택해 단계와 위치를 한꺼번에 변경할 수 있습니다.
- 일괄 변경 실패 작품과 실패 이유가 따로 표시됩니다.
- 대시보드에서 단계별 작품 수와 초벌·재벌 대기 수를 확인할 수 있습니다.
- 다음 가마 후보 화면에서 초벌과 재벌을 분리해 볼 수 있습니다.
- 작품 사진, 크기, 높이와 선반 사진을 비교해 후보를 저장할 수 있습니다.
- 회원 상세에서 월 정기권·10회권의 잔여 횟수와 유효기간을 확인할 수 있습니다.
- 회원권 잔여 횟수를 수정하면 변경 전후 값과 변경자가 남습니다.
- 회원이 웹에서 자기 작품만 조회할 수 있습니다.
- 회원 화면에 작품 사진, 현재 단계, 예상 완료일과 완성 여부가 표시됩니다.
- 모바일 브라우저에서 작품 촬영, 등록, 검색과 단계 변경이 가능합니다.
- 실제 결제, 재료비 수납과 카카오톡 연동 없이도 첫 버전을 배포하고 사용할 수 있습니다.
19. 3개월 파일럿 성공 기준
핵심 성과
- 작품 관련 카카오톡 문의를 주 약 20건에서 주 10건 이하로 줄입니다.
- 주인을 바로 찾지 못한 작품은 작품 번호 검색으로 발생 당일 확인합니다.
- 회원이 자기 작품 상태와 예상 완료일을 직접 조회합니다.
- 대표 운영자와 보조 강사가 포스트잇 대신 같은 작품 정보를 사용합니다.
매주 기록할 항목
- 작품 관련 카카오톡 문의 건수
- 문의 유형: 예상 완료일, 현재 단계, 위치, 완성 여부
- 주인을 바로 확인하지 못한 작품 수
- 작품 번호 검색 후 확인까지 걸린 시간
- 회원 전용 웹 조회 수
- 단계 또는 선반 칸 변경이 누락된 작품 수
- 회원권 잔여 횟수 정정 건수
회원권 누락과 가마 후보 선정 시간은 현재 기준값이 없으므로 파일럿 시작 전에 같은 방식으로 기록을 시작합니다.
20. 후속 개발 순서
1순위: 완성 알림
- 작품이 완성으로 변경되면 알림 대상 생성
- 회원에게 웹 알림 또는 문자 발송
- 이후 카카오톡 알림톡 연동
- 발송 여부와 실패 사유 기록
2순위: 가마 회차와 채움 비율
- 초벌·재벌 가마 회차 분리
- 작품별 가마 회차 연결
- 최대 폭과 높이를 활용한 채움 비율 계산 기준 확정
- 적재, 점화, 냉각, 가마 개방과 검수 기록
- 미투입 작품을 대기 목록으로 되돌림
3순위: 재료비와 수납
- 흙 사용 무게 또는 봉지 수
- 흙값
- 사용 유약과 유약값
- 받아야 할 금액
- 계좌이체 수납 여부
- 미수납 목록
실제 수납은 계속 기존 계좌이체로 처리합니다.
4순위: 문제 작품 처리
- 파손, 균열, 변형, 분실 확인 필요
- 발생 단계와 사진
- 회원 안내 여부
- 보상, 재제작 또는 폐기
- 최종 처리 결과
5순위: 다른 생활도자 공방 확장
- 공방별 단계 이름 설정
- 공방별 선반 구조 설정
- 초기 회원·작품 등록 지원
- 회원 수에 따른 구독 요금제
- 작품 추적 기본형과 전체 운영형 구분
21. 확인이 필요한 운영값
다음 항목은 기능을 삭제하지 않고 초기 설정 또는 파일럿에서 확정합니다.
- 각 단계의 실제 기본 소요 기간
- 월 정기권의 전체 횟수와 차감 시점
- 회원권 유효기간 만료 전 안내 기준
- 현재 보관 중인 작품 중 등록 대상 범위
- 작품 번호 100번 이후 형식의 현장 가독성
- 작품 최대 폭과 높이의 측정 방식
- 선반 사진을 다시 촬영하는 주기
- 회원 로그인에 사용할 휴대전화 번호와 비밀번호 운영 방식
- 가마 예정일을 작품별로 입력할지, 여러 작품에 한꺼번에 입력할지
첫 개발에서는 이 항목을 고정값으로 숨기지 않고 공방 설정이나 운영 입력으로 처리합니다.
22. 개인정보 처리 참고
회원 이름, 휴대전화 번호와 작품 사진을 다루므로 다음 항목을 서비스 공개 전에 정리합니다.
- 수집하는 개인정보와 사용 목적
- 대표 운영자와 보조 강사의 접근 범위
- 회원 탈퇴 또는 공방 이용 종료 후 보관 기간
- 사진과 계정 정보의 삭제 절차
- 외부 저장·배포 서비스 이용 내역
- 회원 초대 주소가 유출됐을 때의 재발급 절차
작품 사진에 회원 얼굴이나 다른 사람의 개인정보가 함께 촬영되지 않도록 촬영 안내를 제공합니다.