[Design of JBoss jBPM] - Re: BPMN in jbpm4
by kukeltje
1) Creative.... and I think it can be defended if is is just explained in enough detail in the docs.
2) First of all, I did not use superstates once (did not have the real need), secondly and IANAE, BPMN has the notion of embedded and reusable subprocesses (the latter are renamed to call activity if I am informed correctly). Though there is no relation between the type and the way they should be displayed, I think that can be leveraged:
- collapsed can be either subprocess or superstate.
- expanded inline: superstate
- 'new tab/page': the content of the subprocess node
Where e.g. a doubleclick on a collapsed one opens it expanded inline or on a new tab...
Bruce Silver writes about this in http://www.brsilver.com/wordpress/2008/09/15/concepts-and-terminology-in-...
Regarding the connection of a sequenceflow into a node I have no clear picture yet... if I find the time I'll try to read about it.
Terminology wise:
1) & 2) Yes, I agree and it might be nothing more than 'getting used to' or pose a real problem. Not sure yet
3) I often 'abused' the task node, since in many of the processes I worked on could be either 'signalled' via an incomming b2b message or a from a form on a web page that was completed by a human. So this to me is no problem... this 'abuse' will continue I think after reading about the private, abstract, global processes and the B2B arena.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4205961#4205961
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4205961
15 years, 9 months
[Design of JBoss jBPM] - Re: BPMN in jbpm4
by koen.aers@jboss.com
Clearly we need to discuss what we need to do to support the jPDL specific constructs in a diagram with BPMN look and feel. At the moment I see a two imminent examples of these problems:
1) Multiple outgoing sequence flow from nodes:
As Bernd states in jBPM these have XOR semantics while in BPMN outgoing sequence flow in nodes have AND semantics. On the other hand, BPMN has the conditional sequence flow construct. If you think about it, the outgoing sequence flow in a jPDL state is conditional (i.e. the token is propagated along the sequence flow with the name you give when issuing the continuation signal, otherwise the default flow is chosen). Following the BPMN logic, outgoing sequence flow from jPDL nodes with XOR behaviour should have a diamond at the start and the default flow should have a transversal line. The BPMN spec does not mandate that the condition is given explicitly, so in this case the condition is implied by the implementation of the jPDL node (in this case the wait state).
2) Superstates
The BPMN concept that most closely resembles superstates is the expanded subprocess. But this interferes of course with the jPDL process nodes and subprocesses. There is AFAICS no way of getting a sequence flow to connect a node with some other node inside the expanded subprocess. Any ideas here would be more than welcome.
Of course other issues exist, mostly related to terminology clashes. The most obvious clashes that I can see right now are:
1) signal: in jPDL this is an event that continues the process; in BPMN it is a flare that is visible to all the processes
2) event: in jPDL this is a hook into the execution of a process, subscribers can listen to these events and perform some processing accordingly; in BPMN this is a first class citizen (a node in the diagram) that indicates e.g. the reception of a message or the raising of an exception.
3) task: in jPDL tasks are related to human tasks; in BPMN tasks are atomic activities
Undoubtedly I forget a lot of other stuff, feel free to add and/or react and provide us with suggestions.
I will create a wiki page where we can describe the issues that come up along with their solution.
Regards,
Koen
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4205954#4205954
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4205954
15 years, 9 months
Re: Fixme's
by Tom Baeyens
pbeong toa dn ?!
each test should clean up it's own data in the db. in the tearDown, there is a
verification that the DB is indeed empty. if there is still data in the db, then the
fixme will be displayed and the DB contents will be cleaned. cleaning the db
contents means:
1) dropping the foreign key constraints
2) deleting all records of all tables
3) recreating the foreign key constraints
i've created
https://jira.jboss.org/jira/browse/JBPM-2004
and added the jira number to the FIXME logs
thanks
regards, tom.
Heiko Braun wrote:
> Where do these pbeong toa dn what do they mean?
> Ideally a FIXME does include a JIRA issue, otheriwse it's hard to track
> progress.
>
> + egrep 'FIXME|FAILED'
> 10:28:00,267 SEV | [Db] FIXME: 1 records left in table JBPM_COMMENT
> 10:28:00,326 SEV | [Db] FIXME: 1 records left in table JBPM_COMMENT
> 10:28:00,328 SEV | [Db] FIXME: 1 records left in table JBPM_VARIABLE
> 10:28:00,613 SEV | [Db] FIXME: 5 records left in table JBPM_ACTIVITY
> 10:28:00,614 SEV | [Db] FIXME: 5 records left in table JBPM_DESCRIPTOR
> 10:28:00,626 SEV | [Db] FIXME: 1 records left in table JBPM_PROCESS
> 10:28:00,626 SEV | [Db] FIXME: 4 records left in table JBPM_TRANSITION
> 10:28:02,655 SEV | [Db] FIXME: 1 records left in table JBPM_ACTIVITY
> 10:28:02,656 SEV | [Db] FIXME: 1 records left in table JBPM_EVENT
> 10:28:02,656 SEV | [Db] FIXME: 3 records left in table
> JBPM_DESCRIPTOR
> 10:28:02,657 SEV | [Db] FIXME: 1 records left in table JBPM_JOB
> 10:28:02,657 SEV | [Db] FIXME: 1 records left in table JBPM_PROCESS
> 10:28:02,658 SEV | [Db] FIXME: 1 records left in table JBPM_WIREPROPS
> 10:28:03,517 SEV | [Db] FIXME: 1 records left in table JBPM_COMMENT
> 10:28:03,799 SEV | [Db] FIXME: 1 records left in table JBPM_ACTIVITY
> 10:28:03,800 SEV | [Db] FIXME: 1 records left in table JBPM_DESCRIPTOR
> 10:28:03,800 SEV | [Db] FIXME: 5 records left in table JBPM_EXECUTION
> 10:28:03,801 SEV | [Db] FIXME: 1 records left in table JBPM_PROCESS
> 10:28:20,553 SEV | [Db] FIXME: 1 records left in table JBPM_COMMENT
> 10:28:20,611 SEV | [Db] FIXME: 1 records left in table JBPM_COMMENT
> 10:28:20,613 SEV | [Db] FIXME: 1 records left in table JBPM_VARIABLE
> 10:28:20,893 SEV | [Db] FIXME: 5 records left in table JBPM_ACTIVITY
> 10:28:20,894 SEV | [Db] FIXME: 5 records left in table JBPM_DESCRIPTOR
> 10:28:20,906 SEV | [Db] FIXME: 1 records left in table JBPM_PROCESS
> 10:28:20,906 SEV | [Db] FIXME: 4 records left in table JBPM_TRANSITION
> 10:28:22,869 SEV | [Db] FIXME: 1 records left in table JBPM_ACTIVITY
> 10:28:22,870 SEV | [Db] FIXME: 1 records left in table JBPM_EVENT
> 10:28:22,870 SEV | [Db] FIXME: 3 records left in table
> JBPM_DESCRIPTOR
> 10:28:22,871 SEV | [Db] FIXME: 1 records left in table JBPM_JOB
> 10:28:22,871 SEV | [Db] FIXME: 1 records left in table JBPM_PROCESS
> 10:28:22,872 SEV | [Db] FIXME: 1 records left in table JBPM_WIREPROPS
> 10:28:23,703 SEV | [Db] FIXME: 1 records left in table JBPM_COMMENT
> 10:28:23,983 SEV | [Db] FIXME: 1 records left in table JBPM_ACTIVITY
> 10:28:23,984 SEV | [Db] FIXME: 1 records left in table JBPM_DESCRIPTOR
> 10:28:23,985 SEV | [Db] FIXME: 1 records left in table JBPM_PROCESS
> 10:28:23,985 SEV | [Db] FIXME: 5 records left in table JBPM_EXECUTION
> FIXME: JBPM-1768 Fix groovy support
>
>
>
>
>
--
regards, tom.
15 years, 9 months
identity dependencies
by Tom Baeyens
hi heiko,
for the identity integration that we discussed earlier this week, we need 2 things:
1) an SPI to be consumed by all the jbpm components that need to access identity
information. so the console and task assignment and email (email address resolution)
would be consuming this spi.
2) our only implementation of that SPI will bind to the jboss identity component.
i don't know what's best. introduce 2 separate modules or include the spi interfaces
in the pvm module. since it is an internal matter i would think it's best to put the
SPI interfaces in the PVM module.
WDYT ?
--
regards, tom.
15 years, 9 months