중계시스템이란?
중계시스템은 데이터나 정보, 서비스 등을 특정 시스템에서 또 다른 시스템으로 전송하거나 공유하기 위해 사용되는 매개 시스템을 말한다. 이와 같은 시스템은 두 시스템 간의 상호 운용성을 보장하고 데이터의 변환 및 통합을 용이하게 하며 여러 시스템 간의 원활한 서비스 구현을 지원하는 역할을 수행한다.
중계시스템이 서로 다른 객체간에 데이터 처리 및 전송을 관리하는데 초점을 두는 반면 플랫폼은 어플리케이션이 실행될 수 있는 기본환경을 제공하고, 개발 및 실행을 지원하는 포괄적인 환경을 제공하는 데 그 차이가 있다.
대표적 중계시스템으로는 행정안전부가 주관하는 공공데이터를 한곳에 모아 국민이 쉽게 접근하고 활용할 수 있는 ‘공공데이터포털’을 들 수 있다. 여러 정부 부처와 기관의 데이터를 통합하여 제공하며, 이를 통해 시민과 기업이 관련 데이터를 쉽게 검색하고 활용할 수 있도록 한다. 다른 예로 KDX ‘한국데이터 거래소’는 데이터 유통 및 거래 활성화를 위한 시스템으로 다양한 산업 분야의 데이터를 한 곳에 모아 거래할 수 한다.
필자가 참여하고 있는 ‘실손보험 청구 전산화 시스템’은 연간 1억건 이상의 실손보험금 청구를 전산화하는 것이다. 10만여개의 요양기관(병의원 및 약국)과 30여개의 보험사를 연계하는 대규모 사업으로 실손보험 가입자에게 간편한 청구 서비스를 제공한다.
중계 서비스의 기본 개념은 기존 실손보험 가입자가 병원에 방문하여 각종 서류를 발급받아 수작업으로 전달하던 것을 중계기관을 통해 전자문서형태로 가입 보험사로 전달하는 것이다. 소비자 편익은 물론, 요양기관 및 보험사의 업무 처리 효율성 제고를 목표로 하고 있다.
중계시스템의 확산 이유
최근 금융 및 헬스케어 분야의 ‘마이 데이터’, 고속도로 운영 및 상황 정보를 통합하여 이용자에게 제공하는 ‘고속도로 영업 데이터 중계시스템’, 무역 및 투자 데이터를 실시간으로 통합하여 한국 기업 및 투자자들에게 제공하는 ‘KOTRA 무역투자 빅데이터 중계시스템’ 등 중계시스템의 구축 및 활용이 활발해지는 데는 다음과 같은 이유가 있다.
- 디지털 전환 가속화
디지털 전환이 가속화되면서 다양한 시스템 간의 데이터 연동과 통합 필요성이 증가하고 있다. 그러나 많은 기업과 기관이 여전히 노후화된 레거시 시스템을 사용하고 있어 기관간 직접 연계에 다양한 한계점을 노출하고 있다. 이에 최신의 디지털 솔루션에 기반한 중계시스템을 통한 전송 대행 서비스 필요성이 높아지고 있다.
- 데이터의 원활한 흐름과 통합 니즈
데이터를 효과적으로 수집, 저장, 처리 및 공유할 수 있는 체계는 기업 경쟁력의 핵심이 되고 있다. 중계시스템은 이러한 데이터의 흐름을 원활하게 하는데 기여한다. 다양한 산업 분야에서 데이터 거래가 활발해짐에 따라 데이터 제공자와 수요자를 연결하고 거래를 중계하는 시스템에 대한 수요가 높아지고 있다. 또한, 중계시스템은 기업간 협업이 증가함에 따라 필요한 데이터를 실시간으로 동기화하여 데이터 불일치 및 지연에 따른 업무 서비스 중단을 최소화한다.
- 데이터 보안 및 규제 강화
데이터 전송 및 처리 과정에서 보안성과 프라이버시 보호에 대한 우려가 커지고 있다. 중계시스템은 데이터 암호화, 접근제어, 로그 기록 등 요구되어지는 보안 기능을 내재화하여 규제 준수에 대응하고 데이터 무결성과 보안성을 확보하는 데 중요한 역할을 한다.
중계시스템의 주요 기능
중계시스템의 주요 기능은 시스템 간의 데이터 전송과 통합을 원활하게 하고, 데이터 변환 및 유출의 위협으로부터 보호하며 장애 발생 시 복구를 지원하는 등 다음과 같은 기능을 수행한다.
- 데이터 통합 및 전송
중계시스템은 여러 소스에서 실시간으로 데이터를 통합하여 최신 정보를 제공한다. 경우에 따라서는 대량의 데이터를 일괄 처리하여 통합한다. 이를 위해 데이터 제공기관의 여러 시스템의 API를 단일 인터페이스로 제공하기도 한다. 대부분의 중계시스템 API는 RESTful 아키텍처를 기반으로 설계된다. 이는 HTTP 요청을 사용하여 리소스를 정의하고 조작한다. 또한 API변경에 대비하여 버전관리를 수행한다.
- 데이터 변환
서로 다른 네트워크 프로토콜을 사용하는 시스템 간의 데이터 전송을 지원한다. JSON, XML, CSV 등 서로 다른 데이터 형식을 변환하여 통합하고 상이한 데이터 모델을 사용하는 시스템 간의 데이터 필드를 매핑하기도 한다.
- 모니터링 및 로깅
데이터 전송 상태, 시스템 성능, 네트워크 상태 등을 실시간으로 모니터링하여 시스템의 원활한 운영을 지원한다. 필요 데이터 전송 및 변환 활동을 기록하고, 이를 분석하여 시스템의 성능을 최적화하고 문제를 진단 및 대응한다.
- 장애 처리
데이터 전송 실패 시 자동으로 재전송을 시도하여 데이터 손실을 방지한다. 재전송 횟수와 간격 등을 설정할 수도 있다. 주요 시스템에 장애가 발생했을 때 대체 시스템으로 자동 전환하여 서비스 연속성을 유지하기도 한다. 데이터 전송 중 발생한 오류를 감지하고 관리자가 신속하게 대응할 수 있도록 알림을 전송하는 기능도 필수적이다.
중계시스템의 구축 성공 요건
그렇다면 이와 같은 중계시스템 구축 및 활용에 있어 필요한 핵심 성공 요건은 무엇일까? 복잡한 기능이 구현되어 있는 기간 시스템에 비해 중계시스템은 기관간 데이터 연계 및 전송이라는 기능을 감안할 때 상대적으로 단순하게 여겨질 수도 있다. 그러나 일반적으로 다양한 이해 관계기관이 중계시스템에 연계되어 있는 상황을 고려할 때 다음과 같은 핵심 성공 요소를 검토하여 시스템 구축에 임할 필요가 있다.
- 연계 기관의 다양한 요구사항 수렴
시스템을 활용하는 연계기관과 긴밀히 협력하여 요구사항을 수렴하고 이를 반영하여 시스템을 설계하는 것이 중요하다. ‘실손보험 청구 시스템’의 경우 시스템 구축에 참여하는 병원, 의원, 보험사는 물론 실손 가입자, 병원 시스템을 공급하는 EMR사, 핀테크 업체, 정책 당국 등의 다양한 요구사항을 수렴하여 설계에 반영하였다. 이를 테면 요양기관은 환자 정보 보호를 위해 중계시스템 내 데이터 저장을 최소화하길 요구한다. 보험사는 요양기관으로부터 전송되는 데이터의 무결성 확보와 데이터 검증을 위한 이미지(PDF) 제공 등의 요구가 대표적이다. 실손보험 가입자는 본인 의료 데이터 전송 여부에 대한 선택권을 부여받길 원한다. 설계 단계에서의 다양한 요구사항을 충분히 수렴함으로써 시스템 구축이후의 사용자 만족도를 향상시킬 수 있다.
- 전송데이터의 무결성 확보
데이터 전송과정에서 데이터가 손상되지 않도록 송수신되는 데이터를 검증하는 것은 중요하다. 무결성이 손상된 데이터는 시스템 자체의 신뢰도를 훼손시킬 수 있다. 실손보험 청구 시스템의 경우 보험사에 전송된 데이터가 정확하지 않은 경우 보상에 심각한 오류가 발생할 수 있으며 사용자 불만으로 인해 이를 해결하기 위한 추가적인 리소스와 비용이 소모될 것이다. 사용자가 이에 대한 문제를 해결하고자 중계기관이 아닌 병원에 문의하는 경우가 증가할 수록 병원 행정력 측면에서 심각한 문제를 초래할 수도 있다. 데이터 무결성 확보를 위해서는 다양한 방식이 검토될 수 있는데 입력단계와 중계시스템 내 정합성 제약조건(고유키, 외래키, Null값)등을 설정하여 검증할 수 있다. 이밖에 트랜잭션 단위로 데이터를 처리하여 데이터 전송 태스크가 완전하게 수행되는 부분을 보장하는 것도 무결성 확보에 도움이 된다.
- 유형화된 연계방식 적용
중계시스템의 경우 연계 방식을 유형화하는 것은 필수적이다. 수많은 연계 기관의 인프라와 요구사항을 모두 개별적으로 대응하는 것은 비효율적일 뿐만 아니라 관리와 유지보수에도 많은 어려움을 초래한다. 실손보험 청구 시스템의 경우 요양기관별 연계유형을 인프라현황 및 보안정책 등을 감안하여 다음과 같이 3가지로 구분하여 구현방안을 설계하였다.
- 확장 용이한 시스템 아키텍처
중계시스템은 참여하는 기관과 서비스가 계속적으로 증가하는 것이 일반적이다. 따라서, 데이터 전송량과 트래픽을 손쉽게 확장 및 처리할 수 있는 Scale-Out 아키텍처 구성이 요구되어진다. 이를 위해서 시스템을 독립적으로 배포 및 확장될 수 있도록 마이크로서비스 아키텍처(MSA) 구성을 고려할 필요가 있다. 클라우드 서비스 적용을 적극적으로 검토하여 초기 인프라 투자 비용을 줄이고 수요에 맞추어 리소스를 조절할 수 있다. 기관 간 데이터 전송 시 API 게이트웨이를 사용하여 호출의 부하를 분산시키고 트래픽을 효율적으로 관리하는 것도 확장성을 확보할 수 있는 방안이다.
- 전송데이터 종류 및 서식 표준화
중계시스템을 구성할 때 데이터 종류, 서식, 포멧을 표준화하는 것이 선행되어야 한다. 이는 다양한 기관 간의 데이터 통합과 상호 운용성을 보장하고 참여하는 기관 및 관련 서비스의 일관성 확보 측면에서 그러하다. 실손보험 청구 시스템의 경우 기존에 보험사 별 요구하는 다양한 실손보험 청구 데이터 및 서식을 진료비 영수증, 계산서, 세부 내역서, 약제비 영수증 등 4종의 서류와 세부 전송 데이터를 표준화하였다. 이를 통해 모든 참여 기관 간 서비스 상호 운용성을 보장하도록 구성하였다.
성공적인 중계시스템 구축과 운영을 위해서는 앞서 설명된 데이터 무결성 확보, 시스템 확장성 및 데이터 표준화 등 중계 시스템의 기술적 특성을 충분히 반영할 필요가 있다. 더불어, 중계시스템에 연계되어 있는 데이터 제공 및 활용 기관의 적극적 참여를 유도하여 시스템에 대한 높은 만족도를 달성하는 것이 중요하다고 하겠다.