Thoughts about aliases and Roles
The idea of using "roles" or "aliases" instead of referring directly to real persons is something that have come up several times during the development of Gjallar. One use case is having different people rotating in a certain position. For example, a specific group within an organisation may have a particular person within the group handling all cases that are meant for the group. This role can then rotate within the group - perhaps one week at a time.
Another use case is when a user is away, perhaps on vacation, and thus wants to temporarily give someone else the ability to handle assigned and ongoing cases and perhaps even new ones. Full personal delegation.
A third use case is having people work in virtual roles - instead of taking on a personal responsibility for a case they could take on responsibility for the case as having a particular role/post within the company. Then that role/post could later on be moved to another person and all the references and assignments could be moved. Each such role can be viewed as a virtual user with a mapping to a real user.
An alias is simply a "pointer" to a physical user. The effect when referencing an alias is exactly the same as if referencing the user - it is simply a way of alleviating the chore of remembering who has this role at this point in time. Later when the alias is changed to point to another user old references are , so the effect is exactly the same as knowing the physical user and referencing him/her directly.
If a user for some reason will not be online for quite some time he/she can delegate all responsibility to someone else. This means notifications will be routed to the delegee and the delegee also will have all accessibility and rights that the delegate has. A normal usecase is to delegate to your boss when you go on vacation. The boss also has the ability to change the delegation to someone else or to delegate yet another step to someone else.