02.25
주요뉴스
뉴스홈 > 기고
[전략 및 제품] KSTEC/JRules 제품과 프레임웍 솔루션 ‘스마트웍스’컨설팅 강화해 제품 및 비즈니스 룰 프레임웍 개발
오늘날의 기업환경은 날로 발전되어 복잡한 비즈니스 로직과 대용량 데이터로 구성된 시스템을 활용하여야만 업무에 대한 지원을 원활하게 할 수 있게 되었다. 특히 기업의 민첩성이 매우 중요한 요소로 대두되어 각 기업에서는 시스템에 대한 민첩성을 어떻게 확보할 수 있는지에 대한 많은 연구를 지속하고 있다.

현재는 그 답을 2003년부터 점차 확대되기 시작한 BPM(Business Process Management)과 BRE(Business Rule Engine)에서 찾았으며, 각 기업은 너나할 것 없이 이 두 개의 시스템을 도입하고 있는 실정이다. 이와 같은 환경을 기반으로 하여 해외에서 비즈니스 룰 하면 가장 먼저 떠오르는 제품 중 하나가 ILOG사의 JRules이다.

국내에 JRules를 공급하고 있는 KSTEC(대표 이승도)은 올해로 8년째 ILOG사 제품을 공급하고 있으며, 특히 JRules의 경우는 제품 공급뿐만 아니라 Professional service라고 불리는 컨설팅 사업을 동시에 진행하고 있다. 즉, KSTEC의 주된 사업 방향은 제품 공급 및 공급된 제품과 연계된 컨설팅과 개발에 초점을 맞추고 있다.

KSTEC은 이러한 사업 영역 중 2006년에는 컨설팅 영역을 대폭 강화하여 컨설팅 팀을 별도로 구성하였으며 단순히 ILOG 사의 JRules 제품만 연구하는 것이 아니라, 비즈니스 룰의 전체적인 프레임워크를 개발하고 있다.

특히 비즈니스 룰을 보다 효과적으로 기업에서 적용할 수 있도록 SmartWorks라는 비즈니스 룰 프레임워크를 개발하였으며, 기존의 레퍼런스 사이트를 기반으로 적용/확산해 나가고 있다. KSTEC은 개발된 SmartWorks 프레임워크를 사용하여 국내뿐만 아니라 해외 공략에도 초점을 맞추고 있으며, 산업군도 금융에서 시작하여 점차 제조, 공공 분야로 확대해 나가고 있다.

또한 국내에서 2004년과 2005년 연속으로 생명보험사 및 손해 보험사의 차세대 비즈니스 룰 시스템으로 선정되어 현재 시스템을 구축 하거나 구축을 완료하였으며, 재경부의 AML(Anti Money Laundry) 시스템 및 도로공사의 재해방지 시스템을 개발 중에 있는 등 비즈니스 룰 사업 영역을 점차 확대해 나가고 있다. 이렇게 JRules를 국내 확산 할 수 있었던 것은 ILOG 본사의 개발 방법론인 ISIS(ILOG Software Implementation Standard)를 국내 실정에 맞도록 커스터마이징 하여 국내 유수의 기업에 제공하고 있는 등 비즈니스 룰 기술에 있어서 세계적인 기술을 보유하고 있기 때문이다.

또한 국내 여러 대학과 연계하여 비즈니스 룰을 학문적으로도 함께 진행하고 있으며, 비즈니스 룰 교육을 통한 비즈니스 룰 확산에 많은 노력을 기울이고 있다. 특히 3월에 출시될 JRules 차기 버전인 6.0을 사용하여 이미 SmartWorks 프레임워크의 중요 부분을 동시에 개발하고 있으며, 정식으로 출시된 이후에는 제품과 동시에 프레임워크를 사용하여 시장 공략을 준비하고 있다.

이렇게 국내에서 비즈니스 룰 분야에서 최고의 기술력을 인정받은 KSTEC은 단순히 비즈니스 룰을 사업 영역에만 국한 하는 것이 아니라 비즈니스 룰의 국내 기술 발전을 위해 점차 관련 영역을 확대해 나가고 있는 등 2006년은 국내 BRMS 시장의 원년으로 만들 야심찬 계획을 준비 하고 있다.

