모델링 툴의 사용법

1. 프로세스 정의 만들기

프로세스 관리자는 프로세스 정의를 작성하기 전에

해당 정의가 포함 될 폴더를 새롭게 생성해야 한다.

그림 6-1) 새로운 폴더 생성

새 폴더를 생성하기 위해 <그림 6-1> 에서와 같이

  • 우측 상단 +에 마우스를 올린 후 New Folder를 클릭한다
  • “패키지 명”란에 패키지 명을 입력하면 새로운 폴더가 생성된다
  • 폴더 이름을 (여기서는 Test로 생성하였음) 입력한다.




그림 6-2) 폴더 생성 확인

<그림 6-2> 에서와 같이 Test 폴더가 생성된 것을 확인 할 수 있다. 폴더를 생성하였으면 그 안에 새로운 프로세스 정의를 작성하기 위해

다시 Test폴더를 더블 클릭한 뒤 [+버튼] > [New Process]를 클릭하면

<그림 6-3> 과 같은 프로세스 디자이너가 실행된다.

그림 6-3) 프로세스 디자이너

프로세스 디자이너의 왼쪽 영역에는 여러 종류의 Activity Type들로 구성되어 있고

이 영역을 액티비티 타입 팔레트라고 한다. 이 타입들을 프로세스 플로우 차트 영역으로

Drag & Drop 하면 그림 6-5처럼 추가되는 모습을 볼 수 있다.

그림 6-4) Activity Type

[그림 6-5] 와 같이 선택한 Activity가 프로세스 디자이너의 중앙의 프로세스 플로우 챠트영역에 추가된다.

그림 6-5)일반사람업무 추가

추가된 액티비티를 삭제할 때는 삭제하고자 하는 액티비티가 선택된 상태에서

[Delete] 키를 누르거나 마우스 좌클릭하여 나오는 휴지통 버튼을 눌러 삭제 할 수 있다.

선택된 액티비티에 속성을 설정하기 위해선 프로세스 플로우 차트에 추가된 User Task업무

액티비티를 더블클릭하면 프로세스 디자이너의 오른쪽 영역에 업무에 관련된 속성을 설정 할 수 있다.

User Task 액티비티 명을 장애입력이라고 적어준다.

역할 설정을 위해 role을 하나 올려준다. 롤 명은 Initiator로 설정하고 어두운 화면을 클릭하면

자동 저장된다. 그 후 만들었던 액티비티들을 모두 role 위로 올려주면 적용이 완료된다.

그림 6-6) 업무 속성

2. 프로세스 실행시키기

Process Name을 subTest로 입력해준 뒤 우측 상단 저장을 클릭해준다.

그림 6-8) 프로세스 정의 생성 확인

이렇게 생성한 프로세스가 저장되었는지 확인한 뒤 실행시켜보기 위해 <그림 6-9> 와 같이 시작을 눌러주거나 수정에 들어가 실행버튼을 클릭해준다.

그림 6-9) 프로세스 시작

<그림 6-10> 은 진행중인 업무의 화면을 보여주고 있다.

[확인]버튼을 누르면 해당 워크아이템을 마치게 됩니다.

지금까지 만든 프로세스는 하나의 액티비티만을 가지고 있으므로

해당 워크아이템을 마치게 되면 전체 프로세스가 종료 됩니다.

그림 6-10) 진행중인 워크아이템 화면

<그림 6-11> 은 종료된 워크아이템의 결과화면이다.

종료된 프로세스나 진행 중인 프로세스의 실행정보를 확인하기 위해서는

프로세스 매니저를 다시 선택하면<그림 6-12>처럼 확인할 수 있다.

(이렇게 실행된 형태의 프로세스를 “프로세스 인스턴스”라 부른다.)

그림 6-11) 완료된 워크아이템의 화면

그림 6-11) 완료된 워크아이템의 화면

<그림 6-12> 는 현재 실행되고 있거나 종료된 프로세스 인스턴스의 정보를 보여주고 있다. 앞서 종료한 장애입력 인스턴스의 실행내역을 확인 하기 위해서 박스로 표시한 해당 인스턴스를 클릭한다.

그림 6-12) 프로세스 인스턴스 목록

