RAIM PLAY Kiosk
소스 없는 납품 키오스크를, 서버는 그대로 두고 화면만 다시 만든 현장 예약 단말
- Period
- 2026.09 ~ 시험 운행 중
- Role
- 기획 · 1인 개발 (Claude 기반 바이브 코딩)
- Cycle
- 발견 → 기획 → 개발 → 적용·운영
Why
기존 예약 키오스크는 첫 화면에 오늘의 시간표를 보여줍니다.
하지만 진짜 문제는 그 시간표를 눌러도 아무 반응이 없다는 것이었습니다. 아래의 '예약' 버튼으로 들어가 목록에서 같은 수업을 다시 찾아야 했습니다.
안내도 부족했습니다. 연령 조건은 화면에 없어 옆에 붙인 종이에 의존했고, 예약을 마쳐도 화면에 예약번호가 나오지 않았습니다.
소스가 없는 납품 프로그램이라 고칠 수 없어, 서버와 데이터는 그대로 두고 화면 프로그램만 새로 만들었습니다.
2026년 10월부터 현장에서 시험 운행하고 있습니다.
My Role in the Architecture
기존 구조는 키오스크 화면 · 예약 서버 · 관리 화면 셋입니다. 이 가운데 화면만 Electron으로 다시 만들었습니다.
기존 프로그램과 서버가 주고받는 메시지 규격을 분석해 같은 규격으로 붙였습니다. 새 화면이 보내는 메시지는 조회 3종과 예약·취소 2종, 다섯 가지뿐입니다.
서버·관리 화면·저장 위치는 그대로라, 교체해도 직원이 보던 통계와 관리 방식이 바뀌지 않습니다.
영수증 프린터는 시리얼 포트로 직접 제어합니다. 통신 속도, 한 줄 48자 폭, 절단 명령을 현장에서 실측해 맞췄습니다.
실서버 없이 개발하려고 같은 규격으로 응답하는 가짜 서버를 만들고, 그 위에서 자동 검사를 돌립니다.
Stack
Highlights
보이는 시간표를 누르면 바로 예약
기존: 시간표는 보기 전용이었습니다. '예약' 버튼 → 수업 목록 → 수업 선택을 거쳐야 인원 화면에 닿았습니다.
지금: 예약할 수 있는 칸을 누르면 바로 인원 선택으로 갑니다. 관람객이 가장 먼저 손을 대는 곳이 동작합니다.
남은 하루가 쪽 이동 없이 한 화면에 들어옵니다. 강의실을 돌아가며 예약하는 관람객이 있어 목록이 아니라 격자로 뒀습니다.
개발 PC 창은 실물의 39% 크기로 보입니다. 현장 모니터를 재서(38×69cm, 31인치 세로) 30분 한 칸이 실제 약 2.8cm가 되게 맞췄습니다.

색과 글자가 같은 말을 하게
기존: 지나간 자율 관람과 점심시간에도 '마감'이 찍혀, 오후가 되면 화면 절반이 회색 '마감'으로 채워졌습니다.
기존: 자리가 다 찬 수업이 '잔여 : 0'인 채 예약 가능한 색으로 칠해졌고, 같은 좌석을 첫 화면은 '잔여 17', 예약 화면은 '3/20'으로 다르게 적었습니다.
기존: 아직 예약이 열리지 않은 수업은 '예약대기'로 보이지만 눌러도 반응이 없었습니다.
지금: 칸에 색이 있으면 누를 수 있고 회색이면 못 누릅니다. 표기는 '잔여: N'으로 통일하고, 열리지 않은 수업은 '13:00부터 예약 가능'처럼 언제 열리는지를 적습니다.

종이에 있던 안내를 화면 안으로
기존: 연령 조건이 화면에 없어 키오스크 옆 종이 안내문에 의존했고, 성인이 함께여도 보호자 안내창이 매번 떴습니다.
지금: 인원 선택 화면에 연령 규칙을 조건별(8세 미만, 8·9세, 모든 연령)로 늘 보여 주고, 8세 미만이 참여할 수 없는 수업은 유아 칸을 잠급니다.
기존: 발권 완료 화면에 예약번호가 없고 5초 뒤 처음 화면으로 돌아갔습니다. 영수증을 잃으면 취소할 방법이 없었습니다.
지금: 완료 화면에 예약번호를 크게 띄우고 15초 동안 유지합니다. 영수증 출력에 실패하면 경고와 함께 더 오래 보여 줍니다.
기존: 직전에 자리가 차도 '데이터 전송에 실패했습니다'로만 알렸습니다. 지금은 '방금 자리가 찼습니다'처럼 사유별로 다른 문장을 띄웁니다.

글자를 2배로 키워도 기능이 사라지지 않게
무인정보단말기 접근성 기준은 문자를 200%까지 키워도 콘텐츠와 기능이 손실되지 않을 것을 요구합니다.
처음에는 키패드 아랫줄과 합계가 화면 밖으로 밀렸습니다. 화면마다 큰 글자용 치수를 따로 잡아 해결했습니다.
자동으로 바뀌는 안내 띠에는 멈춤 버튼을 달았고, 진행 버튼은 흰 글자 대비 14.2:1입니다.
큰 글자 경로가 자동 캡처에 없어서 놓친 버그라, 캡처 목록에 그 경로를 추가했습니다.
Friction & Resolution
입장 스캔은 두 강의실이 0.5초 간격으로 동시에 찍으면 20건 중 1~3건만 들어갔습니다.
2초 간격이면 20건이 전부 들어가는 것을 확인하고, 연속 스캔 옵션을 끄는 운영 규칙으로 정리했습니다.
노쇼 자동 집계도 만들었지만 걷어냈습니다. 스캔 누락이 곧 노쇼로 잡혀 현장 부담이 커지는 구조였습니다.
아직 시험 운행 단계입니다. 자동 시작·종료 전환과 원본 집계 시트 연결이 남아 있습니다.
Result
- 2026년 10월부터 현장 시험 운행 중
- 자동 검사 13항목 통과, 실물 영수증 바코드 인쇄·스캔 확인
Next project