Java Workflow
Shark
Shark is the most complex representation of systems and functions. It is another open-source workflow engine that complies with the WfMC xpdl standard and complies with the workflow management facility specifications of the OMG organization. Among all open-source workflow engines, shark is the most complete and complex system. It has been adhering to the idea of "modularization", so it is easier to expand. However, since it was acquired by together, the commercial color of shark has become more and more intense. It has been changed to together Workflow Server and provided some open source code for reference only in the form of Community edition.
Shark
Osworkflow is the most lightweight representative and is also the implementation framework of a flexible and low-level positioning workflow engine. Low-level positioning means that it is not positioned to solve the process model objects and operation scenarios, but to provide a maintenance and scheduling mechanism for developers to expand independently. This maintenance process scheduling mechanism osworkflow selects the FSM theory based on action, so osworkflow is more like a complex and flexible Limited-state scheduling machine.
Osworkflow is widely used in domestic projects, and many domestic simple approval process projects are developed based on its engine. This is mainly because osworkflow is action-driven, and domestic customers can easily accept this operation habit. However, the FSM model on which osworkflow depends has a low degree of support for Branch, aggregation, and sub-processes, which requires attention during implementation.
Jbpm
Jbpm is the representative most suitable for expansion and the most suitable for commercial applications in all open source engines. First, its process modeling model is based on activity digraphs and incorporates FSM and petrinet ideas in engine construction. Therefore, its kernel and foundation are solid. Secondly, since it was acquired by JBoss, the structure of its 3. x series tends to be micro-kernel, and the idea of plug-in is also more profound. It also provides an extension to the BPEL and supports the implementation of JBoss hibernate for storage. It integrates JBoss Seam. The rule engine is ready to adopt JBoss rules and is ready to integrate JBoss messaging. In this way, both the kernel and the peripheral applications have powerful power.
In addition, jbpm also features token applications and uses the Parent-Child token mechanism to handle complicated application scenarios such as branch, parent and child processes. This design idea is worth your reference.
Yawl
Yawl is the most noteworthy representative of algorithms and models. It is a workflow engine proposed by alast force-master Based on petrinet modeling, it integrates petrinet token with and, XOR, or algorithms, and supports all the modes in workflow patterns. However, yawl is only a research project, so its structure and implementation lacks the characteristics of commercial applications. However, it is necessary to study yawl. On the one hand, we can deepen our understanding of the workflow mode, and on the other hand, some modeling ideas and processing algorithms of yawl are worth pondering and absorbing.
Activebpel
Activebpel is a representative of the BPEL engine and an open-source flow engine that can execute the BPEL4WS specifications. Its structure and implementation methods have high reference value. At present, many small and medium software vendors in China are developing based on BPEL products. Many of their basic content and ideas refer to self-activebpel. Due to the restrictions on the process requirements of small and medium-sized customers in China, the open-source engines or small-sized products based on BPEL are not accepted in the market. However, it is a development trend to integrate the application of the business processes and processes around the service process.