Does Aware IM have the capability to guard against other users changing the same transaction, during a "process"?
Think of an airline reservation system. For a flight, users can select a seat, if available. If 2 users are booking the same flight during web sessions occurring at approximately the same time, and they both choose the same seat, that would be bad.
So, lets say User 1 user saves first, and gets seat 10a. Then user 2 saves for 10a, and gets the seat (bad). User 1 thinks he got the seat, but did not (bad).
So, in web applications hooks are put in such as the following:
When a user requests the screen to reserve a particular seat, a "last timestamp" column is read from the the "available seats", and if null, is stamped (saved) to the (yet unreserved) seat reservation record. Then the user requests the seat on the screen and submits. During the save, the timestamp is rechecked, by re-reading the seat reservation record. If the timestamp has changed, then another user got there first (they both received the same timestamp upon query), and saved the seat record (re-stamping the timestamp), while the user 2 was choosing. In this case, the application pops up a message that the seat is no longer available. In this example, user 2 cannot reserve the same seat as user 1.
This database read (isolation is usually set to read committed) and "stamp if null" is needed to ensure the integrity of the business process to reserve a seat. It is not enough to just allow user2 to overwrite user 1's saved seat reservation.
How can this be handled in Aware IM?