나는 편견이 있고, ruote 의 저자 중 한 명입니다 .
변형 1) 리소스 (문서, 주문, 송장, 책, 가구)에 연결된 상태 머신.
변형 2) 작업이라는 가상 리소스에 연결된 상태 머신
변형 3) 워크 플로 정의를 해석하는 워크 플로 엔진
이제 질문에 "BPM"태그가 지정되어 "비즈니스 프로세스 관리"로 확장 할 수 있습니다. 이러한 종류의 관리는 각 변형에서 어떻게 발생합니까?
변형 1에서는 비즈니스 프로세스 (또는 워크 플로)가 응용 프로그램에 흩어져 있습니다. 리소스에 연결된 상태 시스템은 워크 플로의 일부 측면을 적용하지만 리소스와 관련된 측면 만 적용합니다. 동일한 비즈니스 프로세스를 따르는 자체 상태 머신이있는 다른 리소스가있을 수 있습니다.
변형 2에서 워크 플로는 작업 리소스에 집중 될 수 있으며 해당 리소스 주변의 상태 시스템으로 표시됩니다.
변형 3에서는 워크 플로 정의 (또는 비즈니스 프로세스 정의)라는 리소스를 해석하여 워크 플로를 제정합니다.
비즈니스 프로세스가 변경되면 어떻게됩니까? 비즈니스 프로세스가 관리 가능한 리소스 인 워크 플로 엔진을 갖는 것이 가치가 있습니까?
대부분의 상태 머신 라이브러리에는 1 개의 세트 상태 + 전환이 있습니다. 워크 플로 엔진은 대부분 워크 플로 정의 인터프리터이며 여러 다른 워크 플로를 함께 실행할 수 있습니다.
워크 플로우를 변경하는 데 드는 비용은 얼마입니까?
변형은 상호 배타적이지 않습니다. 워크 플로 엔진이 상태 시스템에 의해 보호되는 여러 리소스의 상태를 변경하는 많은 예를 보았습니다.
또한 휴먼 태스크에 대해 변형 3 + 2를 많이 사용합니다. 워크 플로 엔진은 프로세스 인스턴스를 실행할 때 일부 지점에서 인간 참여자에게 태스크 (작업 항목)를 전달합니다 (리소스 태스크가 생성되고 '준비'상태로 배치됨). .
변형 2 (작업 관리자 변형)만으로도 먼 길을 갈 수 있습니다.
또한 상태 시스템이없고 워크 플로 엔진이 없으며 비즈니스 프로세스가 애플리케이션에 분산 및 / 또는 하드 코딩되는 변형 0)을 언급 할 수도 있습니다.
많은 질문을 할 수 있지만 답을 읽는 데 시간이 걸리지 않고 시험 해보고 실험하는 데 시간이 걸리지 않으면 멀리 가지 않고 언제 사용할 지에 대한 감각을 얻지 못할 것입니다. 이 또는 저 도구.