Hi Frank,

Not accepting a change in the substitute when there is a cyclic situation
is the options we decided as well.

Regards
Nandika

On Fri, Jun 17, 2016 at 11:26 PM, Frank Leymann <[email protected]> wrote:

> Hi Vinod,
>
> Whenever a user changes his/her substitute, we check for a circular
> dependency.  This check happens independent of the fact whether substitutes
> are defined when the user are created ("modeling time") or when the
> substitute of a user is changed during "runtime". Is that your
> understanding too?
>
> If a circular dependency is detected, the request for the new substitute
> is not accepted.  And, yes, that's problematic because it may become quite
> cumbersome or even impossible to find a possible substitute (i.e. one that
> our cycle checker will accept).  For example, in case of n users U1,
> U2,...,Un user Ui has substitute Si and Si = U(i+1) with U(n+1)=U1 - we
> have a problem. During modeling time their may be time to fix the problem,
> but during runtime that may be critical.  Setting the Reserved or
> inProgress tasks of the user just defining his new substitute in state
> Ready doesn't help because there may be no potential owners who may get
> aware about the task.
>
> For this purpose, the key principle of Human Task is that the engine must
> do everything to push tasks to (at least) Reserve status. This is done by
> corresponding deadline processing, or by nomination: i.e. the engine
> informs the Business Administrator of the task who then assigns the task to
> an owner. But this may result in a burden of the Business Administrator in
> case he will get many tasks to nominate.
>
> So, let's discuss. My current preference is to *not accept* a change in
> the substitute definition in case a cyclic structure would result.  WDYT?
>
>
>
> Best regards,
> Frank
>
> 2016-06-16 3:31 GMT+02:00 Vinod Kavinda <[email protected]>:
>
>> Hi Frank,
>> Yes, it's when changing the substitute user. We have to use the second
>> suggestion also.
>>
>> In a scenario where substitution starts in a future time(not just after
>> changing the substitute user), we do not have the option of rejecting the
>> substitution request. In such a scenario, we will have to make his tasks
>> unclaimed!
>>
>> Regards,
>> Vinod
>> On Jun 16, 2016 2:28 AM, "Frank Leymann" <[email protected]> wrote:
>>
>> Hi Vinod,
>>
>> yes, that's a well-known issue :-)   I suggest to adopt your first
>> suggestion, namely checking circular dependencies when a new substitute has
>> been specified (I guess that's what you meant - not when adding a new user,
>> right?).
>>
>>
>>
>> Best regards,
>> Frank
>>
>> 2016-06-15 13:25 GMT+02:00 Vinod Kavinda <[email protected]>:
>>
>>> Hi all,
>>> I ran into an issue while implementing this.
>>>
>>> What if we ran into a *circular dependency between user substitutes*?
>>> We can't calculate a transitive substitute in this scenario. No one will be
>>> available to take up the tasks of the unavailable user.
>>>
>>> Here is my suggestion for this:
>>>
>>> *Circular dependency detected while adding a new user*
>>> We abort this user addition and reply back to the user asking for a new
>>> substitute.
>>>
>>> *Circular dependency detected while resolving transitive subs in a
>>> scheduled event (Due to a user's substitution starting at this point )*
>>>
>>> Mark the transitive sub is "UNDEFINED". Future tasks that are assigning
>>> to this user will be reverted back as unclaimed tasks (remove the assignee).
>>>
>>> Any suggestions?
>>>
>>>
>>>
>>>
>>> On Thu, Jun 9, 2016 at 8:31 AM, Vinod Kavinda <[email protected]> wrote:
>>>
>>>> Hi Frank,
>>>> Agreed.
>>>> I have created Jira [1] to track this improvement after the Human Task
>>>> integration with BPMN engine.
>>>>
>>>> [1] - https://wso2.org/jira/browse/BPS-1043
>>>>
>>>> Regards,
>>>> Vinod
>>>>
>>>> On Wed, Jun 8, 2016 at 10:03 PM, Nandika Jayawardana <[email protected]>
>>>> wrote:
>>>>
>>>>> Yes, Once the task engine refactoring is complete, we can integrate
>>>>> our own task implementation with activiti . Then we can overcome the
>>>>> current limitations of user tasks.
>>>>>
>>>>> Regards
>>>>> Nandika
>>>>>
>>>>> On Wed, Jun 8, 2016 at 7:18 PM, Milinda Perera <[email protected]>
>>>>> wrote:
>>>>>
>>>>>>
>>>>>> On Wed, Jun 8, 2016 at 6:49 PM, Frank Leymann <[email protected]> wrote:
>>>>>>
>>>>>>> Dear Vinod,
>>>>>>>
>>>>>>> understood.  My recommendation is that we should argue as long as
>>>>>>> possible independent from a certain implementation: if we may decide to
>>>>>>> move from Activiti to Camunda, we should have the architecture/design 
>>>>>>> right
>>>>>>> to port our implementation with minimal effort. That's why I argue in 
>>>>>>> terms
>>>>>>> of the BPMN recommended state model, and when we agree on the 
>>>>>>> principles we
>>>>>>> can map it to the underlying engine. Does this sound acceptable?
>>>>>>>
>>>>>>> Which brings up the following question:  When we support User Tasks
>>>>>>> in Activiti, don't we use our HumanTask implementation as User Task as 
>>>>>>> BPMN
>>>>>>> 2.0 assumes? But we use the simplified implementation that Activiti 
>>>>>>> ships?
>>>>>>> If we do the latter, what is our strategy of our HumanTask 
>>>>>>> implementation?
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>  +1, Soon or Later I think replacing Activiti User Task or
>>>>>> introducing as a new type of user task, with our WS-HumanTask it the best
>>>>>> option.
>>>>>> AFAIR similar idea is in our future roadmap @Hasitha @Nandika : isn't
>>>>>> it?
>>>>>>
>>>>>> --
>>>>>> Milinda Perera
>>>>>> Software Engineer;
>>>>>> WSO2 Inc. http://wso2.com ,
>>>>>> Mobile: (+94) 714 115 032
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Nandika Jayawardana
>>>>> WSO2 Inc ; http://wso2.com
>>>>> lean.enterprise.middleware
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Vinod Kavinda
>>>> Software Engineer
>>>> *WSO2 Inc. - lean . enterprise . middleware <http://www.wso2.com>.*
>>>> Mobile : +94 (0) 712 415544
>>>> Blog : http://soatechflicks.blogspot.com/
>>>>
>>>>
>>>
>>>
>>> --
>>> Vinod Kavinda
>>> Software Engineer
>>> *WSO2 Inc. - lean . enterprise . middleware <http://www.wso2.com>.*
>>> Mobile : +94 (0) 712 415544
>>> Blog : http://soatechflicks.blogspot.com/
>>>
>>>
>>
>


-- 
Nandika Jayawardana
WSO2 Inc ; http://wso2.com
lean.enterprise.middleware
_______________________________________________
Architecture mailing list
[email protected]
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture

Reply via email to