워크플로우 시스템(프로세스를 전문적으로 관리)과 같은 개념.
프로세스 기반 응용프로그램 : 프로그램 각각의 연결을 기반
워크 플로우 :
프로세스당 단위업무들이 있고 단위업무들은 인풋,아웃풋 데이터들이 있다.
프로세스 관리하는 엔진 기술
게이트웨이 액티비티 : 플로우 컨트롤
open, close 가능하면 쌍으로.
그러나 반드시 그래야하는건 아님.
XPDL : XML 기반
비즈니스 프로세스 관리 노테이션 표준화 -> BPMN
비피엠을 이용해 모델링하면 그래피컬 폼이 바뀐다.
엔진에 의해서 프로세스들이 컨트롤된다.
BPM엔진 기반 동작을 공부한다.
전체 프로세스에선 엔진 여러개 동작하고, 프로세스 마이닝 한다.
BPMIDTF : BPMN 만들어내고 표준화 활동을 한다.
WfMC :
case type: bpm model
case가 만들어지면 id가 만들어지고 상태가 생기고 상태가 생기게 되면 로깅.
이벤트가 발생하면 상태가 변함.
로깅을 가지고 프로세스 마이닝을 한다.
Manual : 사람이 automatic : 자동화
인스턴스가 만들어져서 그 인스턴스를 실행하는 것 : enactment
어플리케이션 프로그램 : invoked Application
인풋 조건 : transition할때 어디가 갈것인가에 대한 조건
인풋 아웃풋 데이터 ㅣ relevant data
stochastic : 통계적인 기능 넣음
Places and Transitions
Directed Arcs
Tokens
세가지의 구성요소
트랜지션, 플레이스 / 플레이스, 트렌지션 이렇게 이어져야한다.
바로 트랜지션으로 갈 수는 없다.
트랜지션은 동사로 표현(이벤트가 발생하는거니까)
토큰이 있다 -> 이벤트가 일어나기 전 조건을 만족한다.
state(marking): place안에 있는 토큰 개수
ex) clam = 3, under construction :0 reday : 0
그 전 상태에 토큰이 존재하면 해당 트랜지션은 enabled 된거. -> firing일어남(토큰이 움직임)
arc가 하나면 토큰이 하나이상 있으면 됨.
firing sequenxe : record
(Cyclic)
Red-Green : enable된거 첨에 firing되면 점점 옮겨 가면서 green-yellow가 enable됨.
토큰이 없으면 enable된 상태가 아니다.
wait : arc의 wait가 4라면 토큰 4개가 있어야 enable 된다
arc에 wait를 둬서 조건을 만족시키는 방식
firing되면 토큰 동시에 이동하면 parrarel패턴
selective.
or로 둘중에 하나로 이동할 수 있잖아
다른 컬러는 다른 케이스.
사실 어디로 갈 지 조건을 넣어야하지만 petrinet에는 아크에 조건 넣을 수 없다.
언제 어디로 갈지가 분명하지 않다 -> workflow net이 생김
트랜지션 모양을 바꿈으로서 해결
OR-slpit은 둘 중 하나로 간다
AND-split 둘 다 로 이동한다.
메타 모델? model of model. 모델을 만들어내기위한 모델이다.
핵심적으로 들어가는 것들을 굵은 박스 표시해놨다. 크게 5가지다.
performer를 직접 연결하진 않는다. 사람들은 자주 바뀌기 때문.
Activity: 단위 업무
invoked application : 액티비티가 구현 된 것.
Procedure(process) :
Activity에는 우선순위가 있다. arc를 이용해서 우선순위 표현
요 메타모델을 가지고 bpm 모델을 만든다.
연관데이터 : 각각 액티비티 들의 인풋, 아웃풋 데이터
aA -> 시그마1 :새로운 값을 define / 시그마1 -> aB :값을 use
values (ex : a = b )
l-value(addr) : a위치하는 로케이션에 b를 집어 넣어라 = define
r-value(value) : use . a의 value를 이용한다.
데이터 흐름 : 데이터가 바뀌는 과정.