The Process Virtual Machine

A library for building executable state machines. It can can serve as the foundation for any form of BPM, workflow and orchestration.


Table of Contents

1. Introduction
1.1. Scope and target audience
1.2. Processes and executions
1.3. Overview
1.3.1. Part One
1.3.2. Part Two
1.3.3. Part Three
1.3.4. Part Four
1.4. JVM version
1.5. Library dependencies
1.6. Logging
1.7. Debugging persistence
2. Basic graph execution
2.1. Activity
2.2. Activity example
2.3. ExternalActivity
2.4. ExternalActivity example
2.5. Basic process execution
2.6. Motivation
2.7. Events
2.8. Event propagation
2.9. Process structure
3. Examples
3.1. Graph based control flow activities
3.1.1. Automatic decision
3.1.2. External decision
3.2. Composite based control flow activities
3.2.1. Composite sequence
3.2.2. Composite decision
3.3. Human tasks
4. Advanced graph execution
4.1. Loops
4.2. Sub processes
4.3. Default proceed behaviour
4.4. Execution and threads
4.5. Process concurrency
4.6. Exception handlers
4.7. Process modifications
4.8. Locking and execution state
5. Delegation classes
5.1. What are delegation classes
5.2. Configuration of delegation classes
5.3. Object references
5.4. Design time versus runtime
5.5. UserCodeInterceptor
5.6. Member field configurations versus properties
6. Variables
7. History
7.1. Process logs
7.2. Business Intelligence (BI)
7.3. Business Activity Monitoring (BAM)
8. Environment
8.1. Introduction
8.2. EnvironmentFactory
8.3. Environment block
8.4. Example
8.5. Context
9. Persistence
9.1. Standard environment configuration
9.2. Standard hibernate configuration
9.3. Standard transaction
9.4. Basics of process persistence
9.5. Business key
10. Services
10.1. Introduction
10.2. PvmService
10.3. Architecture
11. Asynchronous continuations
12. Timers
13. Process languages