Capturing Parallel Todo IDs

Discussions about goal-oriented and BPMN modeling.
Forum rules
Make sure every topic contains information about your LSPS version and if relevant also your server OS, client OS, database name and version, and application server name and version.
matt.price
 
Posts: 66
Joined: Thu May 03, 2012 11:51 pm

Capturing Parallel Todo IDs

Tue May 15, 2012 8:47 pm

What's the best way to capture multiple Todo IDs during parallel tasks?

We have a join table that will associate Todo IDs with business entities, but populating that via "issuedTodo" property of the task is not working out. It works well with a single Todo variable but not with a Map or Set.

Currently our serial processes use a single Todo model variable named activeTodo that gets used in the "issueTodo" property and a separate process is executed in the model to assign the Todo ID to the business entity.

How would this pattern change considering parallel tasks?

He is a response from Maros earlier on this subject:
you just need to create datatype ProgramLogTodo with field todoId and reference to ProgramLog datatype
then you will do sth like new ProgramLogTodo(todoId -> activeTodo.id, programLog -> programLog)
that's all
and of course you will need to consider it in the places where you are loading todos for program logs

Maros Bajtos
 
Posts: 145
Joined: Mon Feb 27, 2012 2:52 pm

Re: Capturing Parallel Todo IDs

Wed May 16, 2012 8:22 am

The key to this problem is using a parallel flow instead of a separate process. So you need to do the following:

1. Put HumanInteractionTask into the subprocess
2. Create variable createdTodo in the given subprocess
3. Create structure of the subprocess - start event, parallel gateway with two outgoing flows. First flow will contain human interaction task (parameter issuedTodo with value "&createdTodo"), second flow will contain conditional intermediate event with condition "createdTodo != null". Then put the assignment of todo to business entity on the event outgoing flow.
4. If you want, you may want to use reusable subprocess instead of simple subprocess. In that case, put this functionality into a separate process (specify whatever parameters you need for given process) and then you can reuse that process accross the application.

matt.price
 
Posts: 66
Joined: Thu May 03, 2012 11:51 pm

Re: Capturing Parallel Todo IDs

Wed May 16, 2012 7:36 pm

Thanks Maros.

That's works better than the hacky way we were able to get the multiple todos. Went with a reusable process in a new module that wraps the HumanInteraction task with that conditional event that creates the todo join when the createdTodo is no longer null.

Also this thread might belong to the Modeling forum...

Return to GO-BPMN

Who is online

Users browsing this forum: No registered users and 1 guest