If more than one user is working on a project in the same time there is a question how the changes made by these users will apply to the common project. We avoid any issues by using the 'locking' mechanism,
The users of Engage Process Modeler Team edition can work together on the same project. The standard license for this edition contains 1 concurrent and 3 named users. This means that only one user can work with this tool at a moment. An organization can extend this license by buying more than one Engage Process Modeler Team subscriptions. Then, the number of concurrent users will be bigger than one.
If more than one user is working on a project in the same time there is a question how the changes made by these users will apply to the common project. The following two rules are implemented in the Engage Process Modeler:
1. | All updates made to the project structure are applied immediately. |
2. | Updates on a diagram are only applied when the diagram is locked. |
The consequence of the first rule is that two user may see different content of the same project. For example, if users A and B open the same empty project and the user A creates a new process P1 there, then the user B will not see it until he refreshes the content of the tool (e.g., by pressing F5, or by logging again). Actually, the user B can create a process P2 and work on it without even knowing that process P1 exists. The both processes P1 and P2 will be visible to both users A and B only if they reopen the project or refresh its content. Now the user A may want to delete the process P2 because it is unfamiliar for him. He can do this even if the user B is actually looking at its content.However, if the user B tries now to update the process P2 he will get the error message that this process does not exist.
Thus, if two users will try to update the same element, e.g. they will try to rename a process, the change of the last one will be always on top. This approach is not very handy for the diagram contents. Probably, we do not want two users to map the same process in the same time in this way because eventually only the updates of the last one will be saved overwriting all updates of the other one. To prevent such a result the locking mechanism is implemented for diagrams.
The locking is done automatically. In most cases the user does not even notice it. At the moment the user A starts updating the diagram content (e.g. he inserts a Telephone task to an empty process) the diagram is locked on the server by this user. This guarantees that (s)he is the only one who is changing the diagram at the moment. The fact that the diagram is locked is visualized by a star after the diagram name in the caption of the diagram window.
If the user B opens the same process diagram (s)he will see its original content (so the empty process in this case) because the change of the user A is not saved yet. At the moment the user B starts updating the diagram (e.g. (s)he tries to inserts a Manual task) the Engage Process Modeler will try to lock it. This attempt will fail, the process will become read only and a message will appear on top of the diagram. The message is informing who is currently locking the diagram and contains the Start editing button that the user can press to try to lock the diagram again.
You can fold the yellow bar that is now hiding the upper part of the diagram by clicking '>' at the right hand side.
As long as the user A updates the diagram the user B cannot lock it so he cannot update it either. The diagram becomes unlocked if the user A closes it or if (s)he will not change it for at least 15 min. When, eventually, the user B succeeds with the locking the actual content of the diagram stored on the server will be different from what he sees in his project (because the user A already added the Telephone task). So, (s)he gets the following message:
After reloading, (s)he can retry inserting a Manual task but now (s)he has to decide if it should be inserted in front or behind the Manual task.
Actually, the diagram lock is not linked to the user himself but to his/her session. It may happen that the same user has more than one active sessions. For example if (s)he opens the same diagram in two different browsers each browser has its own session. If a process diagram is being modified in one browser and the user tries to modify it also in another browser (s)he will get the following message:
You can fold the yellow bar that is now hiding the upper part of the diagram by clicking '>' at the right hand side.
By clicking the Take over button the user moves the lock from his/her one session to the other.