<그림 6-13> 은 완료된 장애처리 프로세스의 실행내역을 보여주고 있다. 인스턴스의 실행한 단계를 플로우차트로 모니터링 할 수 있으며 탭 메뉴 별로 프로세스 변수, 프로세스 참여자 정보들을 확인 할 수 있다.

그림 6-13)인스턴스 각각의 프로세스 정보

3. 프로세스 변수 설정

이렇게 만든 프로세스 정의의 사용자 업무 화면에서는 어떤 작업내용이 요구되지 않았다.

사용자에게 어떠한 데이터를 입력하고 처리할 수 있는 화면을 만들기 위해서

이 프로세스를 개선할 필요가 있다. 이를 위해 “수정” 버튼을 클릭하여

프로세스 디자이너를 실행시키고 변수를 등록한다. 그림 6-15와 같이 상단 중앙

[AZ VARS] 버튼을 클릭하여 프로세스 변수 창을 띄운 뒤 [+ADD] 버튼을 클릭한다.

그림 6-14) 프로세스를 개선하기 위해 ‘수정’버튼을 클릭

[New 프로세스 변수] 창에서 <그림 6-15> 과 같이 프로세스 변수를 등록한다.

그림 6-15) 변수 등록

<그림 6-16> 에서 처럼 [Process Variables] 창에

하나의 프로세스 변수가 등록된 것을 확인할 수 있으며 내용을 보고 싶을 때는

해당 변수에서 마우스 왼쪽 더블클릭을 통해 확인 할 수 있다.

그림 6-16) 변수 등록 확인

이렇게 등록한 프로세스 변수를 장애처리 액티비티의 속성으로 설정하기 위해

장애입력 User task를 더클 클릭하여 <그림 6-17> 과 같이

앞서 생성한 프로세스 변수인 “문제유형”변수를 매핑 추가해준다.

그림 6-17) Activity에 변수 추가

변수가 추가되어 변경된 프로세스 정의를 적용하기 위해 다시 우측 상단 저장버튼을 눌러준다.

다시 Designer list에서 장애입력프로세스를 선택하여 [실행]버튼을 누른다.

그림 6-18) 변수 설정 후 실행

[그림 6-19] 과 같이 문제유형에 입력 창이 생겼으며 System을 입력하고 작업을 완료한다.

그림 6-19) 변수 입력 화면

Instances 탭 클릭 후 완료된 프로세스를 들어간 뒤 VARIABLES버튼을 클릭해보면

해당 프로세스 변수 정보를 볼 수 있다. [그림 6-20]과 같다.

그림 6-20) 완료 프로세스 변수 정보

4. 기초 예제 프로세스

4.1 목표 예제 프로세스

우리 조직에 새로운 업무 프로세스가 생겼다고 생각해 보자. 그 업무는 장애처리 프로세스 (이하 Trouble-Ticket Process)로서, 우리 조직이 운영하고 있는 전산시스템을 활용하고 있는 사용자들 중에 시스템에 대한 장애를 겪으면, 그 장애를 신고하고 유관부서의 사람들이 그 문제를 해결한 후 피드백 하는 내용이다.

4.2 프로세스 시나리오

  1. 장애를 발견한 사용자가 먼저 장애를 신고함
  2. 장애처리 매니저가 장애상황을 읽고 그 문제를 해결할 수 있는 적절한 사람에게 장애신고 내용을 포워딩함
  3. 담당자가 장애 처리를 한 후 완료내역을 입력
  4. 그 완료내역은 자동적으로 장애를 신고한 사람에게 메일로 피드백의 단계로 진행되게 된다. 다음은 그 업무의 각 단계를 도식화 한 것이다.

그림 6-21) Trouble-Ticket 프로세스

4.3 프로세스 정의

로그인 한 후 테스트할 프로세스 그룹 이름인 ‘Trouble-Ticket’으로 입력하여

폴더를 추가하고 New Process를 해줍니다.

화면이 열리면 이제 Trouble-Ticket Process를 모델링 할 준비가 된 것입니다.

모델링의 단계는

1) 참여자 Role 정의

2) 프로세스 변수 정의

3) 프로세스 흐름 정의

로 크게 나눌 수 있으며 각 단계는 필요에 따라 병행하면서 작업하게 된다.

  • 참여자 정의

