KR20150106365A - 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템 및 그 표현 방법 - Google Patents
계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템 및 그 표현 방법 Download PDFInfo
- Publication number
- KR20150106365A KR20150106365A KR1020150033096A KR20150033096A KR20150106365A KR 20150106365 A KR20150106365 A KR 20150106365A KR 1020150033096 A KR1020150033096 A KR 1020150033096A KR 20150033096 A KR20150033096 A KR 20150033096A KR 20150106365 A KR20150106365 A KR 20150106365A
- Authority
- KR
- South Korea
- Prior art keywords
- rule
- business
- rules
- condition
- hierarchical
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0637—Strategic management or analysis, e.g. setting a goal or target of an organisation; Planning actions based on goals; Analysis or evaluation of effectiveness of goals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Entrepreneurship & Innovation (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Tourism & Hospitality (AREA)
- Quality & Reliability (AREA)
- Operations Research (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Educational Administration (AREA)
- Software Systems (AREA)
- Development Economics (AREA)
- Game Theory and Decision Science (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Devices For Executing Special Programs (AREA)
Abstract
본 발명은 IT 비전문가 들이 기업의 업무 규칙을 엑셀과 유사한 사용자 인터페이스를 통해 Non-Programming 방식으로 쉽고 편리하게 표현하는 규칙 표현 템플릿을 제공하는 것이 목적이다. 이를 위해서, 업무에 대한 결정 방법을 수행하는 룰(rule)을 생성 및 관리하며, 이를 통해 업무 해결을 수행하는 비즈니스 룰 관리 시스템(BRMS)에 있어서, 업무에 대한 룰 처리 요청이 입력되는 룰 처리 요청부;와 상기 룰을 개발하고 관리하며 생성한 룰을 필요에 따라 특정의 룰 템플릿으로 생성하는 룰 생성 및 관리부;와 생성된 상기 룰이 저장되어 있는 룰 저장소;와 상기 룰을 이용하여 처리된 결과값이 저장되어 있는 룰 캐쉬부; 및 상기 룰 처리 요청에 해당하는 업무를 처리할 수 있는 룰을 이용하여 업무 해결을 수행하는 룰 엔진;을 포함하는 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템이 제공된다.
Description
본 발명은 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템 및 그 방법에 관한 것으로, 보다 상세하게는 서로 계층적으로 연관되어 있는 업무 요건(비즈니스 룰)에 대한 결정 방법을 수행하는 룰을 통해, 연관된 룰의 결과를 함수의 입력값으로 이용하여 최적의 업무 결과를 수행하도록 하는 시스템 및 그 방법에 대한 것이다.
종래의 업무 시스템 개발의 수단으로서는, 업무 요건(비즈니스 룰)을 시스템 사양에 의존적인 특정 프로그램 언어를 통해 하드 코딩을 함으로써 시스템을 구축했다. 이러한 경우, 업무 요건 또는 시스템의 사양 변경이 발생했을 때, 프로그램의 소스 코드를 조정/수정하거나, 프로그램 언어를 바꾸어 재 작성하는 작업 공정이 발생한다.
이러한 작업 공정이 빈번히 일어나면, 개발 비용이 증가되고, 생산성이나 품질의 저하, 납기의 연장으로 이어진다. 이러한 업무를 해결하기 위해서, 최근 기업들에서는 BRMS(BUSINESS RULE MANAGEMENT SYSTEM)의 수단을 도입하는 곳이 증가하고 있다.
BRMS는 정의하고자 하는 비즈니스 룰을 프로그램과 분리하여 관리하고, 룰 엔진에 의한 해석/실행 서비스를 통해 프로그램에 결과를 제공하는 것이다.
이와 같이 BRMS는 비즈니스 상의 룰을 별도로 일괄 관리함으로써, 어플리케이션으로부터 독립시켜 업무 로직을 개발/관리/실행 가능하게 한다.
대한민국공개특허 제10-2013-0055683호인 "비즈니스 룰의 편집 및 컴파일"에는 그래프 기반의 연산을 이용하여 비즈니스 룰의 변환 및 편집을 하는 기술이 언급되어 있다.
그러나, 상기의 특허에도 기업의 다양한 업무규칙을 프로그램에서 분리해 체계적인 객체화를 통해 비즈니스 룰로 관리하고, 규칙의 History 관리 및 규칙 검증 등 다양한 관리 기능과 API를 통한 서비스를 제공하여 어플리케이션에 유연성을 제공함으로써 신속하고 유연한 비즈니스 운영이 가능하게 하는, 시스템 개발 및 유지보수 노력, 비용을 절감할 수 있는 특징은 기술되어 있지 않다.
본 발명이 이루고자 하는 기술적 과제는, IT 비전문가 들이 기업의 업무 규칙을 엑셀과 유사한 사용자 인터페이스를 통해 Non-Programming 방식으로 쉽고 편리하게 표현할 수 있도록, 다양한 업무 요건의 규칙을 수용하는 테이블 형식, 디시전 테이블 형식, 분기 형식, 플로우 형식 등의 규칙(룰) 표현 템플릿을 제공하는 데 있다.
또한, 계층구조로 세분화된 단위 업무 규칙 별 상호 구조적인 관계를 정립하여, 공통 업무 또는 단위 업무별로 필요한 업무 로직을 내포한 비즈니스 룰을 등록하고, 룰 작성 과정에서 발생하는 룰의 실행 흐름과 룰 간 호출관계를 그래픽하게 표현하여 제공함으로써 가독성을 높이고, 유지보수가 용이한 룰 저작 도구를 제공하는데 있다.
본 발명의 다른 목적들은 이하의 실시 예에 대한 설명을 통해 쉽게 이해될 수 있을 것이다.
본 발명의 일측에 따르면, 업무에 대한 결정 방법을 수행하는 룰(rule)을 생성 및 관리하며, 이를 통해 업무 해결을 수행하는 비즈니스 룰 관리 시스템(BRMS)에 있어서, 업무에 대한 룰 처리 요청이 입력되는 룰 처리 요청부;와 상기 룰을 개발하고 관리하며 생성한 룰을 필요에 따라 특정의 룰 템플릿으로 생성하는 룰 생성 및 관리부;와 생성된 상기 룰이 저장되어 있는 룰 저장소;와 상기 룰을 이용하여 처리된 결과값이 저장되어 있는 룰 캐쉬부; 및 상기 룰 처리 요청에 해당하는 업무를 처리할 수 있는 룰을 이용하여 업무 해결을 수행하는 룰 엔진;을 포함하는 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템이 제공된다.
여기서, 상기 룰 템플릿은 실행 영역과 조건 영역으로 구성되어 있는 계층적인 연관 구조로 이루어져 있어, 상기 계층적인 구조에서 N 번째에 depth 에 해당하는 룰 템플릿은 N+1번째의 depth 에 해당하는 룰 템플릿의 결과값을 상기 실행 영역의 함수의 입력값 또는 상기 조건 영역의 조건값으로 사용하여 상기 룰 처리 요청을 수행하는 것을 특징으로 할 수 있다.
여기서, 상기 룰은 모듈화되어 있는 함수이며 각각의 룰은 연관된 업무 흐름에 따라 서로 계층적으로 연관되어 있으며, 하위 룰을 통한 결과값은 상위 룰에 결과값을 생성하기 위해 입력되며, 개별 룰은 다른 룰을 호출하거나 피호출될 수 있는 것을 특징으로 할 수 있다.
여기서, 상기 룰 생성 및 관리부는 상기 업무를 계층적으로 표현하여, 상기 업무 수행에 필요한 룰을 해당 속성과 버젼을 리스트를 통해 표현하여 사용자에 의해 생성된 함수가 포함된 새로운 룰을 생성하거나 이미 생성된 룰을 편집하는 편집툴을 제공하며, 생성된 룰을 특정의 템플릿 형식으로 생성하는 것을 특징으로 할 수 있다.
여기서, 상기 룰 엔진은, 상기 룰 처리 요청이 입력되는 경우에, 상기 룰 저장소를 검색하여 해당하는 룰을 서치하고, 상기 캐시부의 상기 결과값 중 필요한 결과값이 있는 경우에 이를 서치된 룰에 적용하여 상기 룰 처리 요청에 대한 결과값을 생성하는 것을 특징으로 할 수 있다.
여기서, 상기 룰 템플릿은 엑셀 형식의 디시전(decision) 테이블 템플릿으로 구성되어 있어 필요에 따라서 상기 룰 템플릿 간에 내용을 카피하여 수정 편집이 가능하고, 엑셀 프로그램에서 작성한 내용을 상기 룰 템플릿 생성시에 이용할 수 있는 것을 특징으로 할 수 있다.
여기서, 상기 디시전(decision) 테이블 템플릿은 조건 영역과 리턴 영역을 포함하고, 상기 조건 영역은 비교 팩터인 하나의 조건식(룰 표현식)과 상기 조건식의 결과와 비교할 일련의 비교값으로 조건 영역의 각 조건을 열로 구성하고, 상기 리턴 영역의 행에는 상기 조건식의 결과와 상기 비교값의 비교를 통해 각 조건이 모두 만족하는 값을 표현하는 것을 특징으로 할 수 있다.
또한, 업무에 대한 결정 방법을 수행하는 룰(rule)을 생성 및 관리하며, 이를 통해 업무 해결을 수행하는 비즈니스 룰 관리 시스템(BRMS)을 이용한 방법에 있어서, a) 업무에 대한 룰 처리 요청이 입력되는 단계;와 b) 상기 룰 중에서 상기 룰 처리 요청을 수행하는 업무 처리 룰을 선택하는 단계;와 c) 룰 저장소에 저장되어 있는 상기 룰들간의 연관 분석를 분석하여 상기 업무 처리 룰과 연관된 룰을 서치하는 단계; 및 d) 룰 캐쉬부에 저장된 상기 업무 처리 룰과 연관된 룰의 결과값을 이용하여 상기 업무 처리 룰을 통해 상기 룰 처리 요청에 대한 결과를 생성하는 단계;를 포함하되, 상기 룰은 필요에 따라 특정의 형식을 가지는 롤 템플릿으로 구성되어 있는 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 방법이 제공된다.
여기서, 상기 업무 처리 룰 및 상기 업무 처리 룰과 연관된 룰은 각각 함수로 구성되며, 업무 흐름에 따라 서로 계층적인 연관 구조를 가지고 있으며, 개별 룰은 다른 룰을 호출하거나 피호출될 수 있으며, 각각 하위 계층의 룰의 결과값을 함수의 옵션값으로 이용하는 것을 특징으로 할 수 있다.
여기서, 상기 룰 템플릿은 실행 영역과 조건 영역으로 구성되어 있는 계층적인 연관 구조로 이루어져 있어, 상기 계층적인 구조에서 N 번째에 depth 에 해당하는 룰 템플릿은 N+1번째의 depth 에 해당하는 룰 템플릿의 결과값을 상기 실행 영역의 함수의 입력값 또는 상기 조건 영역의 조건값으로 사용하여 상기 룰 처리 요청을 수행하는 것을 특징으로 할 수 있다.
여기서, 상기 룰 템플릿은 엑셀 형식의 디시전(decision) 테이블 템플릿으로 구성되어 있어 필요에 따라서 상기 룰 템플릿 간에 내용을 카피하여 수정 편집이 가능하고, 엑셀 프로그램에서 작성한 내용을 상기 룰 템플릿 생성시에 이용할 수 있는 것을 특징으로 할 수 있다.
여기서, 상기 디시전(decision) 테이블 템플릿은 조건 영역과 리턴 영역을 포함하고, 상기 조건 영역은 비교 팩터인 하나의 조건식(룰 표현식)과 상기 조건식의 결과와 비교할 일련의 비교값으로 조건 영역의 각 조건을 열로 구성하고, 상기 리턴 영역의 행에는 상기 조건식의 결과와 상기 비교값의 비교를 통해 각 조건이 모두 만족하는 값을 표현하는 것을 특징으로 할 수 있다.
본 발명은 기업의 다양한 업무규칙을 프로그램에서 분리해 체계적인 객체화를 통해 비즈니스 룰로 관리하고, 규칙의 History 관리 및 규칙 검증 등 다양한 관리 기능과 API를 통한 서비스를 제공하여 어플리케이션에 유연성을 제공함으로써 신속하고 유연한 비즈니스 운영이 가능하게 하고, 시스템 개발 및 유지보수 노력, 비용을 절감할 수 있는 효과가 있다.
또한, 본 발명은 빠른 처리성능을 제공하기 위하여 룰 저장소에 저장된 룰 내용과 중간 단계의 결과값을 메모리에 Caching하여 수행 시 DB를 접근하지 않고 메모리에서 바로 처리할 수 있도록 하여 업무 결정 속도를 높일 수 있는 효과가 있다.
또한, 본 발명은 유사 규칙 작성 시 간단한 조작만으로 새로운 규칙으로 반영할 수 있으며, 다양한 검색 및 일괄 수정 기능 들을 제공하여 방대한 분량의 규칙을 편리하게 관리할 수 있는 효과가 있다.
도1은 InnoRules BRMS(Business Rule Management System)을 탑재한 InnorRules Product Factory의 시스템 구성도이다.
도2는 룰 빌더의 주요 모듈을 나타낸 도면이다.
도3은 InnoRules Server 시스템 구성의 한 예를 나타낸 도면이다.
도4는 Table 룰을 나타낸 도면이다.
도5는 Flow 룰을 나타낸 도면이다.
도6은 가변 룰을 나타낸 도면이다.
도7은 루프 룰을 나타낸 도면이다.
도8은 Decision Table 룰을 나타낸 도면이다.
도9는 Data 룰을 나타낸 도면이다.
도10은 CallBack 룰을 나타낸 도면이다.
도11은 조건의 우선순위를 설명하기 위한 도면이다.
도12는 처리단계의 공통 Componet룰 화를 설명하기 위한 도면이다.
도13는 본 발명의 일실시예로 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템을 통한 룰 구현 및 서비스 과정을 도시한 도면이다.
도14은 본 발명의 일실시예로 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템을 통한 룰 기반 업무 운영 과정을 도시한 도면이다.
도15은 본 발명의 일실시예로 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템의 구성을 나타낸 도면이다.
도16은 본 발명의 일실시예로 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템의 동작을 나타낸 순서도이다.
도17는 본 발명의 일 실시예로 룰 개발 및 편집환경의 화면 구성을 도시한 도면이다.
도18은 본 발명의 일 실시예로 계층적인 룰 연관관계를 이용하여 업무에 대한 룰 처리 요청을 수행하는 것을 나타낸 도면이다.
도2는 룰 빌더의 주요 모듈을 나타낸 도면이다.
도3은 InnoRules Server 시스템 구성의 한 예를 나타낸 도면이다.
도4는 Table 룰을 나타낸 도면이다.
도5는 Flow 룰을 나타낸 도면이다.
도6은 가변 룰을 나타낸 도면이다.
도7은 루프 룰을 나타낸 도면이다.
도8은 Decision Table 룰을 나타낸 도면이다.
도9는 Data 룰을 나타낸 도면이다.
도10은 CallBack 룰을 나타낸 도면이다.
도11은 조건의 우선순위를 설명하기 위한 도면이다.
도12는 처리단계의 공통 Componet룰 화를 설명하기 위한 도면이다.
도13는 본 발명의 일실시예로 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템을 통한 룰 구현 및 서비스 과정을 도시한 도면이다.
도14은 본 발명의 일실시예로 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템을 통한 룰 기반 업무 운영 과정을 도시한 도면이다.
도15은 본 발명의 일실시예로 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템의 구성을 나타낸 도면이다.
도16은 본 발명의 일실시예로 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템의 동작을 나타낸 순서도이다.
도17는 본 발명의 일 실시예로 룰 개발 및 편집환경의 화면 구성을 도시한 도면이다.
도18은 본 발명의 일 실시예로 계층적인 룰 연관관계를 이용하여 업무에 대한 룰 처리 요청을 수행하는 것을 나타낸 도면이다.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
본 발명에서 사용한 용어는 단지 특정 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
이하, 본 발명의 실시예를 첨부한 도면들을 참조하여 상세히 설명하기로 한다.
도1은 본 발명의 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템을 설명하기 위한 개념도이다.
본 발명의 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템은 다음과 같은 구성으로 비즈니스 룰 관리를 수행한다.
우선 통합관리 도구로서 룰을 개발하고 편집 등 종합관리를 수행하는 Rule Builder와 룰을 수행하는 Rule Engine과 개발 및 편집된 룰을 저장하는 Rule Repository(룰 저장소)로 구성되어 있다.
Rule Builder 는 client 에서 룰을 개발하기 위한 구성이고 server 의 Rule Builder server 를 통해 개발된 룰 및 편집된 룰을 Rule Repository에 저장한다.
Rule Builder Server 는 Rule 개발 처리를 담당하며 Rule Builder의 요청을 받아 룰 정보 및 내용을 룰 DB에 조회/변경하는 모듈이다.
Rule Engine은 application의 요청을 받아 룰 서비스를 수행하는 모듈이다.
Rule Repository는 룰 정보 및 내용, 사용자, 항목 등 룰과 관련된 모든 데이터를 관리하는 룰 저장소이다. Rule Repository는 서버에 포함되어 있을 수 있다.
Rule Server 는 TCP 를 통한 Rule service 요청을 Rule Engine 에 전달한다.
Web-server Adapter는 Web Service 요청을 Rule Engine을 전달하는 모듈이다.
Rule Engine Manager 는 Rule Engine과 Rule Builder Server의 상태를 모니터링하고 환경옵션을 관리하는 모듈이다.
도2는 룰 빌더의 주요 모듈을 나타낸 도면이다.
Permissions Module
- User Permission : 사용자는 관리자와 일반 사용자로 구성된다.
-- 관리자 : 사용자 관리와 최상위 업무 관리, 일반 사용자 권한 부여는 관리자 권한으로만 수행할 수 있다.
-- 일반 사용자 : 부여된 권한에 따라 항목 관리와, 룰 작성 및 관리를 수행할 수 있다.
- Business Permission : 각 업무 단위 별로 일반 사용자에게 권한을 부여한다.
External Interface Module
- DataBase : DB 조회룰에서 사용할 기간계 DB에 대한 연결 정보를 구성한다.
- SAP R/3 : RFC(Remote Function Call) 룰에서 사용할 SAP 서버에 대한 연결 정보를 구성한다.
Rule Editor Module
- 테이블 룰 : 조건 영역의 각 행의 룰 표현식을 수행하고 연산하여 결과가 참(True)인 조건 영역 행에 대한 실행 영역을 수행하고 결과를 반환하는 룰이다.
- 루프룰 : 반복 수행 로직을 수행하는 룰이다.
- Decision Table 룰 : 조건 영역 각 열 단위에 등록된 룰 표현식을 수행한 결과와 해당 열에 등록된 비교값과의 비교를 통해 만족하는 각 행에 등록되어 있는 결과값을 반환하는 룰이다.
- DB 조회룰 : 기간계 Legacy DB를 조회하기 위하여 Dynamic SQL를 사용하는 룰이다.
- 가변룰 : 파라미터에 따라 해당 이름을 갖는 룰로 분기(실행 후 결과값 참조)하는 룰이다.
- Call Back 룰 : 인자 전달을 통해 일반 프로그램에 있는 모듈을 호출하여 실행하고 그 결과를 돌려받는 룰이다.
- RFC 룰 : SAP 서버와 연동하는 룰이다.
- Flow 룰 : Flow Chart 형식으로 업무 흐름을 표현하는 룰이다.
- 데이터 룰 : Legacy DB Table의 특정 칼럼을 조건 영역의 비교값으로 사용하고, 또 다른 특정 칼럼을 결과값으로 이용하는 룰이다. 기타 동작 메커니즘은 Decision Table 룰과 같다.
- Syntax Checker : 룰 저장 시 문법 오류를 검사한다.
Rule Management Module
- Business Copy : 업무 단위의 복사 기능으로 기존 룰 그룹을 일괄 복사하여 신속한 룰 개발을 가능하게 한다.
- Relational Map : 선택된 룰을 호출하는 상위 룰과 선택된 룰에서 호출하는 하위 룰들간의 관계를 표시하여 룰들의 호출 관계를 손쉽게 파악할 수 있다.
- Rule Versioning : 일자 별로 업무가 변경될 시, 룰의 버전을 관리하여 룰 호출 시 일자에 맞는 버전이 자동 실행된다.
- Rule Reporter : 다양한 단계의 룰 리포트를 자동 생성한다.
Rule Tester Module
- Rule Tester : 룰 생성 후 정확성 및 타당성을 검증하는 것으로 룰에서 사용되는 항목 값들에 여러 경우의 다양한 데이터를 사용자가 입력하여 룰의 수행 결과를 테스트 및 Simulation이 가능하다.
- Rule Tracer : 하위 룰을 포함하여 룰의 실행 결과를 단계별로 보여주어 룰의 실행경로를 파악할 수 있다.
Rule Deployment Module
- Rule Deploy : 개발 시스템에서 운용 시스템으로 룰을 이관하는 경우 동시 이관 대상 룰, 룰의 에러 여부, 담당자 승인 여부 등을 검증한다.
- Consistency Checker : 개발 시스템에서 운용 시스템으로 이관되는 룰과, 운용계의 기존 룰 들간의 상호 모순성을 검증한다.
- Rule History : 개발 시스템에서 운용 시스템으로 룰 이관 시, 이관 히스토리를 관리한다.
도 3은 InnoRules Server 시스템 구성의 한 예를 나타낸 도면이다.
도 4는 Table 룰을 나타낸 도면이다.
도 5는 Flow 룰을 나타낸 도면이다.
도 6은 가변 룰을 나타낸 도면이다.
도 7은 루프 룰을 나타낸 도면이다.
도 8은 Decision Table 룰을 나타낸 도면이다.
Decision Table 룰은 DATA 성격이 강한 업무에서 주로 사용하는 룰 타입으로 한정된 동일 조건으로 구성된 룰로써 하위 룰을 포함한 룰인 경우 사용하며 정의된 룰의 내용은 메모리에 존재하므로 업무에 자주 이용되는 룰인 경우에 사용한다.
Decision Table 룰은 조건영역과 리턴영역으로 구성되어 조건영역의 Rule(여기서 룰은 {}로 표현된다)의 수행 결과에 따라 리턴 영역의 값(또는 룰 표현식 실행 결과)가 결과로서 상위 룰에 반환된다.
Decision Table 룰은 비교 팩터인 하나의 조건식(룰 표현식)과 이 조건식의 결과와 비교할 일련의 비교값으로 조건 영역의 각 조건(열)을 구성하고, 각 조건의 조건식의 결과와 비교값의 비교를 통해 각 조건이 모두 만족하는 행의 리턴이 반환되는 룰 템플릿이다.
각 조건은 실행 판단식을 통해 해당 조건의 조건식의 실행 여부를 지정할 수 있다. 실행 판단식이 기술되지 않았거나 실행 결과가 “참(T)”일 경우 해당 조건은 리턴 영역의 룰 표현식 실행 판단에 사용이 되고, 그렇지 않을 경우 제외된다.
각 조건(열) 간의 관계는 “AND”이다.
조건을 모두 만족하는 행이 없을 경우, 룰 리턴은 디폴트 리턴 영역에 지정된 디폴트 값(또는, 룰 표현식 실행 결과)를 갖게 되고, 결과가 있을 경우에는 무시된다.
Decision Table 룰의 지정 가능한 리턴 형식은 다음과 같다
1. 단일값 형식
단일값 형식으로 지정한 경우, 만족하는 첫 번째 조건 행에 대응하는 리턴 영역의 동일 행에 있는 룰 표현식이 실행되고, 룰 리턴은 단일값 형식을 갖는다. 항상 만족하는 1개의 조건이 있어야 하며, 룰 리턴 또한 항상 1개의 결과 값(행)을 가져야 한다.
2. 다중값 형식
다중값 형식으로 지정하고 모든 만족 조건을 실행 체크하는 경우, 만족하는 모든 조건 행이 대응하는 리턴 영역의 동일 행에 있는 룰 표현식이 실행되고, 룰 리턴은 다중값 형식을 갖는다. 다중값 형식으로 지정하고 모든 만족 조건 실행을 체크하지 않은 경우, 만족하는 첫 번째 조건 행에 대응하는 리턴 영역의 동일 행에 있는 룰 표현식이 실행되고 룰 리턴은 다중값 형식을 갖는다.
다중값 형식은 만족하는 조건이 없어 룰 리턴이 값을 가지지 않을 수 있고, 다수의 만족하는 조건이 있어 복수 개의 결과 값(행)을 가질 수 있다.
여기서, 리턴 항목의 데이터 타입은 문자형과 숫자형, 논리형이 사용 가능하다.
룰 표현식의 사용위치는 다음과 같다.
1.조건 영역의 실행 판단식
룰 표현식이 갖는 규칙을 준수하는 모든 룰 표현식 사용이 가능하다.
룰 표현식 결과는 기본형 단일값 형식으로서, 논리형 값인 "참(T)" 또는 "거짓(F)" 중 하나의 값을 가져야 한다.
2.조건 영역의 조건식
룰 표현식이 갖는 규칙을 준수하는 모든 룰 표현식 사용이 가능하다.
룰 표현식 결과는 기본형 단일값 형식이어야 한다.
3.조건 영역의 비교값
숫자형 또는 문자형 또는 논리형인 하나의 상수 값만 사용이 가능하다.
4.리턴 영역
룰 표현식이 갖는 규칙을 준수하는 모든 룰 표현식 사용이 가능하다.
5.디폴트 리턴 영역
조건을 모두 만족하는 행이 없을 경우, 룰 리턴은 디폴트 리턴 영역에 지정된 디폴트 값이나 디폴트 리턴 영역에 기술한 룰 표현식의 실행 결과를 갖게 된다.
디폴트 룰 표현식에는 리턴 영역의 룰 표현식이 갖는 규칙을 준수하는 모든 룰 표현식 사용이 가능하다.
도 9는 Data 룰을 나타낸 도면이다.
도 10은 CallBack 룰을 나타낸 도면이다.
도 11은 Table 룰로서, 조건의 우선순위를 설명하기 위한 도면이다.
Decision 및 Table 룰 처리시, 조건 열은 왼쪽에서 오른 쪽, 위에서 아래로 evaluation을 수행하고, 각 열 간의 AND 연산 결과가 "참(T)" 조건에 대응하는 행에 대해 실행 영역의 값(룰 호출식과 함수, 연산자 등으로 구성된 룰 표현식일 경우 해당 룰 표현식을 수행한 결과, 이러한 조건 및 실행 영역 셀 내 룰 표현식 사용은 N-Depth까지 가능하여 무제한)을 반환한다. 조건 영역의 각 조건 열이나 실행 영역의 각 열은 개수 제한이 없고, Rule Builder를 통해 가감이 가능하다.
도 12는 처리단계의 공통 Component룰 화를 설명하기 위한 도면이다.
처리 흐름을 중요시하는 업무인 경우, 일반적으로 프로그램 코딩으로 구현한 경우, 업무 흐름을 중심으로 코딩하게 된다. 이런 업무의 유지보수는 주로 프로세스가 중간에 삽입되거나, 업무 단위 별로 흐름이 달라서 중복 코딩작업을 하는 경우가 많다. 이런 업무를 룰로 구성할 경우에는 처리 흐름 단계별로 종속성을 제거한 공통 컴포넌트 룰(공통룰)을 구성하고, 컴포넌트 룰로 업무 흐름 룰을 구성한다.
도13는 본 발명의 일실시예로 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템을 통한 룰 구현 및 서비스 과정을 도시한 도면이다.
본 발명에서의 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템(100)은 다양한 업무 규칙을 중복 배제 및 체계적인 객체화를 통해 룰로 표현하고, BRMS의 규칙 검증 및 History 관리, API를 통한 서비스 등 다양한 기능을 통해 어플리케이션의 유연성을 실현할 수 있다.
룰(비즈니스 룰)은 업무지침, 업무 경험, 기존 프로그램, 기존 DB를 참조하여 생성하고, 본 발명의 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템(100)의 룰 통합관리 도구를 이용하여 룰을 개발 및 테스트하여 룰을 생성하고 이를 관리 및 운영한다.
생성된 룰은 룰 저장소(즉, 룰 저장부(120))에 저장된다. 이때, 룰은 업무연관 분석에 따라 계층적인 구조의 연관 관계(객체화, 공통화, 집중화)를 가지며 저장된다.
이후 해당 룰 처리 요청이 입력되면 룰 엔진이 이를 실행하여 결과를 반환한다.
도14은 본 발명의 일실시예로 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템을 통한 룰 기반 업무 운영 과정을 도시한 도면이다.
업무 분석을 통해 룰을 정의하고 테스트 및 오류 추적을 통해 룰을 개발한다.
이후 개발한 룰을 등록하거나 기존 룰에 복사 또는 조립하여 새로운 룰을 룰 저장소에 등록 및 업데이트 할 수 있다.
이때 룰은 다양한 룰 템플릿 형식으로 등록될 수 있다.
룰 저장소에 등록된 룰은 룰 검색 및 룰 이력 관리가 가능하며, 룰 연관 분석 분석에 의해 업무 요건 변화와 연관된 룰 범위 파악이 가능하여 빠르게 업무 변화에 대응이 가능하다.?본 발명에서의 룰은 엑셀 프로그램과 호환 가능하여 필요에 따라서 카피하여 수정 편집을 할 수 있다. 또한, 엑셀 프로그램에서 작성한 내용을 룰 생성시에 이용할 수도 있다.
본 발명의 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템(100)은 룰 개발, 운영, 처리과정을 다양한 룰 리포트로 생성하여 화면상에 표시할 수 있다.
도15은 본 발명의 일실시예로 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템의 구성을 나타낸 도면이다.
본 발명의 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템(100)은 룰 생성 및 관리부(110), 룰 저장부(120), 룰 처리 요청부(130), 룰 엔진(140), 룰 캐시부(150)를 포함한다.
룰 생성 및 관리부(110)는 업무 처리에 필요한 룰을 개발하고 편집, 관리하며 생성한 룰을 필요에 따라 특정의 룰 템플릿으로 생성한다.
이를 위해서 룰 생성 및 관리부(110)는 디스플레이 장치에 해당 룰 개발 및 관리 편집 과정을 GUI 형식으로 표현할 수 있다.
또한, 룰 생성 및 관리부(110)는 업무 수행에 필요한 룰의 해당 속성과 버전을 리스트를 통해 표현할 수 있고, 사용자에 의해 생성된 함수가 포함된 새로운 룰을 생성하거나 이미 생성된 룰을 수정 및 편집할 수 있다.
룰 저장부(120)는 룰 생성 및 관리부(110)를 통해 생성된 룰이 저장되어 있다.
룰 처리 요청부(130)는 업무에 대한 룰 처리 요청을 받아 룰 엔진에 전달하고 룰 엔지의 실행 결과를 반환하는 다양한 프로그램 언어에 대응하는 API(Application Programming Interface) 이다. 예를 들어, 자바, C/C++, COBOL 등이 있다.
룰 엔진(140)은 룰 처리 요청에 해당하는 업무를 처리할 수 있는 룰을 이용하여 업무 해결을 수행한다.
룰 캐시부(150)는 룰을 이용하여 처리된 결과값이 저장되어 있다.
룰 엔진(140)은 룰 처리 요청에 해당하는 업무를 처리하는 경우에 룰 캐시부(150)에 저장되어 있는 관련 룰의 결과값을 이용하여 해당 룰 처리 요청에 대한 결과를 생성할 수 있다.
도16은 본 발명의 일실시예로 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템의 동작을 나타낸 순서도이다.
S100 단계는 룰 처리 요청이 입력되는 단계이다.
본 발명의 사용자는 해결하고자하는 업무가 발생하면, 룰 처리 요청을 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템(100)에 요청한다.
여기서, 룰 처리 요청은 사용자가 디스플레이 화면에서 업무 프로그램을 통해 해당 업무를 처리하는 시작 단계를 포함한다.
S110 단계는 룰 중에서 상기 룰 처리 요청을 수행하는 업무 처리 룰을 선택하는 단계이다.
사용자에 의해서 업무에 대한 룰 처리 요청이 입력되면 본 발명의 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템(100)은 해당 업무를 수행할 수 있는 룰을 선택하고, 연관되어 실행할 룰을 다음 S120 단계를 통해 탐색한다.
즉, 해당 업무를 수행할 수 있는 룰을 사용자가 원하는 형식의 룰 템플릿으로 화면에 표시한다.
S120 단계는 룰 저장소에 저장되어 있는 상기 룰들간의 연관관계를 분석하여 상기 업무 처리 룰과 연관된 룰을 탐색하는 단계이다.
본 발명의 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템(100)은 사용자가 원하는 업무을 수행할 수 있는 룰 템플릿의 내용을 분석하여 해당 룰 템플릿의 함수에 포함되어 있는 연관된 룰을 탐색하여 알아내고, S130 단계를 거쳐 캐시를 이용하거나, 추가 실행을 하여 사용자가 요구한 룰의 결과를 생성하고 반환한다.
S130 단계는 룰 캐시부에 저장된 상기 업무 처리 룰과 연관된 룰의 결과값을 이용하여 상기 업무 처리 룰을 통해 상기 룰 처리 요청에 대한 결과를 생성하는 단계이다.
즉, 사용자가 원하는 업무를 수행할 수 있는 룰 템플릿의 함수를 구성하는 연관된 룰의 결과를 룰 템플릿의 함수에 대치하여 사용자가 원하는 업무의 처리 결과를 생성한다.
여기서, 업무 처리 룰 및 상기 업무 처리 룰과 연관된 룰은 각각 함수로 구성되며, 업무 흐름에 따라 서로 계층적인 연관 구조를 가지고 있으며, 개별 룰은 다른 룰을 호출하거나 피호출될 수 있으며(즉, 룰은 다른 룰을 함수에 포함할 수 있으며, 다른 룰의 함수에 포함될 수 있다), 각각 하위 계층의 룰의 결과값을 함수의 옵션값으로 이용할 수 있다.
본 발명에서의 룰 템플릿은 실행 영역과 조건 영역으로 구성되어 있는 계층적인 연관 구조로 이루어져 있다.
실행영역은 해당 룰 템플릿이 수행하는 업무에 대한 함수를 의미하고, 조건 영역은 해당 함수를 구성하는 연관된 룰의 결과값을 의미한다.
계층적인 구조를 이루는 룰 템플릿에서, N 번째에 depth 에 해당하는 룰 템플릿은 N+1번째의 depth 에 해당하는 룰 템플릿의 결과값을 실행 영역의 함수의 입력값 또는 조건 영역의 조건값으로 사용하여 룰 처리 요청을 수행한다.
이에 대한 상세한 설명은 도18에서 설명하기로 한다.
도17는 본 발명의 일 실시예로 룰 개발 및 편집환경의 화면 구성을 도시한 도면이다.
1번 화면은 계층적인 업무 구조를 표현한 화면 구성이다.
1번 화면에 도시되어 있는 바와 같이 본 발명의 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템(100)은 업무를 계층적, 체계적으로 표시하여 업무간에 상하 종속적인 계층 구조를 쉽게 파악하고 정의할 수 있도록 표시한다.
2번 화면은 룰 리스트를 표시하는 화면이다.
본 발명의 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템(100)은 룰 컴포넌트를 구성하는 최소 단위의 룰을 속성과 버전을 표시하여 리스트로 표시할 수 있다.
3번 화면은 룰 생성 및 편집을 위한 화면이다.
본 발명의 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템(100)은 엑셀 형태와 같은 직관적이고 친숙한 사용환경을 제공하여 사용자가 보다 편리하고 간편하게 룰을 생성하고 편집할 수 있도록 한다.
4번 화면은 룰 템플릿을 선택하는 화면이다.
본 발명의 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템(100)은 생성 또는 편집한 룰을 다양한 형태의 룰 템플릿으로 변환하여 사용자가 직관적으로 해당 룰을 파악할 수 있도록 할 수 있다.
여기서, 룰 템플릿은 테이블 룰, 가변 룰, DB 조회룰, Call Back 룰, 루프룰, RFC 룰, Flow 룰 등이 될 수 있다.
도18은 본 발명의 일 실시예로 계층적인 룰 연관관계를 이용하여 업무에 대한 룰 처리 요청을 수행하는 것을 나타낸 도면이다.
사용자가 할인율 계산에 대한 업무를 요청하는 경우에 본 발명의 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템(100)은 할인율을 처리하는 룰을 다수의 룰 템플릿으로 작성하고, 각 룰 템플릿의 조건 영역이나 실행 영역 셀에 룰 표현식을 기술함으로써 구현한다. 도해에서 사용된 중괄호({ }) 표기가 다른 룰을 호출하는 표현식이다.
여기서, 룰 템플릿 10은 할인율에 대한 계산을 처리하는 룰이 Decision Table 룰 형태로 표시되어 있는 룰 템플릿이고, 룰 템플릿 20은 룰 템플릿 10의 1번째 depth 위치에 있는 룰 템플릿이다.
즉, 룰 템플릿 20은 룰 템플릿 10의 함수를 구성하는 {요일추가할인율}에 대한 룰이다.
여기서, 할인율을 구하기 위해서는 조건 영역의 {VIP여부}에 대한 룰과 {전월실적체크}에 대한 룰이 필요하다.
{VIP여부}에 대한 룰은 {고객정보체크}에 대한 룰이 필요하고, {전월실적체크}에 대한 룰은 {실적집계}에 대한 룰이 필요하다.
여기서, {고객정보체크}에 대한 룰과 {실적집계}에 대한 룰은 룰 템플릿 10의 2번째 depth를 가진 연관 룰이 된다.
룰 템플릿 30은 {서비스적용여부}에 대한 룰이 Table 룰 형태로 표시되어 있는 룰 템플릿이고, 룰 템플릿 40은 {전월실적등급}에 대한 룰이 Flow 룰 형태로 표현되어 있는 Flow 룰이다.
상기에서는 본 발명의 실시예를 참조하여 설명하였지만, 해당 기술 분야에서 통상의 지식을 가진 자라면 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
본 발명은 또한 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 장치에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 롬(ROM), 램(RAM), CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 유무선 통신망으로 연결된 컴퓨터 장치에 분산되어 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
100 : 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템
110 : 룰 생성 및 관리부
120 : 룰 저장부
130 : 룰 처리요청부
140 : 룰 엔진
150 : 룰 캐쉬부
110 : 룰 생성 및 관리부
120 : 룰 저장부
130 : 룰 처리요청부
140 : 룰 엔진
150 : 룰 캐쉬부
Claims (12)
- 업무에 대한 결정 방법을 수행하는 룰(rule)을 생성 및 관리하며, 이를 통해 업무 해결을 수행하는 비즈니스 룰 관리 시스템(BRMS)에 있어서,
업무에 대한 룰 처리 요청이 입력되는 룰 처리 요청부;
상기 룰을 개발하고 관리하며 생성한 룰을 필요에 따라 특정의 룰 템플릿으로 생성하는 룰 생성 및 관리부;
생성된 상기 룰이 저장되어 있는 룰 저장소;
상기 룰을 이용하여 처리된 결과값이 저장되어 있는 룰 캐쉬부; 및
상기 룰 처리 요청에 해당하는 업무를 처리할 수 있는 룰을 이용하여 업무 해결을 수행하는 룰 엔진;
을 포함하는 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템.
- 제1항에 있어서,
상기 룰 템플릿은 실행 영역과 조건 영역으로 구성되어 있는 계층적인 연관 구조로 이루어져 있어,
상기 계층적인 구조에서 N 번째에 depth 에 해당하는 룰 템플릿은 N+1번째의 depth 에 해당하는 룰 템플릿의 결과값을 상기 실행 영역의 함수의 입력값 또는 상기 조건 영역의 조건값으로 사용하여, 상기 룰 처리 요청을 수행하는 것을 특징으로 하는 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템.
- 제1항에 있어서,
상기 룰은 모듈화되어 있는 함수이며 각각의 룰은 연관된 업무 흐름에 따라 서로 계층적으로 연관되어 있으며, 하위 룰을 통한 결과값은 상위 룰에 결과값을 생성하기 위해 입력되며, 개별 룰은 다른 룰을 호출하거나 피호출될 수 있는 것을 특징으로 하는 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템.
- 제1항에 있어서,
상기 룰 생성 및 관리부는
상기 업무를 계층적으로 표현하여,
상기 업무 수행에 필요한 룰의 해당 속성과 버젼을 리스트를 통해 표현하여 사용자에 의해 생성된 함수가 포함된 새로운 룰을 생성하거나 이미 생성된 룰을 편집하는 편집툴을 제공하며,
생성된 룰을 특정의 템플릿 형식으로 생성하는 것을 특징으로 하는 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템.
- 제1항에 있어서,
상기 룰 엔진은,
상기 룰 처리 요청이 입력되는 경우에, 상기 룰 저장소를 검색하여 해당하는 룰을 서치하고, 상기 캐시부의 상기 결과값 중 필요한 결과값이 있는 경우에 이를 서치된 룰에 적용하여 상기 룰 처리 요청에 대한 결과값을 생성하는 것을 특징으로 하는 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템.
- 제1항 내지 제5항 중 어느 하나의 항에 있어서,
상기 룰 템플릿은 엑셀 형식의 디시전(decision) 테이블 템플릿으로 구성되어 있어, 필요에 따라서 상기 룰 템플릿 간에 내용을 카피하여 수정 편집이 가능하고, 엑셀 프로그램에서 작성한 내용을 상기 룰 템플릿 생성시에 이용할 수 있는 것을 특징으로 하는 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템.
- 제6항에 있어서,
상기 디시전(decision) 테이블 템플릿은 조건 영역과 리턴 영역을 포함하고, 상기 조건 영역은 비교 팩터인 하나의 조건식(룰 표현식)과 상기 조건식의 결과와 비교할 일련의 비교값으로 조건 영역의 각 조건을 열로 구성하고, 상기 리턴 영역의 행에는 상기 조건식의 결과와 상기 비교값의 비교를 통해 각 조건이 모두 만족하는 값을 표현하는 것을 특징으로 하는 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템.
- 업무에 대한 결정 방법을 수행하는 룰(rule)을 생성 및 관리하며, 이를 통해 업무 해결을 수행하는 비즈니스 룰 관리 시스템(BRMS)을 이용한 방법에 있어서,
a) 업무에 대한 룰 처리 요청이 입력되는 단계;
b) 상기 룰 중에서 상기 룰 처리 요청을 수행하는 업무 처리 룰을 선택하는 단계;
c) 룰 저장소에 저장되어 있는 상기 룰들간의 연관 분석를 분석하여 상기 업무 처리 룰과 연관된 룰을 서치하는 단계; 및
d) 룰 캐쉬부에 저장된 상기 업무 처리 룰과 연관된 룰의 결과값을 이용하여 상기 업무 처리 룰을 통해 상기 룰 처리 요청에 대한 결과를 생성하는 단계;
를 포함하되,
상기 룰은 필요에 따라 특정의 형식을 가지는 롤 템플릿으로 구성되어 있는 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 방법.
- 제8항에 있어서,
상기 업무 처리 룰 및 상기 업무 처리 룰과 연관된 룰은 각각 함수로 구성되며, 업무 흐름에 따라 서로 계층적인 연관 구조를 가지고 있으며, 개별 룰은 다른 룰을 호출하거나 피호출될 수 있으며, 각각 하위 계층의 룰의 결과값을 함수의 옵션값으로 이용하는 것을 특징으로 하는 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 방법.
- 제8항에 있어서,
상기 룰 템플릿은 실행 영역과 조건 영역으로 구성되어 있는 계층적인 연관 구조로 이루어져 있어,
상기 계층적인 구조에서 N 번째에 depth 에 해당하는 룰 템플릿은 N+1번째의 depth 에 해당하는 룰 템플릿의 결과값을 상기 실행 영역의 함수의 입력값 또는 상기 조건 영역의 조건값으로 사용하여 상기 룰 처리 요청을 수행하는 것을 특징으로 하는 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 방법.
- 제8항 내지 제10항 중 어느 하나의 항에 있어서,
상기 룰 템플릿은 엑셀 형식의 디시전(decision) 테이블 템플릿으로 구성되어 있어 필요에 따라서 상기 룰 템플릿 간에 내용을 카피하여 수정 편집이 가능하고, 엑셀 프로그램에서 작성한 내용을 상기 룰 템플릿 생성시에 이용할 수 있는 것을 특징으로 하는 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 방법.
- 제11항에 있어서,
상기 디시전(decision) 테이블 템플릿은 조건 영역과 리턴 영역을 포함하고, 상기 조건 영역은 비교 팩터인 하나의 조건식(룰 표현식)과 상기 조건식의 결과와 비교할 일련의 비교값으로 조건 영역의 각 조건을 열로 구성하고, 상기 리턴 영역의 행에는 상기 조건식의 결과와 상기 비교값의 비교를 통해 각 조건이 모두 만족하는 값을 표현하는 것을 특징으로 하는 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 방법.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140028140 | 2014-03-11 | ||
KR20140028140 | 2014-03-11 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20150106365A true KR20150106365A (ko) | 2015-09-21 |
Family
ID=54072553
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020150033096A KR20150106365A (ko) | 2014-03-11 | 2015-03-10 | 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템 및 그 표현 방법 |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR20150106365A (ko) |
WO (1) | WO2015137641A2 (ko) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102150909B1 (ko) * | 2020-02-27 | 2020-09-03 | 주식회사 이노룰스 | 비즈니스 룰 관리 시스템 |
KR102150910B1 (ko) * | 2020-02-27 | 2020-09-03 | 주식회사 이노룰스 | 비즈니스 룰 관리 시스템 |
KR102150911B1 (ko) * | 2020-02-27 | 2020-09-03 | 주식회사 이노룰스 | 비즈니스 룰 관리 시스템 |
KR102164607B1 (ko) * | 2020-02-27 | 2020-10-13 | 주식회사 이노룰스 | 비즈니스 룰 관리 시스템 |
KR102187322B1 (ko) * | 2020-02-27 | 2020-12-08 | 주식회사 이노룰스 | 비즈니스 룰 관리 시스템 |
KR102187321B1 (ko) * | 2020-02-27 | 2020-12-08 | 주식회사 이노룰스 | 비즈니스 룰 관리 시스템 |
KR102217937B1 (ko) * | 2020-02-27 | 2021-02-23 | 주식회사 이노룰스 | 비즈니스 룰 관리 시스템 |
WO2021172953A1 (ko) * | 2020-02-27 | 2021-09-02 | 주식회사 이노룰스 | 비즈니스 룰 관리 시스템 |
KR102337271B1 (ko) * | 2020-07-28 | 2021-12-09 | 주식회사 이노룰스 | Brms 기반 글로벌 생산 관리 시스템 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106201537A (zh) * | 2016-07-18 | 2016-12-07 | 浪潮通用软件有限公司 | 一种数据处理方法及装置 |
CN108229907B (zh) * | 2017-12-06 | 2021-07-13 | 链家网(北京)科技有限公司 | 一种基于表达式引擎的规则变更方法和系统 |
CN110647546A (zh) * | 2019-09-18 | 2020-01-03 | 北京明略软件系统有限公司 | 第三方规则引擎生成方法及装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001005654A (ja) * | 1999-06-24 | 2001-01-12 | Nec Corp | ビジネスルール管理装置 |
KR20020085005A (ko) * | 2001-05-04 | 2002-11-16 | 주식회사 이네트 | 룰기반의 워크플로우를 지원하기 위한 워크 플로우 체인생성방법 |
US8069129B2 (en) * | 2007-04-10 | 2011-11-29 | Ab Initio Technology Llc | Editing and compiling business rules |
JP5715905B2 (ja) * | 2011-08-01 | 2015-05-13 | 株式会社エヌ・ティ・ティ・データ | ビジネスプロセス/ビジネスルール実行システム、ビジネスプロセス/ビジネスルール実行方法及びプログラム |
-
2015
- 2015-02-24 WO PCT/KR2015/001778 patent/WO2015137641A2/ko active Application Filing
- 2015-03-10 KR KR1020150033096A patent/KR20150106365A/ko not_active Application Discontinuation
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102150909B1 (ko) * | 2020-02-27 | 2020-09-03 | 주식회사 이노룰스 | 비즈니스 룰 관리 시스템 |
KR102150910B1 (ko) * | 2020-02-27 | 2020-09-03 | 주식회사 이노룰스 | 비즈니스 룰 관리 시스템 |
KR102150911B1 (ko) * | 2020-02-27 | 2020-09-03 | 주식회사 이노룰스 | 비즈니스 룰 관리 시스템 |
KR102164607B1 (ko) * | 2020-02-27 | 2020-10-13 | 주식회사 이노룰스 | 비즈니스 룰 관리 시스템 |
KR102187322B1 (ko) * | 2020-02-27 | 2020-12-08 | 주식회사 이노룰스 | 비즈니스 룰 관리 시스템 |
KR102187321B1 (ko) * | 2020-02-27 | 2020-12-08 | 주식회사 이노룰스 | 비즈니스 룰 관리 시스템 |
KR102217937B1 (ko) * | 2020-02-27 | 2021-02-23 | 주식회사 이노룰스 | 비즈니스 룰 관리 시스템 |
WO2021172953A1 (ko) * | 2020-02-27 | 2021-09-02 | 주식회사 이노룰스 | 비즈니스 룰 관리 시스템 |
KR102337271B1 (ko) * | 2020-07-28 | 2021-12-09 | 주식회사 이노룰스 | Brms 기반 글로벌 생산 관리 시스템 |
Also Published As
Publication number | Publication date |
---|---|
WO2015137641A3 (ko) | 2017-05-18 |
WO2015137641A2 (ko) | 2015-09-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20150106365A (ko) | 계층적인 룰 구조를 가지고 있는 비즈니스 룰 관리 시스템 및 그 표현 방법 | |
US7814459B2 (en) | System and method for automated on demand replication setup | |
US9412071B2 (en) | Rules execution platform system and method | |
US9146955B2 (en) | In-memory, columnar database multidimensional analytical view integration | |
US10127218B2 (en) | Object templates for data-driven applications | |
US9053445B2 (en) | Managing business objects | |
US10635408B2 (en) | Method and apparatus for enabling agile development of services in cloud computing and traditional environments | |
US20120210296A1 (en) | Automatically creating business applications from description of business processes | |
US10885087B2 (en) | Cognitive automation tool | |
US11803372B2 (en) | Creation and execution of customised code for a data processing platform | |
US20130167048A1 (en) | Context dependent personalization of reuse components for a user interface | |
US20230086854A1 (en) | Dynamically controlling case model structure using case fragments | |
Karagiannis et al. | Metamodels as a conceptual structure: some semantical and syntactical operations | |
US20230195792A1 (en) | Database management methods and associated apparatus | |
US20080092115A1 (en) | Enterprise performance management software system having dynamic code generation | |
US11526895B2 (en) | Method and system for implementing a CRM quote and order capture context service | |
US20090254391A1 (en) | Use of historical data in a computer-assisted technical solution design tool | |
US8910183B2 (en) | Access to context information in a heterogeneous application environment | |
Leida et al. | Facing big data variety in a model driven approach | |
US9405793B2 (en) | Native language support for intra-and interlinked data collections using a mesh framework | |
US11888937B2 (en) | Domain specific provider contracts for core data services | |
US20200073897A1 (en) | Systems and methods for enhanced content management interoperability services interfaces and repository integration | |
CN112905153A (zh) | 一种面向软件定义卫星的软件并行构建方法以及装置 | |
WO2015063675A1 (en) | Data processing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |