[CIO BIZ+/핫이슈]IBK시스템 아이프레임워크에 시선 집중

📁관련 통계자료 다운로드아이프레임워크 구성도

프레임워크는 소프트웨어(SW) 시스템 개발을 위한 뼈대다. 개발자가 아무 것도 없는 `무(無)`의 상태에서 개발하면서 발생하는 여러 문제를 해결해준다. 프레임워크 없이 개발을 진행하면 개발자 개인 능력에만 의존하기 때문에 산출물 간 표준화가 어렵다. 기능의 각 부분이 중구난방으로 개발돼 시스템 오류가 늘어난다.

개발자들의 코딩 양도 많아진다. 코딩 양이 많아지면 유지보수가 어려워지는데 유지보수 최소화를 위해서는 코딩 양을 줄여야한다. 프레임워크 사상은 여기에서 생겨났다. 건축에 비유하자면 철근 구조(프레임워크)를 세운 후에 각 층별로 인테리어(개발)를 해야만 건축이 쉽고 빨라지는 것과 마찬가지다.

◇IBK시스템, 아이프레임워크 기반 금융 차세대 완료

대형 시스템통합(SI) 업체는 자사만의 프레임워크를 가지고 있다. 프레임워크는 오랜 경험과 기술력을 기반으로 개발되기 때문에 웬만한 업체에서는 개발이 쉽지 않다. 하지만 대형 SI 업체와 비교해 규모가 작은 금융 IT자회사가 자체 프레임워크를 개발, 이를 기반으로 금융권 차세대 프로젝트를 완료해 화제가 되고 있다. IBK시스템과 `아이프레임워크`가 그 주인공이다.

IBK시스템은 2005년 3월 아이프레임워크 1.0버전을 처음 선보였다. 이후 지속적인 기능 개선을 통해 지난해 3.0버전을 출시했다. IBK시스템은 지난해 말 아이프레임워크 3.0을 기반으로 130억원 규모 IBK캐피탈 차세대 프로젝트를 성공적으로 완료했다.

이번 프로젝트는 100억원 이상 금융기관 차세대 프로젝트를 대형 SI업체가 아닌 금융 IT자회사가 독자적으로 수행한 최초의 사례라는 점에서 주목 받았다. IBK시스템 입장에서는 아이프레임워크로 일부 시스템이 아닌 계정계·정보계 시스템 전체를 구축한 의미 깊은 사례다.

아이프레임워크는 △아이서버 △아이디자이너 △아이쿼리 △아이채널 △아이스튜디오 5개 요소로 구성된다. 아이서버는 자바로 개발된 서비스 컴포넌트 실행한 위한 런타임 엔진이다. 아이디자이너는 아이서버에서 생성된 XML 데이터를 화면에 자동으로 바인딩(Binding)하는 기능을 제공하는 웹화면 제작 도구다.

아이스튜디오는 자바 서비스 컴포넌트를 생성하고 관리하는 이클립스(eclipse) 기반 자동화도구다. 아이쿼리는 SQL을 생성하고 관리하는 이클립스 기반 쿼리개발 도구, 자바 코드에서 SQL을 제거하는 SQL 매퍼(Mapper) 엔진으로 구성된다.

아이채널은 대내외 시스템에 대한 네트워크 인터페이스를 전문으로 생성하고 관리 편의성을 향상시키는 사용자화면(GUI) 기반 전문 매핑 도구다.

◇RIA 플랫폼 지향해 사용 간편해

아이프레임워크는 2010년 수협 예산관리시스템에 적용을 시작으로 재작년 한국투자저축은행 소비자 금융시스템과 11개 저축은행 시스템에 적용됐다. 지난해에는 BS저축은행 여신시스템에 적용됐다.

기업은행 내에서는 간접투자판매시스템, IB시스템, 재정기금시스템, IBK카드 영업관리시스템 개발에 사용됐다. 하지만 IBK캐피탈 차세대 프로젝트에 적용되면서 대형 금융 프로젝트에서도 아무 문제없이 사용될 수 있다는 사실을 입증했다.