참여자 정의는 프로세스에 참여하는 역할 들을 정의하는 단계입니다. 현재의 예제인 Trouble-Ticket Process에서의 역할은

1) User: 장애 신고자

2) Manager: 장애업무를 라우팅할 장애 관리자

3) right Person: 부여된 장애업무를 실제로 처리할 장애 처리자

로 선언할 수 있다. 아래 화면은 이러한 역할을 등록하는 과정을 보여준다.

그림 6-22) 참여자 Role 정의 화면

  1. Role Line을 Drag&Drop으로 패널에 놓는다.
  2. Role을 왼쪽 클릭 후 오른쪽 나오는 메뉴를 통해 분할 해준다.
  3. 분할된 Role을 각각 더블클릭 후 롤 명을 지정해 준다. 이와 같은 방식으로 User, Manager, right Person 참여자를 설정한다.

표 6-1) 참여자 정의 설정

참여자ID 참여자 명칭(화면출력용)
User User
Manager Manager
rightperson rightperson

표 6-1) 참여자 정의 설정

  • 변수 정의 다음의 모델링 단계는 각 업무 단계별로 주고 받아야 할 데이터를 정의하는 ‘변수 정의’ 단계 입니다.

Trouble-Ticket Process 예제에서 필요로 하는 변수는

1) Trouble_desc

2) Trouble_result

3) Trouble_class

이며 그 변수를 정의하는 과정을 다음 [그림 6-23] 에서 보여주고 있습니다.

그림 6-23) 변수 정의 화면

    1. AZ VARS 버튼을 클릭
    1. +ADD 버튼을 클릭

표 6-2 변수 정의 설정

Name(각변수를 구분 짓는 구분자) 데이터 형식(변수의 데이터형식) 프로세스 변수 이름(화면에 출력될 변수의 이름)
Trouble_desc Text 이슈제목
Trouble_result Text 답변
Trouble_class Text 이슈 분류
Select_rp Text 처리자선택

액티비티 선언 / 흐름 설정

앞에서 업무 흐름의 기본 선언이 되는 참여자 정의와 변수정의를 마쳤다.

이제는 실제 업무 각 단계에서 해야 할 일들을 정의하고 이들 일들간의 흐름을 정의하는 단계이다.

이러한 단위업무의 유형들은 프로세스 디자이너의 왼쪽에 배치된 ‘액티비티 타입 팔레트’에서 선택할 수 있다.

각 단계는 앞에서 정의한 것과 같이 4단계로 나뉘게 되고 처음 3단계는

사람이 직접 처리하는 단계로 User task타입을 이용할 것이다.

마지막 단계인 메일을 발송하는 단계는 ‘Intermediate Event> Message Intermediate Throw Event’

타입으로 구성할 것이다.

Step 1 - 장애신고 (Report Trouble) 단계의 선언

처음의 세 단계인

1)장애신고,

2)처리자 에게 업무 분배,

3)장애처리

의 단계는 ‘일반 사람 업무’에 해당한다. 다음 화면은 각 세 업무를 정의하는 과정을 보여주고 있다.

  1. 액티비티 타입 “User task” 액티비티를 선택한다.
  2. Flow chart에 추가된 액티비티를 더블 클릭하면 아래에 액티비티의 속성 편집 창이 뜬다. 액티비티 명, 설명, Parameters를 설정한다.

첫 번째 단계는 사용자가 장애를 신고하는 단계로 이름을 ‘reportTrouble’로 하고

담당 역할을 ‘User’로 선택해 준다. 그리고 이 단계에서 입력 받아야 할 프로세스 변수들인

장애 유형(Trouble_class)과 장애상황에 대한 설명(Trouble_description)과

처리자선택(select_rp) 을 각각 Parameters 에 추가해 준다.

그림 6-26) 장애신고 단계의 속성 설정 화면



Step 2 – 처리자 선정 단계의 선언

두 번째 단계는 앞 단계에서 넘어온 장애 내용을 매니저가 확인 후

적절한 사용자에게 분배해주는 단계이다.

전 단계와 마찬가지로 일반사람업무 액티비티 하나를 추가하고 속성을 아래와 같이 선언 해 준다.

액티비티 명: 장애처리자 지정 담당역할: Manager 파라미터:

