사원증으로 재는 자율 휴게시간 관리

하드웨어 · 펌웨어 · 모바일 앱 · 관리자 웹

휴게시간을 자율로 바꾸면서 사라진 근거를, 전용 인식기와 태깅 기록으로 다시 만들었습니다. 사람이 손대는 자리를 하나도 남기지 않는 것이 목표였습니다.


과제 배경

휴게시간을 자율로 운영하기로 하면서 실제로 얼마나 쓰는지 알 방법이 없어졌습니다. 이미 쌓이는 출입 통제 기록을 쓰자는 안이 먼저 나왔지만, 그 기록은 보안 목적으로 설계된 것이라 외근이든 미팅이든 휴게든 전부 같은 모양으로 남습니다. 나간 시각만 있고 왜 나갔는지가 없어서, 그것으로 낸 숫자는 휴게시간이 아니라 자리 비운 시간입니다.

주요 설계 결정

기록을 어디서 만들 것인가

기존 출입 기록을 재활용하지 않고 휴게 전용 인식기를 따로 놓았습니다

기록 하나에 목적 두 개를 얹으면 나중에 어느 쪽으로도 못 씁니다. 설비가 느는 대신 남는 기록이 전부 휴게 목적의 태깅입니다.

앱으로 직접 입력받기

사람이 시작과 종료를 누르는 방식을 버렸습니다

누르는 것을 잊으면 그날 기록이 통째로 비고, 빈 기록은 나중에 복구할 방법이 없습니다. 사람의 주의력에 맡긴 절차는 언젠가 반드시 깨집니다.

네트워크가 끊긴 동안

인식기가 기록을 안에 저장했다가 연결되면 스스로 올립니다

끊긴 동안의 태깅이 사라지면 관리자가 손으로 보정하는 절차가 생깁니다. 앞에서 없앤 사람 개입이 뒷문으로 돌아옵니다. 인식기를 직접 만들었기에 넣을 수 있었습니다.

초과 알림을 어디로

슬랙 개인 메시지로만 보내고 종료 10분 전에 사전 알림을 넣었습니다

같은 내용도 공개 채널에 뜨면 공지가 되고 초과한 뒤에 오면 통보가 됩니다. 10분은 자리에서 일어나 돌아올 수 있는 간격입니다.

제공 기능

제공 기능
기능내용
사원증 태깅쓰던 사원증을 전용 인식기에 찍어 휴게 시작과 종료를 남깁니다.
자동 집계태깅 기록에서 사용 시간을 계산해 관리자 화면에 올립니다.
슬랙 개인 알림허용 시간 종료 10분 전과 초과 시점에 본인에게만 보냅니다.
오프라인 보관연결이 끊긴 동안의 태깅을 장비에 저장했다가 복구되면 올립니다.

수행 결과

  • 남는 기록이 전부 휴게 목적이라, 집계에 사람이 손대는 자리가 없습니다.
  • 사원증을 새로 발급하지 않고 쓰던 카드를 그대로 씁니다.
  • 네트워크가 끊긴 구간의 태깅도 사라지지 않습니다.
  • 인식기 4대와 설치 공사가 그대로 비용으로 들어갔습니다. 출입 기록을 재활용했다면 없었을 값입니다.

시스템 구성도

사용자와 기기서버저장소와 외부RFIDHTTPS개인 DMHTTPS사원증RFID 카드쓰던 카드를 그대로 씁니다휴게 전용 인식기자체 제작태깅을 안에 저장했다 올립니다집계 서버태깅에서 사용 시간을 셉니다관리자 화면사용 현황을 봅니다태깅 기록전부 휴게 목적의 기록입니다슬랙Slack API본인에게만 보냅니다

점선은 외부 서비스를 사용하는 항목입니다.

설계 원칙

설계 원칙과 적용 방법
원칙적용 방법
기록 하나에 목적 두 개를 얹지 않는다출입 통제 기록을 읽지 않습니다. 휴게 인식기의 태깅만 집계에 들어갑니다
끊긴 동안 찍은 것도 사라지지 않는다인식기가 안에 저장했다가 연결되면 스스로 올립니다

적용 기술

RFIDESP32Slack APIAWS

관련 프로젝트