아이프레임워크 3.0에는 IBK시스템이 20여년간 축적해온 검증된 기술력과 SI·시스템관리(SM) 프로젝트 경험이 반영됐다. IBK시스템은 아이프레임워크 3.0 개발을 위해 금융권 차세대 프레임워크 전문가 그룹을 영입하는 등 각고의 노력을 기울였다.

이번에 IBK캐피탈에 적용된 아이프레임워크 3.0의 특징은 △리치 인터넷 애플리케이션(RIA) 웹 기반 플랫폼 △개발생산성 향상 △강력한 의존성 및 유효성 검사 기능 제공 △설계와 구현의 일치성 제공 등이다.

아이프레임워크는 RIA 플랫폼을 지향하고 있어 업무에 필요한 대부분 화면 컴포넌트를 드래그·드롭만으로 사용 가능하다. 고객 요구사항에 따른 컴포넌트 조립과 다양한 템플릿 생성이 가능한 아키텍처를 구성, 초보 개발자도 간단한 스크립트 코딩만으로 업무에 필요한 다양한 기능을 구현할 수 있다.

두 번째 특징은 테이블과 쿼리를 기반으로 자동 생성되는 메시지 객체를 모든 컴포넌트 계층(Layer)에서 공유한다는 점이다. 소스 개발량이 일반 프로젝트의 3분의 1 수준으로 대폭 감소돼 개발자들은 비즈니스 구현에만 집중할 수 있다. 또 프레임워크가 제공하는 강력한 IO컨트롤러(IoC)와 어드바이스 기능으로 공통화·자동화 처리함으로써 개발 생산성을 획기적으로 향상시킨다.

◇금융권 대표 프레임워크로 정착

아이프레임워크 3.0의 또 다른 특징은 기능별로 명확하게 구분되는 컴포넌트 구조 기반이라는 점이다. 화면과 서비스, 대외 연계처리 등 기능별로 나눠지는 구조로 유지보수성을 높였다. 컴포넌트 간 데이터베이스(DB) 테이블부터 화면까지 의존성과 유효성 검사 기능을 지원해 코드 변경 시 영향을 받는 컴포넌트를 쉽게 찾을 수 있다. 유지보수가 한층 수월하도록 구성됐다는 얘기다.

아이프레임워크 3.0은 비즈니스 흐름을 다이어그램 형태로 보여주는 기능을 사용한다. 이로 인해 코드를 분석하지 않아도 업무 흐름을 직관적으로 분석 가능하다. 구현 코드를 기반으로 설계 산출물을 출력하는 기능이 있어 코드가 설계자 의도대로 작성됐는지 즉시 확인할 수 있는 장점이 있다.

아이프레임워크 3.0은 순수 자바 기술로 개발됐다. 자바 프레임워크로 대형 차세대 프로젝트를 성공한 사례는 거의 없다. 타사 오픈소스 기반 프레임워크는 핵심 요소를 재사용할 수 있다는 장점이 있지만 장애가 나면 분석이 어렵다는 단점도 있다. 인터넷 상 다양한 오픈소스 커뮤니티에서 개발했기 때문에 크고 작은 문제점을 드러낸 바 있다.

IBK시스템은 IBK캐피탈 차세대 프로젝트 성공 사례를 기반으로 시스템을 패키지화해 캐피탈사 차세대 프로젝트를 공략해나갈 계획이다. 그 핵심에는 물론 아이프레임워크 3.0이 있다.

김광옥 IBK시스템 대표는 “이미 다수의 금융권 레퍼런스를 확보하고 있지만 IBK캐피탈 차세대 시스템의 성공적 오픈을 기점으로 대외 사업을 더욱 확대하겠다”며 “아이프레임워크가 금융권 차세대 플랫폼으로 정착될 수 있도록 전사적 지원과 홍보를 이어나갈 것”이라고 말했다.

안호천기자 hcan@etnews.com