Variable Direction
Trouble_desc
Trouble_class
Select_rp
  • Direction을 “→”으로 주면 해당 프로세스 변수는 사용자가 ‘read’할 목적으로 제공된다. 즉 사용자 업무처리 화면에서 기존 값이 화면에 출력만 되고 사용자가 값을 입력하지는 못한다. 이 direction을 비워두면 기본적으로 “↔”설정으로 취급되어 화면에 출력과 사용자로부터의 입력 창이 동시에 보여지게 된다.



Step 3 – 장애처리 (Write Resolution) 단계의 선언

세 번째 단계는 앞선 단계에서 매핑 될 유저인 Right Person이 장애 처리 결과를 입력하는 화면이다.

속성 설정은 아래와 같이 해준다.

액티비티 명: 장애처리 담당역할: rightperson 파라미터:

Variable Direction
Trouble_desc
Trouble_class
Trouble_result

Step 4 – 신고자 에게 처리결과 알림 (Reply to the user)

마지막 단계인 메일 액티비티에서는 신고자에 세번째 단계에서

입력된 장애처리 결과가 메일로 통보되는 설정을 할 것이다.

그림 6-30) Touble Ticket저장 된 결과 화면

  1. 프로세스 디자이너 도구 중 “Intermediate Event”를 drag&drop 한다
  2. flow chart에 추가된 액티비티를 클릭 한 뒤 설정에서 Message Intermediate 옵션을 클릭한다.

4.4 프로세스 실행

앞에서 살펴본 과정을 통해서 여러분은 Trouble-Ticket Process를 성공적으로 등록했다.

이제 우리조직의 시스템 사용자들은 새로운 업무 프로세스를 uEngine을 통해 활용할 수 있게 되었다.

관리자가 등록한 업무 프로세스를 최종사용자가 시작하기 위해서는 해당 프로세스를

[활성화] 버튼을 눌러 사용할 수 있도록 한다. 그리고 상단메뉴에 있는 “프로세스”탭을 이용한다.

시작하고자 하는 업무 프로세스를 선택하면 프로세스의 흐름에 대한 정보가 보여지고

“프로세스 시작하기”를 클릭하면 업무를 시작할 수 있다.

그림 6-31) 프로세스 화면




그림 6-32) 업무시작 화면

  • 업무 진행

앞 단계의 지시대로 ‘실행’을 클릭하면 첫 번째 업무 단계인

‘장애신고(Report Trouble)’단계의 화면(이를 ‘워크아이템핸들러’라 부름)이 로드 된다.

이 단계에서 아래와 같이 간단하게 장애내역을 입력하고

“완료처리”버튼을 클릭하여 프로세스를 시작한다.

그림 6-33) 장애신고 화면

다음단계는 앞 단계에서 입력한 장애내용을 매니저가 적절한 유저에게

분배하는 단계이므로 매니저 역할의 유저로 로그인 해야 한다.

현 프로세스에서는 동일한 유저로 설정하였으므로 계속 진행한다.

유저의 받은업무함인 ‘워크리스트’ 메뉴를 클릭하여 부여된 업무를 확인한다.

새로 부여된 업무로 ‘처리자 선정’ 업무가 있으면 클릭한다.

매니저 입장에서 현 업무의 진행 상황을 파악하고 장애 입력 내용을 확인 한 후

적절한 장애처리 담당자를 선택해 준다. 여기서는 편의상 [테스터]를 선택해 준다.

이유는 사용자 이동 없이 프로세스를 진행하기 위함이다.

그 다음 ‘완료처리’버튼을 클릭하여 업무를 완료시킨다.

그림 6-34) Set the right person 단계의 업무처리 화면

그러면 다음단계를 처리하는 유저는 전 단계에서 선택한

테스터본인이 되므로 선택한 유저로 다시 로그인할 필요 없이

장애 처리자 입장에서 장애 처리 결과(Resolution)를 입력하고 완료한다.

그림 6-35) Write Resolution화면

이제 사람에 의해 처리되는 업무의 단계는 모두 끝이 났으므로

마지막으로 장애 신고자 에게 자동적으로 처리결과가 메일링되는

결과를 보기 위해 신고자의 메일 주소로 메일을 확인한다.