[Design of JBoss jBPM] - Re: Defining the API Mission
by tom.baeyens@jboss.com
anonymous wrote : Ultimately we will have BPMN conform process model that can somehow be executed on the ProcessEngine
No. We'll provide a single direction BPMN to jPDL export functionality.
http://processdevelopments.blogspot.com/2008/05/big-problems-ahead-for-bp... explains how I see the analysis to implementation iterative process: An analyst can optionally produce an analysis diagram (BPMN) as input for the software automation requirements. Then the developers build an executable process that looks exactly like the analysis diagram. (sometimes business analysts are also capable of drawing the diagram part of an executable process) But once all tech details are added, an executable process is a piece of software and should be under control of developers. The added value comes from the fact that the developers how have a process based on a diagram that analysts can understand. The iterative development should only take place on the executable process. I don't think it is feasible/desirable to create round tripping between different analysis and implementation models.
Thats why I don't think we should pursue of making BPMN executable. It creates the false illusion that analysis models automagically can be made executable. That is a false promise that many BPM vendors promote and that gives BPM its bad reputation. We get our recognition from being more modest but honest. The real value lies in building a process language that is very flexible in terms of diagram. Meaning that developers always need to be able to build an executable process that looks exactly like the analysis diagram.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4164656#4164656
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4164656
16 years, 7 months
[Design of JBoss jBPM] - Re: Defining the API Mission
by tom.baeyens@jboss.com
anonymous wrote : The API closely follows the BPMN 1-1 Specification. Doing so we leverage an established standard to describe Business Processes. The ProcessEngine executes that model.
|
Using BPMN is not a good idea. Most importantly is that we use names that are as clear as possible. We can use names from any process language or modelling notation, as long as it is unambiguous. In many cases, we'll need to establish our own names cause there is no standard with a proper name for it (mainly the runtime execution concepts) or the standards use the term in different ways. It's very hard to find unambiguous names in workflow land. I have already tried to do this in PVM, but I'm sure that improvements can be made.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4164654#4164654
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4164654
16 years, 7 months
[Design of JBoss jBPM] - Re: Defining the API Mission
by tom.baeyens@jboss.com
anonymous wrote : The situation with jbpm-3.2.3.GA and below is that there is no stable public API defined for it. As a result, application code depends on implementation detail that might change without prior notice between releases.
|
| To fix this we are going to define a BPM API which is going to be the standard of how you work with BPM in JBoss.
i don't see this as a problem that needs to be fixed.
all the architectural set up is required and will be kept. there are only 2 things missing and that need to be added in another iteration:
1) is a session facade that sits in front of the object model. it will be based on commands and we should be able to cover 95% of the API use cases with that.
2) the domain model itself needs to get interfaces so that implementation methods don't have to be exposed. currently this is done in the pvm (still completing the test suite update of that refactoring). i have established 3 separate interface views on the domain model: the external client api, the activity implementation api and the event listener api. These 3 views are mainly realized by 3 different types of executions that are used, exposing only the appropriate methods.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4164653#4164653
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4164653
16 years, 7 months