거침없이 배우는 Drools

JBoss Drools rules를 이용하여 강력한 비즈니스 룰을 만들기 위한 방법

루카스 아마도르 저 / 신정안, 허태명, 신혜연 역

『거침없이 배우는 Drools』는 오픈소스 비즈니스 룰 엔진으로 비즈니스 룰과 비즈니스 프로세스, 이벤트 처리, 자동화 계획을 위한 통합 플랫폼을 제공한다. 이 책에서, 독자는 Drools 모듈인 Guvnor, Fusion, Expert와 Planner에 대해 학습하게 된다. 비즈니스 룰과 다른 프레임워크 통합 방법을 학습하게 되고 복합 이벤트 처리, 자동화 계획, 원격 호출 등과 같은 새로운 기능을 어떻게 사용할 수 있는지 알 수 있도록 안내한다.


도서 상세

분야: [프로그래밍, 프로그래밍 언어]

출간일: Feb 17, 2014

페이지: 360

도서정가: 26,000 원

ISBN: 9788993827804

부가 정보


출판사 서평

JBoss Drools rules를 이용하여 강력한 비즈니스 룰을 만들기 위한 40여 가지 방법 

JBoss Drools는 오픈소스 비즈니스 룰 엔진으로 비즈니스 룰과 비즈니스 프로세스, 이벤트 처리, 자동화 계획을 위한 통합 플랫폼을 제공한다. 이 책에서, 독자는 Drools 모듈인 Guvnor, Fusion, Expert와 Planner에 대해 학습하게 된다. 이 책에 소개하고 있는 명확한 방법으로 완전한 솔루션을 제공하기 위해 비즈니스 룰과 다른 프레임워크 통합 방법을 학습하게 되고 복합 이벤트 처리, 자동화 계획, 원격 호출 등과 같은 새로운 기능을 어떻게 사용할 수 있는지 알게 될 것이다. 

  • 스프링 프레임워크를 이용하여 Apache Camel과 Drools 통합 
  • 복합 이벤트 처리 기술을 프로젝트에 어떻게 적용할 수 있는지 대한 이해 
  • 스프링 프레임워크로 마샬러와 JPA를 사용하여 지식을 저장하는 다양한 방법 설정 
  • Drools 서버를 사용하여 원격에서 룰을 실행할 수 있는 모든 장점 
  • Drools Planner를 이용한 자동화 계획 구현 
  • Drools Guvnor를 이용하여 새로운 비즈니스 룰 작성 방식과 설정방법 학습 
  • jBMP5에 포함된 새로운 기능 학습 및 적용 


독자 대상

JBoss Drools 프로젝트를 위해 현재 알고 있는 개념을 확장하기 원하는 자바 개발자 및 아키텍트를 위한 책이다. 프로젝트에 적용할 수 있는 새로운 기능 역시 다루고 있다. 


※ 예제 코드는 지앤선 홈페이지(ji-n-son.co.kr)에서 다운받으실 수 있습니다. 

저자 소개

루카스 아마도르 : 아르헨티나의 부에노스 아이레스에서 태어나고 자란 소프트웨어 개발자이다. 그는 Sun Java Developer와 JBoss Advanced Developer 인증서를 취득했고, Google Summer of Code 2009프로그램을 통해 JBoss Drool 커뮤니티에 참여하게 되었다. 그리고 Eclipse Drool 플러그인 리펙토링 모듈을 개발했고, 그 이후, 시간이 날 때마다, jBPM5/Drools의 새로운 기능과 버그 수정을 하는 커미터가 되었다. 현재, 프리랜서 개발자로 일하면서 항상 흥미로운 일을 찾고 있는 중이다. 저자의 개인 블로그(lucazamador.wordpress.com)와 깃허브(www.github.com/lucazamador)를 통해서 그가 하는 작업과 새로운 프로젝트를 볼 수 있다.


