ݺߣ

ݺߣShare a Scribd company logo
유엔진 개발 교육
(Rule 프로세스)
작성자 : 김보상
Page  2
Rule 프로세스
1. Rule 프로세스
- 조건분기 액티비티를 이용하여 의사결정 tree/ matrix를 구현한 프로세스 모델을 의미.
- if ~ else 구문으로 구현하던 조건 비교 로직을 프로세스 모델로 정의하여 모델이 변경이 되더라도 프로세스 모델러를 이용하여 룰 모
델만 수정하면 코드 변경 없이 적용이 가능.
- Business Rule Management에 사용.
Page  3
2. 메모리 실행 모드
- ‘DefaultProcessInstance’를 사용하면 프로세스 실행 정보들을 Database 에 저장을 하지 않기 때문에 실행 된 내역은 소실되지만 처
리 속도가 중요한 BRMS을 위해서는 필요한 기능.
- ProcessInstance의 기본 클래스는 ‘EJBProcessInstance’를 사용.
VS
Rule 프로세스
Page  4
3. 모델링 – 시스템 최적화 설계
- 결과 값은 위 두 프로세스는 동일.
- 시스템 처리속도 면에서 보면 조건비교를 1-depth : 2-depth로 처리하기 때문에 Case1 이 성능이 좋음.
- 시스템 사용 메모리를 봐도 액티비티 사용 개수가 ComplexActivity를 포함하여 5:7이기 때문에 Case1 이 성능이 좋음.
Rule 프로세스
>
Case 1 Case 2
Page  5
4. 모델링 – condition 범위
- Case1의 경우 조건비교 범위가 10<= input <20가 빠져 있기 때문에 input이 그 사이 값일 경우에는 해당 조건문를 타지 않음.(연속성)
- Case2의 경우 20 이상의 조건이 없기 때문에 input 값이 20 이상이 입력되었을 경우 해당 조건문을 타지 않기 때문에 마지막 분기를
추가하여 otherwise case 설정 필요 (예외 범위)
- Otherwise case는 항상 제일 마지막에 설정되어야 함.
Rule 프로세스
Case 1 Case 2
Page  6
5. 모델링 – 비교항목의 class type
- 비교항목(프로세스 변수)의 class 유형은 일반적으로 boolean / text / number 으로 나뉠 수 있는데 class에 맞는 condition을 설정해
야 함.
- 비교항목 class가 text으로 선언되어 있는데 number 비교 condition은 사용할 수 없음.
Rule 프로세스
Page  7
6. 모델링 – condition 설정
- 동일한 case의 가로 condition은 and 조합
- 동일한 case의 세로 condition은 or 조합
Rule 프로세스
and
or
1
2
Page  8
7. 모델링 – 비교 값
- 비교 항목(프로세스 변수) 값은 프로세스 실행 시에 할당.
- 비교 값은 모델링 시에 입력을 기본으로 하는데 필요에 따라서 DB나 동적으로 변경이 되어야 하는 경우에는 룰편집기를 요구사항에
맞게 수정되어야 함.
Rule 프로세스
1비교 항목
(프로세스 변수)
비교 값2
Page  9
8. 모델링 – 액션(종단) 액티비티
- 조건분기의 Node 마지막에서 최종 액션을 하는 액티비티이며 output 항목에 결과 값을 할당하는 역할 담당.
- 액션 액티비티는 업무 내용에 따라서 개발.(커스터마이즈 영역)
Rule 프로세스
Page  10
9. 시뮬레이션 (1)
Rule 프로세스
인스턴스 발행1
2
인스턴스 선택
Page  11
9. 시뮬레이션 (2)
Rule 프로세스
3 입력 항목 선택
4 항목 값 입력
Page  12
9. 시뮬레이션 (3)
Rule 프로세스
인스턴스 시작5
6
완료 된 인스턴스 선택
Page  13
9. 시뮬레이션 (4)
Rule 프로세스
7 플로우차트
확인
8
Output 항목 값 확인
감사니다!

More Related Content

