One of the most important features of this software is that
it models the exact state of a room rental in Hotel. The room is initially
empty, then it gets occupied by guest, then the guest will check out, then the
house keeping staff will clean it and then it gets empty again for the next
rental. The cycle continues.
We have modeled this process in the software so that at any
given time the room can be any one of these states, namely, Vacant, Check In,
Check Out or Clean states. When room operations are performed, the state of the
room changes from one state to other in an expected order.