Robotic Process Automation (RPA) 적용에 따른 약국 업무 개선
서울아산병원 약제팀
J. Kor. Soc. Health-syst. Pharm. 2024; 41(3): 284-289
Published August 31, 2024
© The Korean Society of Health-system Pharmacists.
‘고양이 손이라도 빌리고 싶다’라는 일본 속담이 있다. 병원 약사라면 절절히 와 닿을 것이다. 빠르게 변화하는 바깥세상의 속도감이 무색하게도, 병원 약국은 아직 수작업 위주의 조제 업무를 밤낮없이 수행하고 있다. 물론 자동 정제 포장기(ATC)나 산제 분포기처럼 ‘이제는 없이 못 사는’ 장비들이 제 역할을 열심히 해내고 있지만, 10년 전과 비교해도 크게 달라진 바 없는 조제실 내 장비 풍경이 병원 약국의 더딘 자동화 속도를 입증하는 것 아닐까. 본원에서도 주사약 자동 조제 시스템(Automatic Ampule Dispensing System, ADS), 자동 포장 및 분배 시스템(Automated Packaging and Dispensing System) 등 새로 개발된 조제 자동화 장비의 도입을 적극적으로 검토하고 있지만, 대부분 외국에서 수입하는 고가의 장비인 데다가 운용에 필요한 공간과 전산 시스템까지 함께 갖춰야 하기에 경영진을 설득하여 장비 구매가 결정되더라도 병원에 안착시켜 가동할 때까지는 예상보다 훨씬 더 긴 시간과 노력이 필요하다. 또한 약국에서 제한된 인력으로 원활하게 조제를 수행하기 위해서는 조제를 위한 각종 출력물이나 필요한 의약품이 정확하고 신속하게 준비되어야 하는데, 이를 효율적으로 수행하기 위한 별도 프로그램 개발은 시간과 비용이 많이 들고 개발 우선순위(주로 처방, 간호 등)에 밀리곤 해, 전산을 이용한 약국 업무 개선에 많은 어려움이 있다.
그렇다면 장소나 구매 비용에 큰 부담이 되지 않으면서 병원 약국 구성원들이 시간대별로 매일 반복하는 단순 작업을 자동화할 획기적인 방법은 없을까? RPA (Robotic Process Automation)가 그 해결책이 될 수 있다.
RPA란, 인간이 PC를 통해 수작업으로 수행하는 단순 반복 업무를 소프트웨어(로봇)가 대신 처리하여 자동화하는 기술을 말한다.1) RPA는 사용자가 직접 수행하는 업무 절차를 관찰하고 동작 목록을 만든 다음, 사용자 인터페이스에서 직접 해당 작업을 반복하여 자동화를 수행한다. 즉 키보드나 마우스를 움직여 시스템을 조작하는 인간의 ‘손’을 대신하는 것이다. RPA 작동 원리는 다음과 같다.2)
-
(1) 작업 식별(Task identification)
RPA 소프트웨어 봇이 수행할 반복적이고 규칙적인 전산 작업 절차(데이터 입력, 추출, 복사, 붙여 넣기 등)를 관찰하여 식별한다.
-
(2) 봇 생성(Bot creation)
시스템 UI (User Interface)와 상호작용하여 식별된 작업을 수행할 수 있는 소프트웨어 봇을 생성한다.
-
(3) 시스템과 통합(Integration with systems)
별도의 인터페이스를 개발하지 않고도 자동화가 필요한 시스템과 상호작용할 수 있도록, RPA 소프트웨어를 사용하여 데이터를 연계한다.
-
(4) 작업 실행 및 모니터링(Task execution and monitoring)
RPA 봇이 시스템의 UI를 사용하여 작업을 실행한다. 봇은 업무담당자처럼 동일 업무환경에서 로그인하고, 화면을 탐색하고, 데이터를 입력하고, 정보를 검색하여 검증하고, 데이터를 처리할 수 있다. 또한 RPA 플랫폼은 모니터링 및 로깅 기능을 제공하므로, 봇의 성능을 추적하고 문제를 식별하여 업무프로세스 최적화에 필요한 데이터를 제공한다.
-
(5) 오류 처리(Error handling) : RPA 봇이 업무 를 처리하는 과정에서 오류가 발생한 경우, 미리 정의 된 조치를 취하거나 운영자에게 알린다.
RPA의 가장 큰 이점은 높은 생산성과 정확도이다. RPA 봇은 한 번 프로그래밍이 되면 매번 규칙을 정확하고 빠르게 따를 뿐 아니라 출퇴근 시간에 구애받지 않고 언제든 일할 수 있다. 또한 RPA는 기존 전산시스템에 영향을 미치지 않으면서도 비교적 빠른 속도로 개발 구현하여 실무에 적용할 수 있어, 기존 병원 정보 시스템 기반의 신규 프로그램보다 개발 부담이 적다는 장점이 있다.3)
RPA는 아래의 성격을 가진 업무에 적합하다.
-
단계가 복잡하고 수작업으로 시행할 때 오류가 많이 발생하는 업무
-
구조화된 입력 데이터를 가진 업무
-
변화가 거의 없는, 정형화된 업무
-
수행 과정에서 명확한 의사결정 기준이 있는 규칙 기반의 표준화된 업무
RPA는 특히 단순 반복 업무에 활용할 수 있다. 국내에서는 2016년 이후 금융권 계약 관리, 정보처리업무를 중심으로 RPA 도입이 시작되었으며, 현재 제조, 운영, 고객 서비스, IT 등 다양한 분야에 널리 보급되어 사용 중이다.4) 특히 의료기관에서도 환자 진료 기록과 수납 처리, 병실 및 예약 관리, 자료수집 및 분석, 기관 제출용 데이터 전송 등 많은 인력과 시간이 필요한 단순 반복 작업에 RPA를 널리 활용 중이다.5),6) 병원 약국에서도 ‘마약류 통합관리시스템 보고’ 업무에 RPA를 활용한 사례가 보고된 바 있다.7) 이 밖에도 의약품 재고 관리, 주문, 업무 분석용 자료추출 등, 정해진 규칙에 따라 순서대로 수행하는 다양한 약국 업무에 활용할 수 있다(Fig. 1).
본원 약제팀에서도 매일 일정한 시간에 많은 사람들이 반복 수행하는 업무 중 처방 집계/조제 준비 및 약국 별 부족 의약품 청구 분야에 RPA를 이용할 수 있도록 2022년부터 전산 개발을 진행하였고, 2023년 초부터 실무에 적극 활용하고 있다. 이에, 우리의 RPA 대상 업무 지정 및 전산 개발 과정을 소개하고 RPA 적용 후 효과 분석 결과를 공유하여 병원 약국 업무 개선에 아이디어를 제공하고자 한다.
우리 병원 디지털 정보 혁신 본부에서는 2021년 11월 전 부서를 대상으로 RPA 설명회를 개최하고, RPA 자동화 적용 대상 선정을 위한 업무 분석 자료제출을 요청하였다. 약제팀에서는 정해진 시간에 동일한 조건을 선택하여 반복 수행하는 업무 중 RPA 적용에 적합한 8개 과제를 선정하고, 업무 수행 절차를 정리하여 개발 요청서를 제출하였다. 본원 IT 전략팀과 RPA 개발 업체에서는 전 부서에서 제출한 요청서 검토와 사용자 인터뷰를 시행하여 적용 후 효과와 개발 난이도를 종합 판정하고, RPA 적용 대상 업무의 우선순위를 정하였다. 각 부서에서 제출한 149개 과제 중 11개가 2022년 RPA 적용 대상 업무로 채택되었으며, 이 중 약제팀에서 제출한 ‘의약품 재고 관리’와 ‘처방 집계 및 조제 준비’ 업무가 RPA 적합도 평가에서 가장 높은 점수를 받아 개발을 진행하게 되었다.
2022년 8월 RPA 업체 확정 후 업무 분석 및 환경 구축에 약 2개월, 업무 분석 및 단위 개발에 2개월, 운영 테스트에 1개월, 실무 적용 후 안정화에 1개월, 도합 6개월가량의 개발 기간이 소요되었다(Fig. 2). 처방 집계와 조제 준비, 의약품 청구에 각각 1대씩 총 2대의 RPA 봇이 가동되었으며, RPA 봇이 약제팀뿐 아니라 타 부서 업무도 수행해야 하므로 요일과 시간대별로 정해진 일을 하게 하고, 수행 중 오류가 발생하면 이후 프로세스에 영향을 미치지 않도록 해당 절차는 종료하고 담당자에게 메시지를 전송하도록 설정하였다.
과제별 상세 개발 과정과 내용은 아래와 같다.
1) 처방 집계, 조제 준비
입원, 퇴원, 외래 주사실, 지원 부서의 정규 처방 조제는, 저마다 수행 시간과 세부 조건은 다르지만 ‘처방 집계 → 취소 처방 처리 → 조제용 처방 목록/라벨 출력 → 조제 → 조제 감사 → 불출, 배송’의 큰 흐름대로 진행된다. 기존 정규 처방 집계 및 조제 준비 담당자는 정해진 시간에 조제 준비 절차를 정확히 수행해야만 이후 조제, 감사, 불출, 배송을 원활히 진행할 수 있으므로 조제자 보다 1시간 일찍(오전 6시 30분경) 출근해야 했고, 절차가 다양하고 복잡하여 전산 조건 지정 과정에서 오류 발생 위험이 컸다. 게다가 모든 목록과 라벨을 한 사람이 출력할 수 없을 만큼 세부 조건이 다양한 절차는 각 조제자가 직접 담당병동(또는 부서)의 조제 준비 처리를 시행하고 있었다.(참고로, RPA 적용 전 입원 정규 처방 조제 준비를 위한 수동 작업 절차는 평일 기준 총 101회였다. 즉, 정규 처방 조제 준비를 위해서는 101가지의 서로 다른 조건을 직접 지정하여 각각 수행해야만 한다는 뜻이다.) 부서별 처방 집계 및 조제 준비 절차를 항목에 따라 모두 나열하고(Fig. 3), 정해진 시간에 RPA 봇이 원내 전산에 접근하여 담당자의 ‘손가락’이 움직이는 대로 절차를 수행하도록 개발하였다. 절차 종류가 매우 많고 복잡하므로 개발 초반에는 사람이 수행 중인 업무를 나열하고 성격별로 항목화하여 RPA 수행 순서를 지정하는 과정에서 많은 시간과 노력이 필요했고, 누락 없이 업무가 진행되는지 절차별로 점검하면서 시나리오별 테스트를 수백 차례 반복해야 했으며, RPA 봇이 원거리에서 각 약국 PC와 프린터에 접근하여 출력 업무를 수행해야 하기에 네트워크 연결이나 보안 관리 설정에도 각별한 주의가 필요했다.
2) 의약품 재고 관리 - 약국별 의약품 청구
본원 약제팀의 조제 약국은 총 다섯 군데(외래약국, 입원약국1, 입원약국2, 입원주사조제실, 외래항암주사조제실)다. 지금껏 각 약국의 재고관리 담당 약사가 아침에 의약품 청구 프로그램에서 의약품 별 재고 수량과 처방량을 확인하여 제형(경구/주사/외용/시럽/팩)별로 필요 수량을 수작업으로 입력하여 청구하면, 약품 관리실 직원이 약국 별 청구 목록을 확인하여 전산 출고 처리 후 의약품을 각 약국에 배송해 왔다. 그러나 수기 청구 과정에서 품목이 누락되거나 수량을 잘못 입력하는 등 오류가 종종 발생하고, 담당자의 숙련도에 따라 청구 소요 시간에 차이가 컸다. 바쁜 아침에 많은 약사가 청구에 시간을 들이는 데다가 청구가 지연되거나 오류가 발생하면 조제, 투약 등 이후 절차에 차질을 줄 수 있기에, RPA를 의약품 청구업무에 적용하기로 하고 아래 절차를 수행하도록 개발을 진행하였다.
-
RPA가 요일(평일/휴일)별 정해진 시간에 의약품 청구 화면에서 각 약국 창고 명칭을 지정
-
제형(경구/주사/외용/시럽/팩)별 의약품 목록 각각 조회
-
요일(평일/휴일), 날짜 별 재고수량, 시간대에 따른 청구 대상 의약품 및 수량 조건 지정
-
의약품 청구 요청
RPA 적용을 위하여 몇 가지 사전 작업을 시행하였는데, 그 중 하나가 의약품별 청구 기준 수량 설정이다. 약국 별 청구 수량은 ‘사용량’(예. 153정)을 기준으로 10자리 올림 하여 산정되는데(예. 160정), 약품관리실에서는 포장단위(예. 100정/병) 기준으로 출고해야 하기 때문에 담당자가 매번 수기로 청구 수량을 조정(예. 200정)해 왔다. 약속된 규칙에 따라 의약품별 청구 수량 배수 단위를 기재해 놓으면(예. A: 100), RPA가 의약품 코드 옆 컬럼에 기재된 배수 단위를 기준으로 수량을 올림 하여 입력한다. 이렇게 RPA 봇이 알파벳순 의약품 코드 별 청구량을 입력하고 나면, 일괄 청구 요청을 시행한다. 약국 별로 필요한 시간에 필요한 횟수만큼 청구 작업 수행을 요청하면 RPA는 정해진 시간에 어김없이 의약품 청구를 수행하고, 약품관리실 직원은 청구 내용을 확인하여 출고 처리 후 의약품을 각 약국으로 올려 보낼 수 있다.
또 하나의 작업은 요일 별, 날짜 별 청구 패턴 반영을 위한 조건 지정이다. 입원 약국만 운영하는 휴일이나 상대적으로 재고 보유량이 부족한 월말에는 RPA 봇이 청구 약국과 수량을 조정하여 청구할 수 있게 세부 조건을 지정하여, 최대한 실무 조건을 반영한 의약품 청구 관리 시스템을 구동할 수 있도록 하였다.
본원 약제팀의 RPA 적용 효과는 크게 네 가지를 들 수 있다. 첫 번째는 당연히, 인력 절감이다. 약제팀 소속 약사 40여명, 조제 보조원 5명이 조금씩 분담하던 수작업을 자동화하여 처방 집계 및 준비에 월평균 412시간, 의약품 청구에 월평균 30시간가량 소요되던 업무를 RPA에 위임하게 되었다. 이를 연간 M/M(Man months, 한 사람이 하루 8시간 100%의 효율을 발생할 때 1개월(22일)의 작업량)로 환산하면 연간 총 30M/M에 달한다(Table 1). 다시 말해, 1년동안 약국 직원 2.5명이 RPA에 단순 반복 작업을 위임하고 더 생산적인 업무를 수행할 수 있게 되었다는 뜻이다.
두 번째는 효율적인 업무처리이다. RPA가 365일 시간에 구애받지 않고 업무를 수행하여 약사와 조제보조원의 조기 출근을 정상 출근 시간대로 변경할 수 있었고, 조제 보조원 휴식 시간 확보나 휴가 사용도 원활해졌다. 또한 신규 약사/보조원 배치로 인한 업무 차질이 감소하였으며, 특히 하루 10,000여 장 이상의 라벨 및 처방 목록 출력과 의약품 청구 업무를 자동화하여 기존 담당자들이 단계 수행 간 대기시간 없이 다른 업무에 집중할 수 있었다. 특히 네트워크 접근을 통한 원격 출력은 기존 RPA 구동 사례에 없어서 개발 초반에는 직접 전산실로 출력물을 가지러 갈 것을 제안 받기도 하였는데, 여러 시행착오 끝에 RPA 봇이 약국 프린터에 원격 접근하여 출력물을 약국에서 직접 받을 수 있게 된 것은 무엇보다 큰 소득이었다. 또한 프로세스를 표준화하고 플랫폼화 하였기 때문에, 프로세스의 일부가 변경되거나 다른 과정에서 활용할 때도 손쉽게 수정하고 업데이트할 수 있게 되었다.
세 번째는 업무 정확도 향상이다. 매일 사람이 하던 다양하고 복잡한 업무별 조회 조건 지정, 처리를 RPA 봇이 정시에 정확히 수행하게 되어, 조건을 잘못 지정했을 때 발생할 수 있는 의약품 청구 및 준비 오류, 불출 오류, 업무 지연 등의 문제를 예방할 수 있었다.
네 번째는 근무 만족도 및 업무 질 향상이다. 반복되는 수작업을 자동화하여 구성원들이 실물 조제약 준비, 처방감사 등 좀 더 중요하고 실질적인 업무에 집중할 수 있게 되면서 업무 만족도가 크게 향상되었다. 무엇보다, RPA 과제 선정을 위한 업무 절차 분석 과정에서 기존에 각 약국에서 해왔던 조제 준비 및 청구 절차를 시간대별로 나열하여 항목화하고, 이 중 불필요한 절차를 제거하거나 각각의 절차를 통합하는 작업을 거치면서 기존 업무를 세부적으로 들여다보고 다듬는 기회를 가질 수 있었다.
개발 과정에서 가장 해결하기 어려웠던 과제는 네트워크 안정화였다. RPA 봇이 전산실에 설치되어 있어 라벨, 처방 목록 등 출력물을 약국에서 바로 받기 위해서는 RPA 봇이 약국 내 프린터에 접근하여 출력업무를 수행해야만 했는데, 개발 당시 네트워크 연결이 불안정하여 속도가 매우 느려지거나 절차를 마치지 않았는데도 RPA 프로세스가 조기 종료되는 등의 문제가 지속적으로 발생했다. 병원에서는 의료정보를 보호하고 정보통신망을 통한 불법 접근과 침해 사고를 예방하기 위해 침입차단시스템(Firewall) 또는 침입방지시스템(IPS) 등 접근 통제 시스템을 운영 중이므로, 외부 프로그램인 RPA 봇이 원내 시스템에 접근하여 약국 PC에 설치된 프린터로 원격 업무를 수행하도록 하는 데 많은 어려움이 있었다. 결국 RPA의 안정적인 구동을 위하여 약제팀 프린터를 별도 IP가 부여된 고(高)사양의 네트워크 프린터로 교체해야 했고, 원내 시스템 정보 보호를 위하여 RPA 소프트웨어가 설치된 PC는 가상 데스크톱 환경(Virtual Desktop Infrastructure, VDI)으로 구동하였다. 또한 RPA는 정보보호 정책 변경이나 PC 운영체계 업그레이드 등 PC 환경 변화에 영향을 받기 때문에 원내 시스템 변경 시 RPA 영향 검토 작업이 선행되어야 하며, Microsoft Excel이나 Acrobat Reader 등 응용 프로그램에 접근하는 절차가 포함된 경우 해당 프로그램의 업데이트나 파일관리를 주기적으로 시행해야만 오류 없이 업무가 진행될 수 있다.
또 하나의 산은 구동 시간의 제한이었다. 2022년 병원에서 구매 계약한 RPA 봇은 총 5대인데, 원내 전체 부서 업무 총 12개 과제를 모두 수행하기 위해서는 부서별 RPA 봇 가동 타임라인을 촘촘하게 구성해야 했다. 약제팀에서는 5대 중 2대를 배정 받았지만, 약국 별 의약품 청구 절차 10건, 처방 집계 및 조제 준비 절차 총 180건을 정해진 시간에 순서대로 수행해야 하므로 2대를 알차게 구동할 수 있도록 업무별 가동 시간을 퍼즐 맞추듯 조율하는 데 많은 고민과 노력이 필요했다. 특히 조제실 특성 상 오전에 업무가 집중되는데, 여러 명이 각자의 PC에서 하던 업무를 2대의 RPA 봇이 수행하려니 시간 절감 효과에 한계가 있을 수밖에 없었다. 따라서 입원 정규 처방집계, 조제 준비의 경우 RPA 봇이 사람이 수행하는 것보다 0.5시간 정도 지연되는 바람에, 오히려 기존 조제, 불출, 배송 시간대를 RPA 속도에 맞추어 조정하는 등 부가 작업이 필요했다.
이렇게 여러 우여곡절을 겪으며 마침내 안정적으로 RPA를 안착 시키더라도, 오랫동안 효과적으로 사용하기 위해서는 유지보수 체계 마련이 필수적이다. 외부 업체가 RPA 개발을 완수하고 철수한 후에는 원내 전산 담당자가 사용 부서에서의 오류 발생이나 시스템 개선을 수행해야 하는데, 문제가 발생했을 때 신속하고 정확하게 대처하기 위해서는 RPA 개발 업체와 긴밀한 협력이 필요하다. 또한, RPA가 원내 의료정보 시스템에 접근하여 절차를 수행하기 때문에, 화면구성이나 기능 변경이 RPA 수행에 장애 요인이 될 수 있다. 따라서 원내 전산 시스템을 변경할 때는, 먼저 RPA 구동에 영향을 미칠 지 반드시 확인해야 한다.
RPA 도입은 약국 별로 분산 수행하던 업무 프로세스를 일원화, 표준화하고 효율성과 정확성을 향상하는 데 큰 도움이 되었기에, 개발 과정의 어려움에도 불구하고 약국 업무에 적극 도입할 만한 가치가 있었다. RPA는 휴일과 무관하게 매일 정해진 시간에 업무를 수행할 수 있고 사람이 근무하지 않는 야간/새벽 시간대에도 스케줄에 맞춰 구동할 수 있다는 특장점이 있으므로, 병원 약국에서 수행하는 업무 중 프로세스를 명확하게 정의하고 단순 반복할 수 있는 분야(예. 조제약 불출/배송 현황 알림, 약국 업무량 분석, 마약류 관리, 조제 오류 분석 및 피드백 등)에 RPA를 적용하고 운영 경험을 쌓는다면, 병원 약국에서의 업무 효율과 질을 더욱 향상시킬 수 있을 것이다.
- Madakam S, Holmukhe RM, Jaiswal DK. The future digital work force: robotic process automation (RPA). JISTEM- Journal of Information Systems and Technology Management. 2019;16:1-7.
- Willcocks L, Hindle J, Lacity M. Keys to RPA success. Executive Res Rep, Knowl Capital Partners, USA, Tech Rep: 2018.
- Yarlagadda RT. The RPA and AI automation. International Journal of Creative Research Thoughts (IJCRT), ISSN. 2018:2320-882.
- 최재욱, 유명식. RPA (Robotic Process Automation) 도입과 효율성 개선에 관한 연구. 한국통신학회 학술대회논문집. 2021:378-80.
- Palmer F. Robotic Process Automation (RPA) in Healthcare: Identifying Suitable Processes for RPA. Grand Canyon University: 2023.
- 정세영. 의료데이터 가공 및 병원정보시스템 모니 터링을 위한 로봇 프로세스 자동화의 효과. 서울대학교 대학원: 2022.
- Milad Safar. RPA에 관한 21가지 질문. Available from: https://www.samsungsds.com/kr/insights/rpa_qanda.html..
Related articles in JKSHP
Article
업무개선사례
J. Kor. Soc. Health-syst. Pharm. 2024; 41(3): 284-289
Published online August 31, 2024
Copyright © The Korean Society of Health-system Pharmacists.
Robotic Process Automation (RPA) 적용에 따른 약국 업무 개선
양사미†, 길미현, 이은미, 정지희, 정주원, 한혜원
Body
‘고양이 손이라도 빌리고 싶다’라는 일본 속담이 있다. 병원 약사라면 절절히 와 닿을 것이다. 빠르게 변화하는 바깥세상의 속도감이 무색하게도, 병원 약국은 아직 수작업 위주의 조제 업무를 밤낮없이 수행하고 있다. 물론 자동 정제 포장기(ATC)나 산제 분포기처럼 ‘이제는 없이 못 사는’ 장비들이 제 역할을 열심히 해내고 있지만, 10년 전과 비교해도 크게 달라진 바 없는 조제실 내 장비 풍경이 병원 약국의 더딘 자동화 속도를 입증하는 것 아닐까. 본원에서도 주사약 자동 조제 시스템(Automatic Ampule Dispensing System, ADS), 자동 포장 및 분배 시스템(Automated Packaging and Dispensing System) 등 새로 개발된 조제 자동화 장비의 도입을 적극적으로 검토하고 있지만, 대부분 외국에서 수입하는 고가의 장비인 데다가 운용에 필요한 공간과 전산 시스템까지 함께 갖춰야 하기에 경영진을 설득하여 장비 구매가 결정되더라도 병원에 안착시켜 가동할 때까지는 예상보다 훨씬 더 긴 시간과 노력이 필요하다. 또한 약국에서 제한된 인력으로 원활하게 조제를 수행하기 위해서는 조제를 위한 각종 출력물이나 필요한 의약품이 정확하고 신속하게 준비되어야 하는데, 이를 효율적으로 수행하기 위한 별도 프로그램 개발은 시간과 비용이 많이 들고 개발 우선순위(주로 처방, 간호 등)에 밀리곤 해, 전산을 이용한 약국 업무 개선에 많은 어려움이 있다.
그렇다면 장소나 구매 비용에 큰 부담이 되지 않으면서 병원 약국 구성원들이 시간대별로 매일 반복하는 단순 작업을 자동화할 획기적인 방법은 없을까? RPA (Robotic Process Automation)가 그 해결책이 될 수 있다.
RPA란, 인간이 PC를 통해 수작업으로 수행하는 단순 반복 업무를 소프트웨어(로봇)가 대신 처리하여 자동화하는 기술을 말한다.1) RPA는 사용자가 직접 수행하는 업무 절차를 관찰하고 동작 목록을 만든 다음, 사용자 인터페이스에서 직접 해당 작업을 반복하여 자동화를 수행한다. 즉 키보드나 마우스를 움직여 시스템을 조작하는 인간의 ‘손’을 대신하는 것이다. RPA 작동 원리는 다음과 같다.2)
-
(1) 작업 식별(Task identification)
RPA 소프트웨어 봇이 수행할 반복적이고 규칙적인 전산 작업 절차(데이터 입력, 추출, 복사, 붙여 넣기 등)를 관찰하여 식별한다.
-
(2) 봇 생성(Bot creation)
시스템 UI (User Interface)와 상호작용하여 식별된 작업을 수행할 수 있는 소프트웨어 봇을 생성한다.
-
(3) 시스템과 통합(Integration with systems)
별도의 인터페이스를 개발하지 않고도 자동화가 필요한 시스템과 상호작용할 수 있도록, RPA 소프트웨어를 사용하여 데이터를 연계한다.
-
(4) 작업 실행 및 모니터링(Task execution and monitoring)
RPA 봇이 시스템의 UI를 사용하여 작업을 실행한다. 봇은 업무담당자처럼 동일 업무환경에서 로그인하고, 화면을 탐색하고, 데이터를 입력하고, 정보를 검색하여 검증하고, 데이터를 처리할 수 있다. 또한 RPA 플랫폼은 모니터링 및 로깅 기능을 제공하므로, 봇의 성능을 추적하고 문제를 식별하여 업무프로세스 최적화에 필요한 데이터를 제공한다.
-
(5) 오류 처리(Error handling) : RPA 봇이 업무 를 처리하는 과정에서 오류가 발생한 경우, 미리 정의 된 조치를 취하거나 운영자에게 알린다.
RPA의 가장 큰 이점은 높은 생산성과 정확도이다. RPA 봇은 한 번 프로그래밍이 되면 매번 규칙을 정확하고 빠르게 따를 뿐 아니라 출퇴근 시간에 구애받지 않고 언제든 일할 수 있다. 또한 RPA는 기존 전산시스템에 영향을 미치지 않으면서도 비교적 빠른 속도로 개발 구현하여 실무에 적용할 수 있어, 기존 병원 정보 시스템 기반의 신규 프로그램보다 개발 부담이 적다는 장점이 있다.3)
RPA는 아래의 성격을 가진 업무에 적합하다.
-
단계가 복잡하고 수작업으로 시행할 때 오류가 많이 발생하는 업무
-
구조화된 입력 데이터를 가진 업무
-
변화가 거의 없는, 정형화된 업무
-
수행 과정에서 명확한 의사결정 기준이 있는 규칙 기반의 표준화된 업무
RPA는 특히 단순 반복 업무에 활용할 수 있다. 국내에서는 2016년 이후 금융권 계약 관리, 정보처리업무를 중심으로 RPA 도입이 시작되었으며, 현재 제조, 운영, 고객 서비스, IT 등 다양한 분야에 널리 보급되어 사용 중이다.4) 특히 의료기관에서도 환자 진료 기록과 수납 처리, 병실 및 예약 관리, 자료수집 및 분석, 기관 제출용 데이터 전송 등 많은 인력과 시간이 필요한 단순 반복 작업에 RPA를 널리 활용 중이다.5),6) 병원 약국에서도 ‘마약류 통합관리시스템 보고’ 업무에 RPA를 활용한 사례가 보고된 바 있다.7) 이 밖에도 의약품 재고 관리, 주문, 업무 분석용 자료추출 등, 정해진 규칙에 따라 순서대로 수행하는 다양한 약국 업무에 활용할 수 있다(Fig. 1).
본원 약제팀에서도 매일 일정한 시간에 많은 사람들이 반복 수행하는 업무 중 처방 집계/조제 준비 및 약국 별 부족 의약품 청구 분야에 RPA를 이용할 수 있도록 2022년부터 전산 개발을 진행하였고, 2023년 초부터 실무에 적극 활용하고 있다. 이에, 우리의 RPA 대상 업무 지정 및 전산 개발 과정을 소개하고 RPA 적용 후 효과 분석 결과를 공유하여 병원 약국 업무 개선에 아이디어를 제공하고자 한다.
개발 과정 소개
우리 병원 디지털 정보 혁신 본부에서는 2021년 11월 전 부서를 대상으로 RPA 설명회를 개최하고, RPA 자동화 적용 대상 선정을 위한 업무 분석 자료제출을 요청하였다. 약제팀에서는 정해진 시간에 동일한 조건을 선택하여 반복 수행하는 업무 중 RPA 적용에 적합한 8개 과제를 선정하고, 업무 수행 절차를 정리하여 개발 요청서를 제출하였다. 본원 IT 전략팀과 RPA 개발 업체에서는 전 부서에서 제출한 요청서 검토와 사용자 인터뷰를 시행하여 적용 후 효과와 개발 난이도를 종합 판정하고, RPA 적용 대상 업무의 우선순위를 정하였다. 각 부서에서 제출한 149개 과제 중 11개가 2022년 RPA 적용 대상 업무로 채택되었으며, 이 중 약제팀에서 제출한 ‘의약품 재고 관리’와 ‘처방 집계 및 조제 준비’ 업무가 RPA 적합도 평가에서 가장 높은 점수를 받아 개발을 진행하게 되었다.
2022년 8월 RPA 업체 확정 후 업무 분석 및 환경 구축에 약 2개월, 업무 분석 및 단위 개발에 2개월, 운영 테스트에 1개월, 실무 적용 후 안정화에 1개월, 도합 6개월가량의 개발 기간이 소요되었다(Fig. 2). 처방 집계와 조제 준비, 의약품 청구에 각각 1대씩 총 2대의 RPA 봇이 가동되었으며, RPA 봇이 약제팀뿐 아니라 타 부서 업무도 수행해야 하므로 요일과 시간대별로 정해진 일을 하게 하고, 수행 중 오류가 발생하면 이후 프로세스에 영향을 미치지 않도록 해당 절차는 종료하고 담당자에게 메시지를 전송하도록 설정하였다.
과제별 상세 개발 과정과 내용은 아래와 같다.
1) 처방 집계, 조제 준비
입원, 퇴원, 외래 주사실, 지원 부서의 정규 처방 조제는, 저마다 수행 시간과 세부 조건은 다르지만 ‘처방 집계 → 취소 처방 처리 → 조제용 처방 목록/라벨 출력 → 조제 → 조제 감사 → 불출, 배송’의 큰 흐름대로 진행된다. 기존 정규 처방 집계 및 조제 준비 담당자는 정해진 시간에 조제 준비 절차를 정확히 수행해야만 이후 조제, 감사, 불출, 배송을 원활히 진행할 수 있으므로 조제자 보다 1시간 일찍(오전 6시 30분경) 출근해야 했고, 절차가 다양하고 복잡하여 전산 조건 지정 과정에서 오류 발생 위험이 컸다. 게다가 모든 목록과 라벨을 한 사람이 출력할 수 없을 만큼 세부 조건이 다양한 절차는 각 조제자가 직접 담당병동(또는 부서)의 조제 준비 처리를 시행하고 있었다.(참고로, RPA 적용 전 입원 정규 처방 조제 준비를 위한 수동 작업 절차는 평일 기준 총 101회였다. 즉, 정규 처방 조제 준비를 위해서는 101가지의 서로 다른 조건을 직접 지정하여 각각 수행해야만 한다는 뜻이다.) 부서별 처방 집계 및 조제 준비 절차를 항목에 따라 모두 나열하고(Fig. 3), 정해진 시간에 RPA 봇이 원내 전산에 접근하여 담당자의 ‘손가락’이 움직이는 대로 절차를 수행하도록 개발하였다. 절차 종류가 매우 많고 복잡하므로 개발 초반에는 사람이 수행 중인 업무를 나열하고 성격별로 항목화하여 RPA 수행 순서를 지정하는 과정에서 많은 시간과 노력이 필요했고, 누락 없이 업무가 진행되는지 절차별로 점검하면서 시나리오별 테스트를 수백 차례 반복해야 했으며, RPA 봇이 원거리에서 각 약국 PC와 프린터에 접근하여 출력 업무를 수행해야 하기에 네트워크 연결이나 보안 관리 설정에도 각별한 주의가 필요했다.
2) 의약품 재고 관리 - 약국별 의약품 청구
본원 약제팀의 조제 약국은 총 다섯 군데(외래약국, 입원약국1, 입원약국2, 입원주사조제실, 외래항암주사조제실)다. 지금껏 각 약국의 재고관리 담당 약사가 아침에 의약품 청구 프로그램에서 의약품 별 재고 수량과 처방량을 확인하여 제형(경구/주사/외용/시럽/팩)별로 필요 수량을 수작업으로 입력하여 청구하면, 약품 관리실 직원이 약국 별 청구 목록을 확인하여 전산 출고 처리 후 의약품을 각 약국에 배송해 왔다. 그러나 수기 청구 과정에서 품목이 누락되거나 수량을 잘못 입력하는 등 오류가 종종 발생하고, 담당자의 숙련도에 따라 청구 소요 시간에 차이가 컸다. 바쁜 아침에 많은 약사가 청구에 시간을 들이는 데다가 청구가 지연되거나 오류가 발생하면 조제, 투약 등 이후 절차에 차질을 줄 수 있기에, RPA를 의약품 청구업무에 적용하기로 하고 아래 절차를 수행하도록 개발을 진행하였다.
-
RPA가 요일(평일/휴일)별 정해진 시간에 의약품 청구 화면에서 각 약국 창고 명칭을 지정
-
제형(경구/주사/외용/시럽/팩)별 의약품 목록 각각 조회
-
요일(평일/휴일), 날짜 별 재고수량, 시간대에 따른 청구 대상 의약품 및 수량 조건 지정
-
의약품 청구 요청
RPA 적용을 위하여 몇 가지 사전 작업을 시행하였는데, 그 중 하나가 의약품별 청구 기준 수량 설정이다. 약국 별 청구 수량은 ‘사용량’(예. 153정)을 기준으로 10자리 올림 하여 산정되는데(예. 160정), 약품관리실에서는 포장단위(예. 100정/병) 기준으로 출고해야 하기 때문에 담당자가 매번 수기로 청구 수량을 조정(예. 200정)해 왔다. 약속된 규칙에 따라 의약품별 청구 수량 배수 단위를 기재해 놓으면(예. A: 100), RPA가 의약품 코드 옆 컬럼에 기재된 배수 단위를 기준으로 수량을 올림 하여 입력한다. 이렇게 RPA 봇이 알파벳순 의약품 코드 별 청구량을 입력하고 나면, 일괄 청구 요청을 시행한다. 약국 별로 필요한 시간에 필요한 횟수만큼 청구 작업 수행을 요청하면 RPA는 정해진 시간에 어김없이 의약품 청구를 수행하고, 약품관리실 직원은 청구 내용을 확인하여 출고 처리 후 의약품을 각 약국으로 올려 보낼 수 있다.
또 하나의 작업은 요일 별, 날짜 별 청구 패턴 반영을 위한 조건 지정이다. 입원 약국만 운영하는 휴일이나 상대적으로 재고 보유량이 부족한 월말에는 RPA 봇이 청구 약국과 수량을 조정하여 청구할 수 있게 세부 조건을 지정하여, 최대한 실무 조건을 반영한 의약품 청구 관리 시스템을 구동할 수 있도록 하였다.
적용 후 효과
본원 약제팀의 RPA 적용 효과는 크게 네 가지를 들 수 있다. 첫 번째는 당연히, 인력 절감이다. 약제팀 소속 약사 40여명, 조제 보조원 5명이 조금씩 분담하던 수작업을 자동화하여 처방 집계 및 준비에 월평균 412시간, 의약품 청구에 월평균 30시간가량 소요되던 업무를 RPA에 위임하게 되었다. 이를 연간 M/M(Man months, 한 사람이 하루 8시간 100%의 효율을 발생할 때 1개월(22일)의 작업량)로 환산하면 연간 총 30M/M에 달한다(Table 1). 다시 말해, 1년동안 약국 직원 2.5명이 RPA에 단순 반복 작업을 위임하고 더 생산적인 업무를 수행할 수 있게 되었다는 뜻이다.
두 번째는 효율적인 업무처리이다. RPA가 365일 시간에 구애받지 않고 업무를 수행하여 약사와 조제보조원의 조기 출근을 정상 출근 시간대로 변경할 수 있었고, 조제 보조원 휴식 시간 확보나 휴가 사용도 원활해졌다. 또한 신규 약사/보조원 배치로 인한 업무 차질이 감소하였으며, 특히 하루 10,000여 장 이상의 라벨 및 처방 목록 출력과 의약품 청구 업무를 자동화하여 기존 담당자들이 단계 수행 간 대기시간 없이 다른 업무에 집중할 수 있었다. 특히 네트워크 접근을 통한 원격 출력은 기존 RPA 구동 사례에 없어서 개발 초반에는 직접 전산실로 출력물을 가지러 갈 것을 제안 받기도 하였는데, 여러 시행착오 끝에 RPA 봇이 약국 프린터에 원격 접근하여 출력물을 약국에서 직접 받을 수 있게 된 것은 무엇보다 큰 소득이었다. 또한 프로세스를 표준화하고 플랫폼화 하였기 때문에, 프로세스의 일부가 변경되거나 다른 과정에서 활용할 때도 손쉽게 수정하고 업데이트할 수 있게 되었다.
세 번째는 업무 정확도 향상이다. 매일 사람이 하던 다양하고 복잡한 업무별 조회 조건 지정, 처리를 RPA 봇이 정시에 정확히 수행하게 되어, 조건을 잘못 지정했을 때 발생할 수 있는 의약품 청구 및 준비 오류, 불출 오류, 업무 지연 등의 문제를 예방할 수 있었다.
네 번째는 근무 만족도 및 업무 질 향상이다. 반복되는 수작업을 자동화하여 구성원들이 실물 조제약 준비, 처방감사 등 좀 더 중요하고 실질적인 업무에 집중할 수 있게 되면서 업무 만족도가 크게 향상되었다. 무엇보다, RPA 과제 선정을 위한 업무 절차 분석 과정에서 기존에 각 약국에서 해왔던 조제 준비 및 청구 절차를 시간대별로 나열하여 항목화하고, 이 중 불필요한 절차를 제거하거나 각각의 절차를 통합하는 작업을 거치면서 기존 업무를 세부적으로 들여다보고 다듬는 기회를 가질 수 있었다.
한계점
개발 과정에서 가장 해결하기 어려웠던 과제는 네트워크 안정화였다. RPA 봇이 전산실에 설치되어 있어 라벨, 처방 목록 등 출력물을 약국에서 바로 받기 위해서는 RPA 봇이 약국 내 프린터에 접근하여 출력업무를 수행해야만 했는데, 개발 당시 네트워크 연결이 불안정하여 속도가 매우 느려지거나 절차를 마치지 않았는데도 RPA 프로세스가 조기 종료되는 등의 문제가 지속적으로 발생했다. 병원에서는 의료정보를 보호하고 정보통신망을 통한 불법 접근과 침해 사고를 예방하기 위해 침입차단시스템(Firewall) 또는 침입방지시스템(IPS) 등 접근 통제 시스템을 운영 중이므로, 외부 프로그램인 RPA 봇이 원내 시스템에 접근하여 약국 PC에 설치된 프린터로 원격 업무를 수행하도록 하는 데 많은 어려움이 있었다. 결국 RPA의 안정적인 구동을 위하여 약제팀 프린터를 별도 IP가 부여된 고(高)사양의 네트워크 프린터로 교체해야 했고, 원내 시스템 정보 보호를 위하여 RPA 소프트웨어가 설치된 PC는 가상 데스크톱 환경(Virtual Desktop Infrastructure, VDI)으로 구동하였다. 또한 RPA는 정보보호 정책 변경이나 PC 운영체계 업그레이드 등 PC 환경 변화에 영향을 받기 때문에 원내 시스템 변경 시 RPA 영향 검토 작업이 선행되어야 하며, Microsoft Excel이나 Acrobat Reader 등 응용 프로그램에 접근하는 절차가 포함된 경우 해당 프로그램의 업데이트나 파일관리를 주기적으로 시행해야만 오류 없이 업무가 진행될 수 있다.
또 하나의 산은 구동 시간의 제한이었다. 2022년 병원에서 구매 계약한 RPA 봇은 총 5대인데, 원내 전체 부서 업무 총 12개 과제를 모두 수행하기 위해서는 부서별 RPA 봇 가동 타임라인을 촘촘하게 구성해야 했다. 약제팀에서는 5대 중 2대를 배정 받았지만, 약국 별 의약품 청구 절차 10건, 처방 집계 및 조제 준비 절차 총 180건을 정해진 시간에 순서대로 수행해야 하므로 2대를 알차게 구동할 수 있도록 업무별 가동 시간을 퍼즐 맞추듯 조율하는 데 많은 고민과 노력이 필요했다. 특히 조제실 특성 상 오전에 업무가 집중되는데, 여러 명이 각자의 PC에서 하던 업무를 2대의 RPA 봇이 수행하려니 시간 절감 효과에 한계가 있을 수밖에 없었다. 따라서 입원 정규 처방집계, 조제 준비의 경우 RPA 봇이 사람이 수행하는 것보다 0.5시간 정도 지연되는 바람에, 오히려 기존 조제, 불출, 배송 시간대를 RPA 속도에 맞추어 조정하는 등 부가 작업이 필요했다.
이렇게 여러 우여곡절을 겪으며 마침내 안정적으로 RPA를 안착 시키더라도, 오랫동안 효과적으로 사용하기 위해서는 유지보수 체계 마련이 필수적이다. 외부 업체가 RPA 개발을 완수하고 철수한 후에는 원내 전산 담당자가 사용 부서에서의 오류 발생이나 시스템 개선을 수행해야 하는데, 문제가 발생했을 때 신속하고 정확하게 대처하기 위해서는 RPA 개발 업체와 긴밀한 협력이 필요하다. 또한, RPA가 원내 의료정보 시스템에 접근하여 절차를 수행하기 때문에, 화면구성이나 기능 변경이 RPA 수행에 장애 요인이 될 수 있다. 따라서 원내 전산 시스템을 변경할 때는, 먼저 RPA 구동에 영향을 미칠 지 반드시 확인해야 한다.
결론
RPA 도입은 약국 별로 분산 수행하던 업무 프로세스를 일원화, 표준화하고 효율성과 정확성을 향상하는 데 큰 도움이 되었기에, 개발 과정의 어려움에도 불구하고 약국 업무에 적극 도입할 만한 가치가 있었다. RPA는 휴일과 무관하게 매일 정해진 시간에 업무를 수행할 수 있고 사람이 근무하지 않는 야간/새벽 시간대에도 스케줄에 맞춰 구동할 수 있다는 특장점이 있으므로, 병원 약국에서 수행하는 업무 중 프로세스를 명확하게 정의하고 단순 반복할 수 있는 분야(예. 조제약 불출/배송 현황 알림, 약국 업무량 분석, 마약류 관리, 조제 오류 분석 및 피드백 등)에 RPA를 적용하고 운영 경험을 쌓는다면, 병원 약국에서의 업무 효율과 질을 더욱 향상시킬 수 있을 것이다.
References
- Madakam S, Holmukhe RM, Jaiswal DK. The future digital work force: robotic process automation (RPA). JISTEM- Journal of Information Systems and Technology Management. 2019;16:1-7.
- Willcocks L, Hindle J, Lacity M. Keys to RPA success. Executive Res Rep, Knowl Capital Partners, USA, Tech Rep: 2018.
- Yarlagadda RT. The RPA and AI automation. International Journal of Creative Research Thoughts (IJCRT), ISSN. 2018:2320-882.
- 최재욱, 유명식. RPA (Robotic Process Automation) 도입과 효율성 개선에 관한 연구. 한국통신학회 학술대회논문집. 2021:378-80.
- Palmer F. Robotic Process Automation (RPA) in Healthcare: Identifying Suitable Processes for RPA. Grand Canyon University: 2023.
- 정세영. 의료데이터 가공 및 병원정보시스템 모니 터링을 위한 로봇 프로세스 자동화의 효과. 서울대학교 대학원: 2022.
- Milad Safar. RPA에 관한 21가지 질문. Available from: https://www.samsungsds.com/kr/insights/rpa_qanda.html..