First of all, this review is from the Internet, books, search and sorting out, there may be technical points on the wrong point, perhaps not so deep understanding. But I am the attitude of learning to comment, study, hope to everyone useful, into the topic!
Three major mainstream workflow engines: shark,osworkflow,jbpm!
The patron of shark is Enhydra. What did Enhydra do? A lot! From the Java EE Application Server, to the O/R mapping tool, to this workflow engine, and so on. Why is shark's persistence layer implemented with Dods? That's because they're family.
JBPM's patron is JBoss. The persistence layer of JBPM3 is implemented by Hibernate3, also for this reason. The graphical process definition for JBPM3 has been decided to embed in the JBoss Eclipse IDE, so look at JBoss Eclipse IDE Preview version 1.5 and we can already edit a JBPM3 process definition file with plug-in mode.
The patron of Osworkflow is opensymphony. I like this organization very much, it has made a lot of good things. In developing a workflow management system, I recommend using one of its other things: Webwork2. The author of the Open source workflow engine Agileflow is based on the ww2+spring+hibernate architecture. Written here, I wonder if it can be perfectly integrated with STRUTS2?!
When you finish this paragraph, say the following: basically all of the Java EE application servers have their own workflow engine, such as the above mentioned Enhydra,jboss and no mention of WebSphere and WebLogic, it is clear that learning workflow engine technology is indeed very important.
Shark's process definition language is XPDL, and we know that the two most important concepts of XPDL are process and activity. Activities in XPDL are based on the concept of activity diagrams in uml1.x. An activity diagram is a natural fit for workflow modeling, and its greatest advantage over state diagrams is that it is easy to do fork control of concurrent threads that can be executed concurrently or sequentially; it has the advantage of having a swimlane concept that controls the generation of tasks in the workflow engine. The shark of the Buddha is the activity diagram.
What is the osworkflow of the Tathagata? We know that it has an important concept of State ... Hehe, we know that its tathagata is an FSM. I don't know what an FSM is. You are certainly not a good student when you go to college, and of course, if you don't know and matter, you can think of him like a state diagram. The state in the Osworkflow is expressed in the form of step and status, which is a status in a step, while the transformation of the States is driven by the action, similar to the event in the status graph, Because an event corresponds to an action.
JBPM of the Tathagata is not simple above, it combines the use of state diagram + activity diagram +petrinet knowledge, and, here the activity diagram is UML2.0 version. In the activity diagram of UML2.0, where the node is not called an activity (action), the activity becomes a high-level concept that contains an action sequence. An activity diagram shows a series of actions that make up an activity. JBPM also renamed the action, called State. JBPM use of the concept of the state diagram has transition/event and so on, this oneself to see it. The concept of petrinet, such as Token,signal, is also adopted in the internal implementation of JBPM. What the? And I don't know what petrinet? Did you study computer in college? No? Then you may be a liberal arts, learning Mechanical/electrical/Civil Engineering/transportation and other major have contact Petrinet courses, if not learned, or see jbpm bar, anyway, we do not engage in theory, know the general concept on the line.
My point of view:
It is a thankless thing to make a point of view, and many foreign masters have also been scolded by others. My point is: Shark ... Will ascend to the number one throne. It should be said that before the publication of the article, the domestic workflow engine utilization rate is the highest osworkflow, by the end of last year, Shark occupies a clear advantage, I analyzed for the following reasons:
1. Domestic enterprises all fancy xpdl, because this means in the product specification can boast that "we follow WFMC ..."
2. Because I self-proclaimed "shark workflow engine in the domestic main promoter", most give me the Feedback workflow management system development chooses the technology the friend all uses shark
3. Shark is really a good workflow engine, even if you just want to learn XPDL, you can start with learning shark.
4. But I'm still bullish on Osworkflow.
Technical analysis of three main open source workflow engines in Java