uEngineBPM 개발자교육 6 Rule프로세스

  • 1. 유엔진 개발 교육 (Rule 프로세스) 작성자 : 김보상
  • 2. Page  2 Rule 프로세스 1. Rule 프로세스 - 조건분기 액티비티를 이용하여 의사결정 tree/ matrix를 구현한 프로세스 모델을 의미. - if ~ else 구문으로 구현하던 조건 비교 로직을 프로세스 모델로 정의하여 모델이 변경이 되더라도 프로세스 모델러를 이용하여 룰 모 델만 수정하면 코드 변경 없이 적용이 가능. - Business Rule Management에 사용.
  • 3. Page  3 2. 메모리 실행 모드 - ‘DefaultProcessInstance’를 사용하면 프로세스 실행 정보들을 Database 에 저장을 하지 않기 때문에 실행 된 내역은 소실되지만 처 리 속도가 중요한 BRMS을 위해서는 필요한 기능. - ProcessInstance의 기본 클래스는 ‘EJBProcessInstance’를 사용. VS Rule 프로세스
  • 4. Page  4 3. 모델링 – 시스템 최적화 설계 - 결과 값은 위 두 프로세스는 동일. - 시스템 처리속도 면에서 보면 조건비교를 1-depth : 2-depth로 처리하기 때문에 Case1 이 성능이 좋음. - 시스템 사용 메모리를 봐도 액티비티 사용 개수가 ComplexActivity를 포함하여 5:7이기 때문에 Case1 이 성능이 좋음. Rule 프로세스 > Case 1 Case 2
  • 5. Page  5 4. 모델링 – condition 범위 - Case1의 경우 조건비교 범위가 10<= input <20가 빠져 있기 때문에 input이 그 사이 값일 경우에는 해당 조건문를 타지 않음.(연속성) - Case2의 경우 20 이상의 조건이 없기 때문에 input 값이 20 이상이 입력되었을 경우 해당 조건문을 타지 않기 때문에 마지막 분기를 추가하여 otherwise case 설정 필요 (예외 범위) - Otherwise case는 항상 제일 마지막에 설정되어야 함. Rule 프로세스 Case 1 Case 2
  • 6. Page  6 5. 모델링 – 비교항목의 class type - 비교항목(프로세스 변수)의 class 유형은 일반적으로 boolean / text / number 으로 나뉠 수 있는데 class에 맞는 condition을 설정해 야 함. - 비교항목 class가 text으로 선언되어 있는데 number 비교 condition은 사용할 수 없음. Rule 프로세스
  • 7. Page  7 6. 모델링 – condition 설정 - 동일한 case의 가로 condition은 and 조합 - 동일한 case의 세로 condition은 or 조합 Rule 프로세스 and or 1 2
  • 8. Page  8 7. 모델링 – 비교 값 - 비교 항목(프로세스 변수) 값은 프로세스 실행 시에 할당. - 비교 값은 모델링 시에 입력을 기본으로 하는데 필요에 따라서 DB나 동적으로 변경이 되어야 하는 경우에는 룰편집기를 요구사항에 맞게 수정되어야 함. Rule 프로세스 1비교 항목 (프로세스 변수) 비교 값2
  • 9. Page  9 8. 모델링 – 액션(종단) 액티비티 - 조건분기의 Node 마지막에서 최종 액션을 하는 액티비티이며 output 항목에 결과 값을 할당하는 역할 담당. - 액션 액티비티는 업무 내용에 따라서 개발.(커스터마이즈 영역) Rule 프로세스
  • 10. Page  10 9. 시뮬레이션 (1) Rule 프로세스 인스턴스 발행1 2 인스턴스 선택
  • 11. Page  11 9. 시뮬레이션 (2) Rule 프로세스 3 입력 항목 선택 4 항목 값 입력
  • 12. Page  12 9. 시뮬레이션 (3) Rule 프로세스 인스턴스 시작5 6 완료 된 인스턴스 선택
  • 13. Page  13 9. 시뮬레이션 (4) Rule 프로세스 7 플로우차트 확인 8 Output 항목 값 확인