ILOG JRules 6.0
더욱 강력해진 비즈니스 룰 관리기능 및 개발환경


세계적으로 BRE(Business Rule Engine) 시장 점유율 1위를 보이고 있는 ILOG사의 BRMS(Business Rule Management System) 제품군중 하나인 ILOG JRules의 차기 버전인 6.0이 최근 발표됐다. 프로젝트명 Storm으로 개발된 ILOG JRules 6.0 버전은 기존의 버전과 달리 Eclipse에 통합된 환경으로 제공된다.

따라서 BOM(Business Object Model)과 XOM(eXecution Object Model)을 동일한 환경에서 개발할 수 있기 때문에 효율적인 시스템 개발이 가능하다. JRules 6.0에서 가장 중요한 세 개의 컴포넌트에 대한 특징을 살펴본다.

ILOG JRules 6.0은 기본적으로 세 가지 요소로 구성된다. 하나는 개발자를 위한 '개발 환경'이며 다른 하나는 환경 설정 및 비즈니스 사용자를 위한 '관리 환경', 그리고 나머지 하나는 비즈니스 룰을 실행하기 위한 '실행 환경'이다. 이와 같이 구성 요소를 세분화 한 것은 비즈니스 룰 시스템의 발전 방향과 일치한다고 볼 수 있다. 각각의 사용자에 대해 특화된 환경을 제공함에 따라 보다 강력하고 유연한 비즈니스 룰을 개발 할 수 있게 하는 것이다.

Eclipse와 통합 IDE 환경인 Rule Studio 제공
ILOG JRules 6.0은 이전 버전과 달리 Eclipse와 통합된 형태의 IDE 환경을 제공한다. 룰을 작성하는 도구의 이름도 기존의 룰 빌더(Rule Builder)에서 룰 스튜디오(Rule Studio)로 명명되었다. 이는 ILOG JRules 6.0이 단순히 Eclipse와 통합되었다는 것 이외의 다른 의미를 갖게 된다. 6.0 버전에서는 IT 개발자의 영역과 비즈니스 사용자의 영역을 엄격하게 구분하여 룰을 작성하도록 한다는 의미를 가지게 되는 것이다<그림 1>.

Eclipse에 통합된 룰 개발 환경인 룰 스튜디오의 사용법은 기존의 룰 빌더를 사용하는 것과 크게 다르지 않다. 단지 가장 큰 차이점을 보인다면 룰을 작성하기 위한 룰 프로젝트 생성시 이미 이클립스에 등록되어 있는 Java 프로젝트를 포함하거나 혹은 다른 룰 프로젝트를 포함할 수 있다는 것이다.

즉, 기존과 같이 룰 빌더에 룰에서 사용하는 XOM(eXecution Object Model)을 추가하기 위해 classpath에 추가한다기보다는 룰의 프로젝트 안에 타 프로젝트로 포함할 수 있다는 것이다. 또한 룰을 관리하는데 있어서 기존과 달리 각각의 룰 구성 요소 별로 룰을 관리/개발 할 수 있다는 장점이 존재한다<그림 2>. 이러한 룰 구성요소는 룰 작성시 매우 중요한 파트가 되므로 각각의 폴더에 대해서 정확히 이해하고 룰을 작성해야 한다.

또한 룰 스튜디오에서는 기존과 같이 세 가지 형태의 비즈니스 룰과 각각의 룰의 순서를 정렬할 수 있는 룰 플로우를 기본적으로 제공하고 있으며, 룰을 저장하기 위한 레파지토리로는 SCC 표준을 따르는 버전 관리 도구로 사용될 수 있도록 되어 있다.

Rule Team Server 제공
Rule Team Server는 버전 6에서 최초로 도입된 개념으로 비즈니스 사용자를 위한 룰 편집 화면과 룰을 저장하고 있는 룰 레파지토리에 대한 view를 제공하고 있다<그림 4>. 룰 팀 서버는 기본적으로 웹 환경에서 제공되며, 웹 서버와 웹 어플리케이션 서버 모든 곳에 설치가 가능하다.

