In the real world, things are sometimes more complicated than software developers think. A new task is opened. Who should it be assigned to? Regardless of Axon.ivy, this is a matter of the rules that apply in a company. Imagine a large company with a very broad structure. This company has many branches that all follow the same rules.
A simple example: the new task is assigned to accounting in a specific branch, let's say "branch Luzern". In the real world you have two roles: "accounting" and "branch Luzern", And very simple, you say: this task is assigned to people who have both "accounting" and "branch luzern". In Axon.ivy you can't do that. If you assign the task to "accounting" everyone who works in accounting (in another branch) would see the task - not good. If you assign the task to "branch Luzern" anyone working there would see the task - again not good. What you need is a combination of "branch" and "organization". Why? Because Axon.ivy doesn't allow to assign a task to two roles, saying "this role and this role". You end up in multiple roles, each dimension of role struktures multiplied with each other - just because of the limitation of AXON.ivy. Hundreds of roles. There is no business justification for this restriction, only a technical one.
And even worse, there is only one dimesion you may organize your roles. If you organize by branch, it will be very hard to find out all the task open in "accounting". If you organize by business roles, it may ver very hard to find all open tasks belonging to a branch (and that's only a simple exmaple, real world is much more complicated).
And even worse it's hell to have to deal with maintance of this roles if you do it by hand in Designer, but that's what you guys give as advice.
What we really need is the possibility to maintain roles by any software automatically, let's say in a service process in AXON.ivy. But there ist no such thing as "create a role" as official function (Reto told me).
What would also be good: the ability to assign tasks to a combination of roles. By combination I mean an expression with logical operators like "(A or B) and C".
What do you think?