슬롯 발행 시간 기본단위 검토
ADR-320 슬롯 발행 시간 기본단위 검토
1. Metadata
- ADR ID: ADR-320
- Status: draft
- Date: 2026-03-15
- Owner: YSY
- Related ADRs: ADR-080, ADR-090, ADR-110, ADR-230, ADR-260, ADR-270
2. Context
- 본 ADR의 범위는 파트너 슬롯 발행 화면에서 시간 선택의 기본 단위를
30분으로 둘지1시간으로 둘지 결정하는 것이다. - 본 ADR은 시간 단위 자체뿐 아니라, 해당 단위를 파트너가 어떻게 쉽게 입력하게 할 것인지도 함께 다룬다.
- 현재 논점은 기술 구현 난이도보다 파트너 운영 모델과 UX 단순성 사이의 균형에 있다.
- 시간 단위가 작을수록 세밀한 공급 조정이 가능하지만, 파트너가 선택해야 할 경우의 수와 판단 부담이 커진다.
- 시간 단위가 클수록 발행 작업은 쉬워지지만, 실제 한가한 시간대를 정밀하게 포착하지 못할 수 있다.
- 업종별 운영 리듬 차이가 크므로 단일 단위가 모든 파트너에게 동일하게 적합하다고 보기 어렵다.
- 동일한
30분단위라도드래그 슬라이더,증감 버튼,인풋 박스,프리셋 칩,시작 시간 + 길이방식 중 무엇을 기본 입력 방식으로 택하느냐에 따라 체감 복잡도는 크게 달라진다.
3. Domain Decision
- 본 ADR은 슬롯 발행 시간 기본단위의 최종 결정을
draft상태로 보류한다. - 시간 기본단위는 발행 UI의 입력 해상도일 뿐, 상태 전이와 시간 판정의 기준 자체를 변경하지 않는다.
- 어떤 단위를 채택하더라도 서버 저장 시각과 검증 기준 시각은 기존 규칙을 유지한다.
- 시간 기본단위가 작아지더라도 발행 권한, 동시 노출 제한, 재발행 간격, 월 한도 규칙은 동일하게 적용한다.
- 시간 기본단위 선택은
파트너 조작 비용과공급 정밀도의 교환관계로 본다.
4. Product Decision
- 이 결정의 1차 목적은 파트너가 슬롯을 빠르고 덜 헷갈리게 발행하도록 만드는 것이다.
- 이 결정의 2차 목적은 실제 한가한 시간대에 맞는 공급을 과도한 입력 부담 없이 만들게 하는 것이다.
- MVP 기준에서는
정밀도 극대화보다설정 성공률과 이해도를 우선 검토한다. - 최종 채택 전까지는
30분,1시간,기본 1시간 + 일부 예외 30분의 세 대안을 비교한다.
5. UX Decision
- 어떤 단위를 채택하더라도 시간 선택 UX는 파트너가 결과를 즉시 이해할 수 있어야 한다.
- 시간 입력은 단순한 숫자 조절이 아니라
언제 시작해 얼마나 유지되는지를 바로 읽을 수 있어야 한다. - 기본단위가
30분이면 세밀함보다 복잡함이 커지지 않도록 빠른 선택값을 함께 제공해야 한다. - 기본단위가
1시간이면 짧은 시간대 발행이 불가능하다는 사실을 제품적으로 감수해야 한다. - 혼합안을 채택하면 예외 기준이 사용자가 이해할 수 있을 정도로 단순해야 한다.
- 시간 기본단위와 입력 조작 방식은 분리해서 판단한다.
슬라이더만 있는 입력은 정밀 조작이 어렵기 때문에 단독 기본안으로 두지 않는다.직접 텍스트 입력만 있는 방식도 형식 오류와 인지 부담이 커서 단독 기본안으로 두지 않는다.- 기본 입력 방식은
증감 버튼 + 현재값 표시 + 빠른 선택값조합처럼 거친 조정과 미세 조정이 함께 가능한 구조를 우선 검토한다. - 시간 입력 결과는 항상
시작 시간,종료 시간,총 길이가 동시에 보이도록 구성한다.
5.1 입력안 A. 드래그 슬라이더 + 양 끝 조절
설명
- 시작/종료 핸들을 좌우로 움직여 범위를 잡는 방식이다.
장점
- 한 화면에서 시간 범위를 시각적으로 바로 이해할 수 있다.
- 길이를 넓히거나 줄이는 행위가 직관적으로 보일 수 있다.
- 익숙한 사용자에게는 빠를 수 있다.
단점
- 모바일에서 미세 조정이 어렵다.
30분단위처럼 해상도가 촘촘할수록 오조작이 늘어난다.- 손가락이 값을 가리기 때문에 정확한 선택이 불편하다.
- 접근성과 재현성이 상대적으로 낮다.
평가
- 보조 시각화로는 괜찮지만 기본 입력 수단으로는 보수적으로 본다.
5.2 입력안 B. 시작 시간 / 종료 시간 각각 스텝퍼 인풋
설명
- 시작 시간 박스와 종료 시간 박스를 두고, 각 박스에
- / +버튼을 붙여 단위만큼 이동시키는 방식이다.
장점
- 현재값이 명확하고 재현 가능한 조작이 가능하다.
30분과1시간모두에 동일한 패턴을 적용할 수 있다.- 드래그보다 정확하고 오류 원인을 파악하기 쉽다.
단점
- 시작과 종료를 각각 조절해야 하므로 조작 수가 늘어날 수 있다.
- 종료 시간을 먼저 건드려야 하는지 길이를 먼저 생각해야 하는지 혼선이 생길 수 있다.
평가
- 가장 보수적이고 안정적인 입력안이다.
5.3 입력안 C. 시작 시간 + 길이(Duration) 스텝퍼
설명
- 시작 시간과 총 길이를 각각 조절하면 종료 시간은 자동 계산되는 방식이다.
장점
- 파트너가 실제로 생각하는 방식과 가깝다.
몇 시에 시작해서 몇 시간 운영할지로 이해하기 쉽다. - 종료 시간을 직접 계산하지 않아도 되어 인지 부담이 줄어든다.
30분과1시간단위 모두에서 빠르게 작동한다.
단점
- 종료 시간을 직접 지정하고 싶은 사용자에게는 통제감이 약하게 느껴질 수 있다.
- 길이 개념에 익숙하지 않은 사용자에게는 낯설 수 있다.
평가
- 현재 가장 유력한 기본안 후보로 본다.
5.4 입력안 D. 인풋 박스 + 업다운 버튼
설명
- 시간 텍스트를 직접 보여주고, 옆에 업/다운 버튼을 붙여 스텝 단위로 올리거나 내리는 방식이다.
장점
- 값이 항상 명시적으로 보여 오류를 줄이기 쉽다.
- 키패드 직접 입력과 버튼 조작을 병행할 수 있다.
단점
- 직접 입력 허용 시 형식 오류 처리와 포커스 UX가 필요하다.
- 모바일에서는 키패드 진입 자체가 흐름을 끊을 수 있다.
평가
- 보조 입력 수단으로는 좋지만, 기본안은 버튼 중심이 더 낫다.
5.5 입력안 E. 빠른 선택 칩 + 세부 조절
설명
30분,1시간,2시간,3시간같은 프리셋 칩을 먼저 주고, 이후 세부 조절은 버튼으로 보정하는 방식이다.
장점
- 자주 쓰는 선택을 빠르게 끝낼 수 있다.
- 파트너의 반복 작업을 줄이기 좋다.
30분단위여도 복잡도 체감이 낮아진다.
단점
- 프리셋 구성이 실제 운영 패턴과 맞지 않으면 의미가 약하다.
- 프리셋만으로는 충분하지 않아 보조 조절 수단이 필요하다.
평가
- 어떤 기본 입력안과도 같이 쓰는 것이 바람직하다.
5.6 입력안 F. 스크롤 창(wheel picker)
설명
- 날짜/알람 선택처럼 별도 모달 또는 바텀시트 안에서 시간 값을 스크롤로 고르는 방식이다.
장점
- 시간 선택 정확도가 높다.
30분단위나1시간단위가 명확하게 구분되어 실수 가능성이 낮다.- 모바일 사용자가 익숙하게 느낄 수 있다.
- 직접 텍스트 입력보다 형식 오류를 줄이기 쉽다.
단점
- 보통 별도 창이 필요해 현재 입력 흐름이 한 단계 끊긴다.
- 시작 시간, 종료 시간, 총 길이를 한 화면에서 동시에 비교하기 어렵다.
- 반복 발행처럼 빠르게 여러 번 입력해야 하는 작업에는 오히려 느릴 수 있다.
- 모달/바텀시트 설계가 불명확하면 닫기, 적용, 취소 흐름까지 복잡해질 수 있다.
평가
- 기본 입력안보다는
정밀 조정용 보조 모드후보로 보는 편이 낫다.
5.7 UX 방향 제안
- 기본 입력안은
시작 시간 + 길이(Duration) 스텝퍼또는시작/종료 개별 스텝퍼중 하나로 본다. - 빠른 선택 칩은 기본 입력안에 항상 결합하는 것이 좋다.
- 슬라이더는 유지하더라도 보조 시각화 또는 고급 모드로 제한하는 편이 낫다.
- 직접 텍스트 입력은 예외 보정 수단으로만 열고, 기본 입력 흐름의 중심으로 두지 않는다.
- wheel picker는 기본안보다 보조 모달형 입력으로 검토하는 것이 적절하다.
6. Tech Decision
- 시간 기본단위는 클라이언트 입력 제약과 검증 보조 규칙의 문제로 다룬다.
- 시간 단위를 바꾸더라도 서버는 분 단위 시각값을 그대로 저장한다.
- 기본단위 상수는 한 곳에서 관리해 UI와 검증이 어긋나지 않게 해야 한다.
- 시간 기본단위 변경 시 프리셋, 스텝 버튼, 검증 메시지, 중복 판정 체감이 함께 검토되어야 한다.
- 입력 UX를 바꾸더라도 내부 시간 계산은
start_at,end_at기반으로 유지한다. - 시간 조작 컴포넌트는
단위(step),프리셋,영업시간 범위,최소 길이를 주입받는 구조가 바람직하다.
7. Ops Decision
- 최종 채택 전까지 운영은 특정 시간 단위를 기본 정책으로 공지하지 않는다.
- 채택 후에는 발행 성공률, 발행 완료까지 걸리는 시간, 수정/삭제 비율, 중복 실수 비율을 추적해야 한다.
- 시간 단위가 작을수록 운영은 과도하게 잘게 쪼개진 슬롯 생성 여부를 모니터링해야 한다.
- 시간 단위가 클수록 운영은 실제 수요 피크를 놓쳐 공급 손실이 발생하는지 확인해야 한다.
8. Alternatives
8.1 대안 A. 기본단위를 30분으로 둔다
장점
- 점심 직전, 카페 브레이크 타임, 짧은 공실 시간처럼 실제 운영 리듬에 더 가깝다.
- 파트너가 공급을 더 세밀하게 조절할 수 있다.
- 업종별 짧은 유휴시간을 프로모션 슬롯으로 전환하기 좋다.
- 향후 정교한 운영 자동화나 추천 발행 시간대 기능과도 잘 맞는다.
단점
- 파트너가 선택해야 할 경우의 수가 많아져 발행이 느려질 수 있다.
- 처음 쓰는 파트너는
30분단위가 오히려 부담스럽게 느껴질 수 있다. - 세밀한 선택이 가능해질수록 잘못된 시간 설정도 늘어날 수 있다.
- 공급이 지나치게 잘게 쪼개져 사용자 입장에서 일관된 노출을 해칠 수 있다.
8.2 대안 B. 기본단위를 1시간으로 둔다
장점
- 파트너가 훨씬 빠르게 결정할 수 있다.
- 발행 화면의 이해도와 완료율이 올라갈 가능성이 높다.
- 운영 실수와 잘못된 미세 조정 가능성이 줄어든다.
- MVP 단계에서 가장 단순하고 설명하기 쉽다.
단점
- 실제 한가한 시간이 30~90분처럼 짧게 생기는 업종에서는 공급 최적화가 거칠어진다.
- 정밀한 시간대 공략이 어려워 파트너가 체감하는 유연성이 낮아질 수 있다.
- 일부 업종에서는
1시간 단위가 실제 운영 감각과 맞지 않아 답답하게 느껴질 수 있다. - 나중에 30분 단위 요구가 다시 올라오면 정책을 다시 열어야 한다.
8.3 대안 C. 기본은 1시간으로 두고, 일부 조건에서만 30분을 허용한다
장점
- 대부분 파트너에게는 단순성을 유지하면서, 필요한 경우에만 정밀도를 제공할 수 있다.
1시간기본값을 유지해 교육 비용을 낮출 수 있다.- 특정 업종, 특정 플랜, 특정 화면에서만 정밀도를 열어 실험하기 좋다.
단점
- 예외 규칙이 생기면 제품 메시지가 복잡해진다.
- 왜 어떤 파트너는 30분이 되고 어떤 파트너는 안 되는지 설명 비용이 생긴다.
- 구현과 운영 기준이 복잡해져 MVP의 장점을 약화시킬 수 있다.
- 장기적으로는 정책이 누더기처럼 쌓일 위험이 있다.
9. Consequences / Impact
긍정 영향
- 시간 기본단위를 감각이 아니라 운영 목적 기준으로 비교할 수 있다.
- UI 단순성과 공급 정밀도 사이의 우선순위를 명확히 논의할 수 있다.
- 향후 변경이 필요해도 무엇을 잃고 무엇을 얻는지 문서 기준이 생긴다.
부정 영향
- 결정을 미루는 동안 시간 단위에 대한 팀 내 인식이 계속 흔들릴 수 있다.
- 업종별 다른 요구를 하나의 단위로 묶어 보다가 실제 현장감이 떨어질 수 있다.
주요 리스크
30분채택 시 과도한 입력 복잡성 리스크1시간채택 시 공급 최적화 손실 리스크- 혼합안 채택 시 정책 복잡도 리스크
- 시간 단위 변경이 발행 성공률보다 오히려 혼선만 키울 리스크
10. Scope
- 파트너 슬롯 발행 화면
- 시간 선택 UX와 프리셋
- 슬롯 생성 검증 체감
- 업종별 공급 운영 패턴
11. Validation
- 시간 기본단위 결정이 ADR-080의 시간 기준과 충돌하지 않는다.
- 시간 기본단위 결정이 ADR-090의 발행 제한 계산 규칙과 충돌하지 않는다.
- 입력 단순성과 표현 원칙이 ADR-260과 충돌하지 않는다.
- 각 대안의 장단점이 파트너 운영 관점에서 충분히 구체적이다.
- 기본단위 변경이 서버 상태 규칙을 바꾸는 것이 아님이 명확하다.
- 기본단위와 입력 방식이 혼동되지 않도록 문서에서 분리되어 있다.
12. Open Questions
- MVP에서는 단순성을 위해
1시간이 더 적절한가. - 카페/식음료처럼 회전이 빠른 업종은
30분이 사실상 더 맞는가. - 기본단위를 하나로 고정할지, 업종이나 플랜별 예외를 둘지 결정해야 하는가.
- 시간 기본단위는 정책 문제인지, UX 실험으로 검증할 문제인지 어디까지 나눌 것인가.
- 기본 입력안은
시작 시간 + 길이와시작/종료 개별 조절중 무엇이 더 적절한가. - 프리셋 칩은 어떤 길이 구성을 기본으로 제공할 것인가.
- 슬라이더를 완전히 제거할지, 보조 시각화로만 남길지 결정해야 하는가.
- wheel picker를 보조 입력 모드로 둘 경우, 모달/바텀시트 중 어느 형태가 더 적절한가.