위의 <표>는 Rule Studio가 기본적으로 지원하고 있는 웹 서버와 웹 애플리케이션 목록 및 버전이다. 물론 이외의 서버들도 J2EE 1.3 및 1.4 표준을 지원하면 연동이 가능하도록 되어 있다. 룰 팀 서버의 기본 화면은 Navigation / Content / Preview 이와 같이 세 가지 영역으로 구분되어 있으며<그림 5>, 사용자는 navigation 영역에서 해당 폴더를 선택하고 content 영역에서 폴더 안에 있는 구성요소를 선택한 후 preview 영역에서 그 구성요소에 대한 값을 볼 수 있도록 되어 있다. 이때 룰 스튜디오와 다른 점이 있다면, 룰 스튜디오와는 달리 룰 각각의 구성요소에 대한 내용을 보여주는 것이 아니라 룰만을 보여주고 있다는 것이다.

Rule Execution Server 제공
마지막으로 소개할 구성요소는 룰 실행 서버(Rule Execution Server)라 불리는 룰의 실행 환경이다. 룰 실행 서버는 작성된 비즈니스 룰을 보다 빠르고 쉽게 수행시키는 역할을 담당한다. 즉, 기존의 룰 개발자는 룰 개발뿐만 아니라, 각각의 환경에 맞추어 룰을 실행 시키는 클라이언트 혹은 서버를 개발했어야 했다.

그러나 각각의 개발자가 직접 비즈니스 룰 엔진에 접근하여 프로그램을 작성하다 보니 각 개발자가 개발하는 방식에 따라 속도나 안전성에 많은 영향을 받곤 했었다. 그러나 룰 실행 서버를 사용하면 룰을 실행시킬 때, 단순히 EJB 호출하듯이 혹은 다른 클래스의 메소드를 호출하듯이 클라이언트 영역에서 호출하면 작성된 비즈니스 룰이 매우 빠르게 실행될 수 있게 된다<그림 6>.

또한 룰을 배포하는 것도 one-click으로 가능하며, 이는 룰 스튜디오 혹은 룰 팀 서버 모두 동일한 방법으로 배포할 수 있도록 되어 있다<그림 7>.

룰 실행 서버는 룰을 실행하는 것 이외에도 룰 실행 내역을 모니터링 하거나 혹은 WAS와 연계하여 클러스터링 환경을 제공하여 보다 견고한 실행 환경을 제공한다. 이러한 모니터링 환경은 JMX(Java Management eXetension)을 기반으로 개발되었기 때문에 외부 모니터링 도구와 쉽게 연계될 수 있으며 혹은 다른 도구와 동시에 모니터링 할 수 있다는 장점을 지니게 된다.

보다 강력해진 비즈니스 룰 관리 및 개발환경 ILOG JRules 6.0은 기존과 많은 면에서 다른 측면을 보이고 있다. 특히 본 글에서 나타낸 것과 같이 단순히 비즈니스 룰을 작성하는 것에 중점을 두기 보다는 비즈니스 룰을 관리하고 개발하는 환경을 보다 편리하고 강력히 제공한다는 점이 가장 크다고 볼 수 있다.

비즈니스 룰을 사용하여 시스템을 개발한다는 것은 기존과 같이 단순히 코드 혹은 데이터로 되어 있는 영역을 비즈니스 룰이라는 도구로 대치하는 것이 아니라 실행 및 관리 환경도 비즈니스 룰의 사상에 맞추어 변해야 원하는 시스템을 만들 수 있는 것이다. 따라서 이제는 비즈니스 룰을 개발할 때 기존과 같이 시스템의 실행 영역만을 고려하는 것이 아니라 비즈니스 룰을 실행/관리/개발 할 수 있는 모든 환경적인 측면에서 고려해야 할 것이며, ILOG JRules는 이러한 모든 측면을 만족시키고 있는 비즈니스 룰 관리 도구라고 볼 수 있다.

여백
컴퓨터월드 추천기업 솔루션
인기기사 순위
IT Daily 추천기업 솔루션
(우)08503 서울특별시 금천구 가산디지털1로 181 (가산 W CENTER) 1713~1715호
TEL: 02-2039-6160  FAX: 02-2039-6163   사업자등록번호:106-86-40304
개인정보/청소년보호책임자:김선오  등록번호:서울 아 00418  등록일자:2007.08  발행인:김용석  편집인:김선오