역자 소개

  • 신정안 : 현재 NexR에서 오픈 소스 프로젝트인 RHive를 개발하고 있다. SK C&C에서 자사 J2EE 프레임워크 기술지원 및 Physical Security Information Management (PSIM) 시스템에 CEP를 적용하기 위해 JBoss Drool Fusion을 이용하였다. 현재 Apache Mahout, Apache Giraph와 같은 빅데이터 관련 오픈 소스 프로젝트에 관심을 두고 소스 분석을 즐겨 하고 있다.
  • 허태명 : 평생 코딩하며 사는 것을 꿈꾸는 개발자이다. 현재 삼성전자에서 서버 개발 업무를 하고 있으며, 이전 직장인 SK C&C에서 Event Management System 개발 시 Rule에 따른 Event 처리를 위해 Drools Fusion을 활용했다. 주로 웹 및 서버 개발 업무를 했지만 개발 관련한 모든 분야에 관심을 가지고 꾸준히 공부하고 있으며, 최근에는 nodejs, angularjs 등을 통해 서버사이드, 프론트엔드 모두 구현 가능한 자바 스크립트 공부에 매진하고 있다.
  • 신혜연 : 현재 삼성SDS에서 개발자로 근무하고 있다. 맵리듀스와 같은 분산데이터 처리 시스템에 관심을 두고 있다

Chapter 01 Expert: 룰 엔진 

1.1 시작 

1.2 엔진에서 사용할 팩트 선언 

1.3 XML을 이용한 팩트 선언 

1.4 룰 실행 상태 확인을 위한 로깅 

1.5 타이머 기반 룰 

1.6 달력 기반 룰 구현 

1.7 실시간 쿼리 변화 모니터링 


Chapter 02 부가 기능 

2.1 소개 

2.2 지식 세션 마샬링 

2.3 지식 저장을 위한 퍼시스턴스 사용 

2.4 중복된 팩트 제거 

2.5 지식 에이전트에 사용자 정의 클래스로더 사용 

2.6 Drools Verifier를 이용하여 룰의 질 검증 

2.7 JMX을 이용하여 지식 모니터링 


Chapter 03 중앙 집중식 지식 관리 

3.1 소개 

3.2 모델 편집기를 이용하여 모델 정의 생성 

3.3 모델 정의 임포트 

3.4 열거형 데이터 생성 

3.5 BRL 편집기에서 “From Collect”패턴 사용 

3.6 워킹 세트로 지식 구성 

3.7 룰 템플릿 생성 

3.8 지식 스냅샷 생성 


Chapter 04 Guvnor: 고급 기능과 설정 

4.1 시작 

4.2 GUI 언어 설정 및 생성 

4.3 지식 백업 

4.4 MySQL을 기본 룰 리포지터리로 설정 

4.5 리포지터리 파일 위치 설정 

4.6 REST API를 통해 리소스 획득 


Chapter 05 Fusion: 복합 이벤트 처리(CEP) 

5.1 시작 

5.2 팩트를 이벤트로 선언하는 방법 

5.3 가상 시계를 사용하여 애플리케이션 테스트 

5.4 엔트리 포인트: 엔트리 포인트가 무엇이고 어떻게 사용하는가 

5.5 이벤트 스트림 처리 모드 설정 

5.6 슬라이딩 윈도우 

5.7 시간 연산자를 사용하여 이벤트 연관성 맺기 


Chapter 06 원격 Drools 실행 

6.1 소개 

6.2 지식 서비스와 다수의 엔드포인트 설정 

6.3 JBoss AS 5.x에서의 Drools 서버 배포 

6.4 XStream 마샬링으로 명령어 구성 

6.5 REST 인터페이스를 사용한 명령어 실행 

6.6 soapUI로 SOAP 인터페이스 테스트 


Chapter 07 Expert: Drools 연결 

7.1 소개 

7.2 Spring 프레임워크를 사용하여 Drools 설정 

7.3 지식 퍼시스턴스를 위한 스프링 프레임워크 JPA 설정 

7.4 아파치 카멜과의 연동 

7.5 스프링 프레임워크와 아파치 카멜 설정 

7.6 JMS 큐에서 Drools 명령어 실행 


Chapter 08 계획 : 자동화된 계획의 최적화 

8.1 소개 

8.2 자원 할당 문제 해결 

8.3 Simulated Annealing acceptor 사용 

8.4 Solver 종료 

8.5 기준점 생성 


Chapter 09 jBPM5 비즈니스 프로세스 관리 

9.1 소개 

9.2 비즈니스 프로세스 수동 생성 

9.3 비즈니스 프로세스 테스트 

9.4 Human task 생성 및 실행 

9.5 프로세스 활동 상태 모니터링 및 리포트 생성 

9.6 Drools Fusion을 이용한 비즈니스 프로세스 모니터링