개인정보보호, 소프트웨어 정책
BPMN 2.0
BPMN은 기업 내외의 비즈니스 프로세스를 가시화하고, 비즈니스의 수행과 관련된 사람과 시스템을 프로세스에 맞게 실행ㆍ통제하며, 전체 비즈니스 프로세스를 효율적으로 관리하고 최적화할 수 있는 변화 관리 및 시스템 구현 기법. 지속적으로 성장·변화·발전하며, 각 프로세스 흐름을 이해하고, 기술 솔루션인 비즈니스 프로세스 관리 시스템을 기반으로 확장시킬 수 있는 비즈니스 프로세스를 표현하기 위한 표기법이다.
BPMN 2.0은 목적에 따라 다음과 같은 3가지 수준의 업무 프로세스 모델링을 지원.
- 서술 수준(descriptive level)
- 분석 수준(analytic level)
- 실행 수준(executable level)
서술 수준(descriptive level) 모델링 : 업무 프로세스를 가시화 또는 시각화(visualization)하는 것을 목적
- 비즈니스 프로세스의 가시화를 통하여 기업이나 기관에서 전사적인 업무 프로세스 모델을 생성 관리를 통하여 업무와 업무의 처리 흐름을 담당자 또는 개발자의 암묵적 지식을 체계화 함으로서 업무 매뉴얼로서의 역할을 한다.
- 또한 시간이 지나가면서 실제 업무 프로세스는 바뀌고 업무 매뉴얼과 일치하지 않는 경우가 발생하게 되고 이를 관리 하지 않으면 문제가 발생하거나 업무 프로세스가 변경될 때마다 사람의 기억에 의존하게 된다. 따라서 기업이나 기관에 소속되어 있는 모든 사람들이 확실하게 이해할 수 있는 표준 업무 프로세스를 정의하고 이것을 유지 관리하는 것은 매우 중요한 일이다.
분석 수준(analytic level) 모델링 : 업무 효율성 제고를 위해 업무 프로세스를 모델링 하는 것을 목적
- 업무 프로세스 모델링은 현행 프로세스(as-is process)를 정의하고, 현행 프로세스를 분석하여 개선할 수 있는 부분을 찾아 여러 개의 후보 프로세스(candidate process)를 모델링 한 후에 이들 프로세스를 ABC(Activity Based Cost) 기반으로 시뮬레이션(simulation)을 수행하여 이들 중 최적의 프로세스를 찾아 최종 프로세스(to-be process)로 정의하는 일련의 과정들로 구성된다.
실행 수준(executable level) 모델링 : BPM(Business Process Management) 기반으로 업무 프로세스를 실행하는 것을 목적
- 정의된 업무 프로세스 모델은 그대로 BPMS(Business Process Management Suite)가 제공하는 프로세스 실행 엔진(process execution engine)에 의하여 실행된다. BPMN 1.x까지 BPMN 모델은 BPEL(Business Process Execution Language)로 변환되어 BPEL 엔진에 의해 실행되었지만 BPMN 2.0부터는 에러가 많은 BPEL로의 변환 과정을 없이 직접 프로세스 실행 엔진에 의해 BPMN 모델을 실행할 수 있다.
- 실행 수준에서 프로세스를 모델링하고 그 프로세스 모델을 BPMS 상에서 실행하는 일은 매우 중요한 의미를 갖는다.
- 업무적으로는 업무 환경의 변화에 대하여 업무 담당자 스스로 대응할 수 있는 능력을 갖게 함으로 기술적으로는 프로세스 중심적인 시스템 구축으로 애플리케이션으로부터 프로세스와 업무 규칙을 분리함으로써 시스템의 변화 요구에 대하여 대응 능력을 갖게 된다.
BPMN 기반의 장점
각 프로세스 모델링 수준에 따라 업무 분석가나 프로세스 개발자가 사용하는 세부적인 BPMN 2.0 모델링 요소도 달라질 수 있다. 예를 들어 서술 수준에서는 업무 분석가가 업무 프로세스의 전반적인 흐름을 표현하는데 적당한 비교적 간단한 모델링 요소만을 사용하여 모델링 할 수 있으며, 그러나 분석 수준에서 업무 프로세스를 분석하고 시뮬레이션 하기 위해서는 복잡한 모델링 요소들을 잘 활용하여 정확하게 업무 프로세스를 모델링 해야 할 필요가 있다.
업무 프로세스 모델링을 위한 BPMN 2.0 표기법
BPMN 2.0 모델링 요소는 다음과 같다.
- 플로우(flow)
- 참가자(participant)
- 데이터(data)
- 커넥터(connector)
- 아티팩트(artifact)
플로우(flow)
플로우는 업무 프로세스의 행위를 정의한다. BPMN은 다음과 같은 3종류의 플로우 객체를 정의한다.
- 이벤트(event) : ‘어떤 일이 발생했다’는 신호(signal)
- 활동(activity) : 프로세스에서 수행된 작업(work)
- 게이트웨이(gateway) : 라우팅 로직(routing logic)
참가자(participant)
참가자란 프로세스 안에 있는 활동을 실행하거나 실행할 책임을 갖는 업무 실체(business entity)를 말한다. 참가자는 회사와 같은 조직(organizational unit)일 수도 있고 어떤 일을 수행하는 역할(role)일 수도 있다. BPMN에서 참가자는 풀(pool)로 표현된다.
데이터(data)
데이터(data)는 프로세스 흐름에서 처리되는 데이터 구조와 정보를 표현하며, 다음과 같은 4가지 데이터 모델 요소를 사용할 수 있다.
- 데이터 객체(data object)
- 입력 데이터(data input)
- 출력 데이터(data output)
- 데이터 저장소(data store)
커넥터(connector)
프로세스 모델은 프로세스 처리 흐름을 표현해야 하므로 플로우 객체들을 연결할 수 있는 연결 객체(connecting object)가 필요하며, BPMN 2.0에서는 다음과 같은 4가지 연결 객체를 제공한다.
- 시퀀스 플로우(sequence flow)
- 메시지 플로우(message flow)
- 데이터 연관(data association)
- 연관(association)
아티팩트(artifact)
아티팩트(artifact)는 프로세스 실행에 영향을 미치지 않고 프로세스 다이어그램에만 표현하는 구문적인 정보를 말한다. BPMN 2.0은 다음 2가지 아키팩트를 제공한다.
- 주석(annotation)
- 그룹(group)
비즈니스 프로세스를 모델링 하는데 사용되는 BPM 모델링 도구들
BPM 모델링 도구를 선택할 때 목적에 따라 3가지로 분류할 수 있다.
- 비즈니스 프로세스를 가시화하는 것이다. 이 목적으로 비즈니스 프로세스를 모델링한다면 비즈니스 분석가 또는 현업 작업자가 쉽게 사용할 수 있는 모델링 도구면 좋겠다. BPMN 2.0 표준을 모두 준수하지 않더라도 기본적인 BPMN 표기법을 지원한다면 만족스런 BPM 모델링 도구가 될 수 있다.
- 업무 효율성 제고를 위해 비즈니스 프로세스를 모델링하는 경우다. 이 경우라면 적어도 BPM 모델링 도구가 ABC(Activity Based Cost) 기반으로 프로세스를 시뮬레이션할 수 있는 기능을 제공할 필요가 있다. 그래서 어떤 비즈니스 프로세스가 더 효율적인가를 분석하고 최종 비즈니스 프로세스로 확정할 수 있어야 한다.
- BPM 기반으로 업무 프로세스를 실행하는 것이다. 이 경우에는 업무 프로세스를 실행할 BPMS(Business Process Management Suite)와 통합될 수 있는 BPM 모델링 도구가 필요하다. BPM 모델링 도구가 아무리 좋더라도 BPMS가 그 모델링 결과를 지원하지 않는다면 소용없기 때문이다. 참고로 현재까지 대부분의 BPMS가 제공하는 BPM 모델링 도구는 BPMN 2.0 의 모든 사양을 지원하지 않는다.
BPMN 기반의 비즈니스 프로세스 모델링을 학습에 적합한 BPM 모델링 도구들
ARIS Express : http://www.ariscommunity.com/aris-express/download
먼저 검토한 BPM 모델링 도구는 ARIS Express 버전이다. ARIS는 전통적인 비즈니스 프로세스 솔루션의 최강자다. ARIS는 주로 EPC(Event-driven Process Chain)이라고 하는 비즈니스 프로세스 모델링 표기법을 사용하여 왔다. 그러나 Aris Platform 7.1 버전에서 BPMN 2.0 표기법을 베타 기능으로 제공하다가 7.2 버전에서는 BPMN 2.0 표기법을 정식으로 지원하고 있다. ARIS Express는 ARIS Platform의 커뮤니티 에디션으로 무료로 제공된다. ARIS Express 2.3은 BPMN 2.0을 지원하지만 아쉽게도 한글을 입력하면 깨져서 표시된다.
ADONIS CE(Community Edition) :
http://www.adonis-community.com
한글을 지원하지 않아 아쉬운 또 다른 BPM 모델링 도구는 ADONIS 커뮤니티 에디션이다. ADONIS 커뮤니티 에디션은 우리에게는 조금 생소하지만 BPM 도구와 컨설팅 서비스를 제공하는 BOC Group에서 무료로 제공하는 BPM 모델링 도구다. 더욱이 업무적으로 사용할 때도 아무런 제약없이 무상으로 사용할 수 있으며, BPMN 2.0도 지원하므로 아주 적합한 BPM 모델링 도구이지만 한글이 지원되지 않으며, 결정적으로 한글 윈도우에는 설치되지도 않는다.
Progress Savvion Process Modeler : http://www.progress.com/en/downloads.html
Progress Savvion Process Modeler는 ESB(Enterprise Serivce Bus)와 BPM 솔루션으로 유명한 Progress Software에서 제공하는 BPM 모델링 도구이다. 이 모델링 도구는 시뮬레이션 기능을 제공한다. 그러나 BPMN 1.1을 지원하며 한글 입력을 허용하지 않는다
BizAgi Process Modeler : http://www.bizagi.com/index.php?option=com_content&view=article&id=27&catid=5&Itemid=98
BizAgi Process Modeler는 아직까지 BPMN 1.1 만 지원하며 한글 입력을 허용한다
Activiti Desgner : http://www.activiti.org/components.html
Elipse 기반의 BPM 모델링 도구들도 있다. Activiti는 BPMS 솔루션을 제공하는 오픈 소스 프로젝트다. Activiti Designer는 Eclipse 플러그인으로 제공되며 BPMN 2.0을 지원하며 한글 입력도 허용한다. 그러나 아직 모든 BPMN 표기법을 제공하지는 않는다. 풀(pool)과 스윔레인(swimlane), 데이터 객체(data object) 등 중요한 BPMN 표기법을 지원하지 않는다.
jBPM5 Desginer : http://sourceforge.net/projects/jbpm/files
jBPM은 이전에 JPDL(jBPM Process Definition Language)을 지원하는 BPMS 솔루션을 제공하는 JBoss의 오픈 소스 프로젝트였다. 그러다가 jBPM 버전 5에서부터는 JPDL 뿐만 아니라 BPMN 2.0 사양을 지원하는 BPMS 엔진으로 진화되었으며, jBPM Designer는 Eclipse 기반의 BPMN 2.0 프로세스 모델링 기능을 제공하며 한글 입력도 허용한다. 그러나 Activiti와 마찬가지로 아직 모든 BPMN 표기법을 제공하지는 않는다.
Bonita Studio : http://www.bonitasoft.com
Bonita Open Solution은 Activiti나 jBPM5와 마찬가지로 오픈소스 BPMS 기능을 제공한다. Bonita Studio는 BPMN 2.0을 지원하며 한글 입력을 허용하며, 시뮬레이션 기능도 제공한다. 오픈 소스 BPMN 모델링 도구 중에서는 가장 많은 BPMN 2.0 표기법을 지원하며 직관적인 사용자 인터페이스를 제공한다.
BPMN 2.0 Modeler for Visio : http://www.businessprocessincubator.com/bpmn-2-0-modeler-for-visio.html
BPMN 2.0 Modeler for Visio는 Business Process Incubator에서 마이크로소프트 Visio 플러그 인으로 제공하는 무료 BPMN 2.0 모델링 도구다. 다른 도구들은 BPMS 솔루션과 밀접한 연관관계를 갖지만 BPMN 2.0 Modeler는 순수하게 비즈니스 프로세스 모델링 기능 만을 제공하기 때문에 BPMN 2.0 모델링 표기법을 학습하기에 아주 적당하며, 업무 담당자가 직접 프로세스 모델링을 수행하는 경우에 사용하기 적합한 도구다.
비즈니스 프로세스 모델링 도구
도구명 | BPMN 2.0 | 한글 지원 | 무료 | 기타 |
ARIS Express | 지원 | 미지원 | 무료 | |
ADONIS CE | 지원 | 미지원 | 무료 | 한글 윈도우에 설치 안됨 |
Progress Savvion | 미지원 | 미지원 | 무료 | BPMN 1.1 지원 |
BizAgi | 미지원 | 지원 | 무료 | BPMN 1.1 지원 |
Activiti Designer | 지원 | 지원 | 오픈소스 | Eclipse 기반 |
jBPM5 Designer | 지원 | 지원 | 오픈소스 | Eclipse 기반 |
Bonita Studio | 지원 | 지원 | 오픈소스 | 시뮬레이션 기능 제공 |
BPMN 2.0 Modeler for Visio | 지원 | 지원 | 무료 | Visio 플러그인 |
한글 지원 여부를 제외한다면 ADONIS CE 와 ARIS Express가 BPMN 기반 프로세스 모델링을 학습하는데 아주 적당하다.
Activiti와 jBPM5, Bonita에서 제공하는 도구는 BPMS와 밀접한 관련성을 갖고 있으므로 비즈니스 프로세스를 실행하는 환경에서 사용하기 적당하다. 특히 Bonita 솔루션은 직관적인 기능을 제공하므로 BPMS가 제공하는 이점을 경험해 볼 수 있다.
순수하게 BPMN 2.0 기반의 비즈니스 프로세스 모델링을 학습하고자 한다면 Bonita Studio 또는 BPMN 2.0 Modeler for Visio(MS Visio 설치필요)를 사용해 볼 것을 권한다.
그밖에 BPMN 모델링 기능을 제공하는 상용 UML 모델링 도구는 IBM이나 Oracle과 같은 솔루션 업체에서 제공하는 상용 비즈니스 프로세스 모델링 도구가 있다.