A.계정계 (Core Banking)란?
은행의 전통적인 핵심 업무는 통장이 중심이 됩니다. 이 통장을 계좌, 계정이라고 합니다.
계정을 관리하는 시스템이 모여 있다보니 “계정계”라고 부릅니다.
한 사람이 여러 개의 통장을 만들 수도 있고, 돌아가신 분의 통장도 있기 때문에
기본 데이터가 1억건이 가뿐히 넘습니다. 통장별 거래기록을 포함하면 수백억건의 데이터가 기본적으로 있습니다.
계정계 데이터는 곧 돈과 거래기록이기 때문에, “시스템장애”는 바로 금전적 피해로 이어집니다. 따라서 데이터를 2중, 3중으로 백업하며 시스템이 매우 보수적으로 운영됩니다.
계정계 시스템은 “공통업무, 수신업무, 신탁업무, 보험업무, 카드업무, 여신업무, 외환업무, 대행업무 시스템” 등으로 구성됩니다. 대부분 마스터테이블인 거대한 원장들이 있고, 다양한 업무를 처리하는 정형화된 트랜잭션들이 있습니다.
원장이란 오래된 용어로 “근원이 되는 장부”라는 뜻입니다. 옛날에는 현장에서 노트로 기록하고, 사무실로 돌아가서 메인 장부에 옮겨 적었거든요.
전산도입 이후에도 “원장”개념은 그대로 사용됩니다. 통장잔액이 중복관리되면 지급오류가 생길 수 있으니까요.
기본적으로 원장에 트랜잭션이 집중되는 구조이기 때문에, 안정적으로 트랜잭션을 처리하기 위한 미들웨어Middleware가 발달해 있습니다.
많은 은행들이 초기엔 IBM Mainframe 을 사용했으며, 2000년대 중반 Unix로 이전하였습니다. Mainframe 시절엔 COBOL을 사용했지만, 차세대를 통해 대부분 C로 옮겨갑니다.
Java가 최초로 도입된 건 2013년 (전북은행)일 정도로 굉장히 보수적으로 운용됩니다.
반면, 기존시스템 부담이 적은 보험회사는 일찌감치 Java를 도입하기도 합니다.

*출처: subokim.wordpress